This repo includes three mini-projects that cover High-Performance Computing on multicore shared memory computers and on distributed memory computing clusters. In these projects, we have used Message Passing Interface(MPI) parallel file systems and C language.
PROJECT 1,2 - Performance Optimization via Register Reuse
In this project, we have implemented a version of matrix multiplication to take into account register reuse to improve performance.
PROJECT 3 - Parallel Sieve of Eratosthenes for Finding All Prime Numbers
The goal of this project was to use the sieve of Eratosthenes for determining the prime numbers in a very large interval and study how different modifications affect the performance. We will use parallel programming to divide the work among different cores and nodes.