- Ex1 - Sum of n rolls of m sided p dice
- Ex1.1 - Single Core
- Ex1.2 - Parallelized Version
- Ex2 - Monte-Carlo Simulation to obtain numerical value of pi
- Ex2.1 - Single Core
- Ex2.2 - Parallelized Version
- Ex3 - Systematic circle area scan to obtain the numerical value of pi without using Monte-Carlo simulation
- Ex3.1 - Single Core
- Ex3.2 - Parallelized Version
- Ex3.3 - Optimized Version (quarter circle)
- Ex3.4 - Optimized Version (quarter circle and break when a point falls outside the area)
- Ex4 - Ex1 Modification to calculate the Mean Deviation iterativelly until a condition is met
- Ex5 - Ex4 Modification to use Collective Communication Methods
- Ex6 - Matrix Multiplication
- Ex6.1 - Matrix B broadcasted to all processes
- Ex6.2 - Each process only receives the needed data
- Ex7 - Gauss-Jordan Elimination Method
- Ex7.1 - Without pivoting
- Ex7.2 - With partial pivoting (rows wise)
- Ex8 - Ranksort Algorithm
- Ex9 - NIM Game (Machine Learning)
- Ex9.1 - Analyse learned weights for different training intervals
- Ex9.2 - Change method of choosing best move
- Ex9.3 - Implement classic NIM game and analyse
- Ex9.4 - Is it possible to parallelize the classic NIM game?
Each folder includes the exercise description.