Programming for Performance
This course consisted of a series of labs that focused on performance of users' code.
- Lab 1: Use Valgrind to determine a resource leak, parallelize a program to download a resource using threads in C, and implement a non blocking I/O implementation to compare it to serial and pthreads versions
- Lab 2: Compare automatic parallelization vs compiler optimization, use OpenMP on n-queens problem, apply manual Open MP on a Coulomb's Law simulation
- Lab 3: Use OpenCL on Coulomb's Law simulation and compare the results to OpenMP
- Lab 4: Simulate a multi-server application to investigate the impact of Load Balancing on the system’s overall performance