1
0
Go to file
2024-07-27 15:58:10 +02:00
pbs_scripts Move PBS scripts 2024-07-27 15:29:06 +02:00
src Merge remote-tracking branch 'origin/feature/mpi-refactor' into feature/mpi 2024-07-27 15:46:33 +02:00
test Finalize matrix_mpi.py; Add more vector_mpi.py 2024-04-16 23:21:56 +02:00
LICENSE Initial commit 2023-12-12 14:23:52 +01:00
README.md Update README.md 2024-07-27 15:44:21 +02:00

Project for PWR

Project in python for module "Praktikum Wissenschaftliches Rechnen" in "Applied Mathematics" at TU Bergakademie Freiberg.

Task

Implement MPI parallel Matrix and Vector classes in Python and apply them to a numerical problem / algorithm.

  1. Diagonalmatrix times vector
  2. Matrix from exercise 1 times vector
  3. Conjugated Gradient

Structure of mains

Timings in Shell

If you want to measure time with time and the whole program, then use the main_[name].py files. Within the files you can set the size n of the matrix and vector. See pbs script pwr_project.script for automatic use on the cluster. Following pythin scripts are the entry point for the tasks:

Specific timings

If you want to measure only the times a operation needs (without initializing), then use the main_[name]_timeit.py files. The matrix/vector size n must be provided via command line, e.g. python3 main_cg.py 100 for the CG with a matrix size of 100. See pbs script pwr_project_timeit.script for automatic use on the cluster. Following pythin scripts are the entry point for the tasks:

Weak scaling

For the weak scaling measurements use pbs script pwr_project_timeit_weak.script.