All assignments for AMATH 583 Sp2020: C++ methods, CUDA, OpenMP, and MPI
Problem Set 1: C++ classes and data types, plotting, Linux commands Problem Set 2: Writing C++ linear algebra vector norm methods Problem Set 3: Analysis of algorithm and data type optimization and time efficiency Problem Set 4: Makefile creation, compilier optimization options, loop optimization and timing Midterm Exam: Compressed and sparse matrix operations, vector-matrix operations, matrix-matrix operations, timining efficiency Problem Set 5: (Pts. I/II) Loop parallelization, C++ futures, asynchronous tasks, block partitioning, thread management Problem Set 6: Loop parallelization with OpenMP, parallelized vector-matrix operations, load balancing Problem Set 7: (Pts. I/II) C++ function templates, AWS compute clusters, batch scheduling, loop parallelization with GPUs/CUDA Final Exam: Parallelizing iterative solvers with MPI, batch qeueing, weak and strong scaling