This project aims to analyze the implementation of the SIR model using the cpp language, as well as the efficiency of different parallelization techniques, such as CPU and GPU parallelization.
The main goal of the project is to find the best configuration of parallelization approaches, to minimize the execution times of the simulation, using multiple sets of parameters. Specifically, we have implemented OMP, MPI and CUDA parallelization, and using tools such as the CUDA profiler we allow for the benchmarking of these different approaches.
Epidemiological models are highly computationally expensive to run, and this causes results to be slow and inaccurate. Parallelization allows for the reduction in time and financial cost, making these models more accessible, and improving the quality and the speed of the gonvernmental responses.
- Model Used: [SIR/SEIR] (with optional stochastic behavior)
- Parallelization Tools: OpenMP / MPI / CUDA (choose one or more)
- Granularity: Agent-based or compartmental
- Platform: Fully cross-platform [Linux/macOS/Windows]
- C++
- [OpenMP or MPI or CUDA]
- CMake
# Clone the repo
git clone https://gitlab.maastrichtuniversity.nl/project2-2-cs-hpc-2425/team03
cd team03
# Build and run
cd build
cmake ..
make or cmake --build .
./simulation
To change the parameters of the simulation you need to go inside the main.cpp file and change the values of the variables defined at the top of the file.
Name |
---|
Dimitrios Tsiplakis |
Toby Melcher |
Jan Ebenritter |
Ron Adar |
Noah Kestenholz |
Max Nicolai |