During the development of Clara2, I tested a parallelization over directions.
Each MPI task ran through all traces and computed the total radiation spectra for only a single direction. This caused a lot of data traffic and overloaded the network of hypnos. Therefore, the current parallelization distributes work for each trajectory.
The old parallelization scheme is still supported by the code, but is currently not activ.
This can be seen f.e. in convert_to_matrix.cpp.
Removing it completely will make the code slimmer and better maintainable. But we will loose flexibility.
I personally tend toward removing the code since it is currently not well written anyways. In case of a change in parallelization, one should/can rewrite the structure.
@BeyondEspresso @TheresaBruemmer @bussmann
What do you think?
During the development of Clara2, I tested a parallelization over directions. Each MPI task ran through all traces and computed the total radiation spectra for only a single direction. This caused a lot of data traffic and overloaded the network of hypnos. Therefore, the current parallelization distributes work for each trajectory.
The old parallelization scheme is still supported by the code, but is currently not activ. This can be seen f.e. in convert_to_matrix.cpp.
Removing it completely will make the code slimmer and better maintainable. But we will loose flexibility. I personally tend toward removing the code since it is currently not well written anyways. In case of a change in parallelization, one should/can rewrite the structure.
@BeyondEspresso @TheresaBruemmer @bussmann What do you think?