42 | | - PSP_MSA_AWARENESS=1 # Generally activate the consideration of modular topologies (NOT enabled by default) |
43 | | - PSP_MSA_MODULE_ID=xyz # Pass the respective Module ID (Integer) explicitly to the processes (NOT set automatically) |
44 | | }}} |
45 | | |
46 | | **Attention:** Please note that the environment variable for the respective Module ID (`PSP_MSA_MODULE_ID`) is currently ''not'' set automatically! |
47 | | This means that the user has to set and pass this variable explicitly, for example, via a bash script: |
| 42 | - PSP_MSA_AWARENESS=1 # Generally activate the consideration of modular topologies (NOT enabled by default) |
| 43 | - PSP_MSA_AWARE_COLLOPS=0|1|2 # Select the feature level: |
| 44 | 0: Disable MSA awareness for collective MPI operations |
| 45 | 1: Enable MSA awareness for collective MPI operations (default if PSP_MSA_AWARENESS=1 is set) |
| 46 | 2: Apply MSA awareness recursively in multi-level topologies (set PSP_SMP_AWARENESS=1 in addition) |
| 47 | }}} |
| 48 | In the recursive application of MSA awareness (`PSP_MSA_AWARE_COLLOPS=2`), a distinction is first made between inter- and intra-**module** communication and then, in a second step, likewise between inter- and intra-**node** communication within the modules if `PSP_SMP_AWARENESS=1` is set in addition. (Please note that a meaningful usage of `PSP_MSA_AWARE_COLLOPS=2` requires `psmpi-5.4.5` or higher.) |
| 49 | |
| 50 | |
| 51 | === Usage with Older Versions === |
| 52 | |
| 53 | For psmpi versions ''before'' 5.4.6, the Module IDs (`PSP_MSA_MODULE_ID`) were not set automatically! |
| 54 | This means that the user had to set and pass this variable explicitly, for example, via a bash script: |
68 | | In addition, the following variable can be used to influence the behavior of the MSA awareness for the collective operations: |
69 | | {{{ |
70 | | - PSP_MSA_AWARE_COLLOPS=0|1|2 |
71 | | 0: Disable MSA awareness for collective MPI operations |
72 | | 1: Enable MSA awareness for collective MPI operations (default if PSP_MSA_AWARENESS=1 is set) |
73 | | 2: Apply MSA awareness recursively in multi-level topologies (set PSP_SMP_AWARENESS=1 in addition) |
74 | | }}} |
75 | | In the recursive application of MSA awareness (`PSP_MSA_AWARE_COLLOPS=2`), a distinction is first made between inter- and intra-**module** communication and then, in a second step, likewise between inter- and intra-**node** communication within the modules if `PSP_SMP_AWARENESS=1` is set in addition. |
76 | | |
| 75 | However, since the current versions of psmpi (5.4.6), the Module ID is set automatically, which means that you can omit all the script stuff above. |
| 76 | |
| 77 | {{{#!comment |