Details UCX examples
This commit is contained in:
@ -34,23 +34,41 @@ srun ./app
|
|||||||
**UCX** should be used only by advanced users, as it requires to run it with **mpirun** (needs advanced knowledge) and is an exception for running MPI
|
**UCX** should be used only by advanced users, as it requires to run it with **mpirun** (needs advanced knowledge) and is an exception for running MPI
|
||||||
without **srun** (**UCX** is not integrated at PSI within **srun**).
|
without **srun** (**UCX** is not integrated at PSI within **srun**).
|
||||||
|
|
||||||
For running UCX, one should add the following options to **mpirun**:
|
For running UCX, one should:
|
||||||
|
|
||||||
```bash
|
* add the following options to **mpirun**:
|
||||||
-mca pml ucx --mca btl ^vader,tcp,openib,uct -x UCX_NET_DEVICES=mlx5_0:1
|
```bash
|
||||||
```
|
-mca pml ucx --mca btl ^vader,tcp,openib,uct -x UCX_NET_DEVICES=mlx5_0:1
|
||||||
|
```
|
||||||
|
* or alternatively, add the following options **before mpirun**
|
||||||
|
```bash
|
||||||
|
export OMPI_MCA_pml="ucx"
|
||||||
|
export OMPI_MCA_btl="^vader,tcp,openib,uct"
|
||||||
|
export UCX_NET_DEVICES=mlx5_0:1
|
||||||
|
```
|
||||||
|
|
||||||
Alternatively, one can add the following options for debugging purposes (visit [UCX Logging](https://github.com/openucx/ucx/wiki/Logging) for possible `UCX_LOG_LEVEL` values):
|
In addition, one can add the following options for debugging purposes (visit [UCX Logging](https://github.com/openucx/ucx/wiki/Logging) for possible `UCX_LOG_LEVEL` values):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
-x UCX_LOG_LEVEL=<data|debug|warn|info|...> -x UCX_LOG_FILE=<filename>
|
-x UCX_LOG_LEVEL=<data|debug|warn|info|...> -x UCX_LOG_FILE=<filename>
|
||||||
```
|
```
|
||||||
|
|
||||||
Full example:
|
This can be also added externally before the **mpirun** call (see below example). Full example:
|
||||||
|
|
||||||
```bash
|
* Within the **mpirun** command:
|
||||||
mpirun -np $SLURM_NTASKS -mca pml ucx --mca btl ^vader,tcp,openib,uct -x UCX_NET_DEVICES=mlx5_0:1 -x UCX_LOG_LEVEL=data -x UCX_LOG_FILE=UCX-$SLURM_JOB_ID.loga ./app
|
```bash
|
||||||
```
|
mpirun -np $SLURM_NTASKS -mca pml ucx --mca btl ^vader,tcp,openib,uct -x UCX_NET_DEVICES=mlx5_0:1 -x UCX_LOG_LEVEL=data -x UCX_LOG_FILE=UCX-$SLURM_JOB_ID.log ./app
|
||||||
|
```
|
||||||
|
* Outside the **mpirun** command:
|
||||||
|
```bash
|
||||||
|
export OMPI_MCA_pml="ucx"
|
||||||
|
export OMPI_MCA_btl="^vader,tcp,openib,uct"
|
||||||
|
export UCX_NET_DEVICES=mlx5_0:1
|
||||||
|
export UCX_LOG_LEVEL=data
|
||||||
|
export UCX_LOG_FILE=UCX-$SLURM_JOB_ID.log
|
||||||
|
|
||||||
|
mpirun -no $SLURM_NTASKS ./app
|
||||||
|
```
|
||||||
|
|
||||||
## Supported OpenMPI versions
|
## Supported OpenMPI versions
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user