Introduction of MPI into PyOrbit3
Description:
With this MR we introduce the compatibility with MPI into pyorbit3. You will be able to run mpi's with the command below.
mpirun -n N python insert_script.py
where N is the amount of nodes you wish to run it on. This however still keeps compatibility with the old way of running scripts and you can omit the mpirun -n N to just run it on a single node.
Changes
- Updated MPI Initialization and Finalization
- Updated python wrapper for MPI
- Added flags to setup.py to allow for MPI
Testing
The following merge request was tested locally on SNS_Linac/pyorbit3_linac_model and rf_quad_overlapping_fields. Attached below you can find an image with the visual representation of MPI's effect on performance