Skip to content

Commit 3aa9038

Browse files
committed
Update 'Accessing native...'
1 parent f2f5f13 commit 3aa9038

File tree

1 file changed

+79
-69
lines changed

1 file changed

+79
-69
lines changed

docs/software/container-engine.md

Lines changed: 79 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -392,7 +392,13 @@ For the full details about using these features, please refer to the official do
392392
[](){#ref-ce-cxi-hook}
393393
### HPE Slingshot interconnect 
394394

395-
The Container Engine provides a hook to allow containers relying on [libfabric](https://ofiwg.github.io/libfabric/) to leverage the HPE Slingshot 11 high-speed interconnect. This component is commonly referred to as the "CXI hook", taking its name from the CXI libfabric provider required to interface with Slingshot 11.
395+
```bash
396+
[annotations]
397+
com.hooks.cxi.enabled = "true"
398+
```
399+
400+
The Container Engine provides a hook to allow containers relying on [libfabric](https://ofiwg.github.io/libfabric/) to leverage the HPE Slingshot 11 high-speed interconnect.
401+
This component is commonly referred to as the "CXI hook", taking its name from the CXI libfabric provider required to interface with Slingshot 11.
396402
The hook leverages bind-mounting the custom host libfabric library into the container (in addition to all the required dependency libraries and devices as well).
397403
If a libfabric library is already present in the container filesystem (for example, it's provided by the image), it is replaced with its host counterpart, otherwise the host libfabric is just added to the container.
398404

@@ -402,81 +408,85 @@ If a libfabric library is already present in the container filesystem (for examp
402408
!!! note
403409
Libfabric support might have to be defined at compilation time (as is the case for some MPI implementations, like MPICH and OpenMPI) or could be dynamically available at runtime (as is the case with NCCL - see also [this][ref-ce-aws-ofi-hook] section for more details).
404410

405-
The hook is activated by setting the `com.hooks.cxi.enabled` annotation, which can be defined in the EDF, as shown in the following example:
411+
The hook is activated by setting the `com.hooks.cxi.enabled` annotation, which can be defined in the EDF.
406412

407-
```bash
408-
# Without the CXI hook
409-
> cat $HOME/.edf/osu-mb.toml 
410-
image = "quay.io#madeeks/osu-mb:6.2-mpich4.1-ubuntu22.04-arm64"
413+
??? example "Comparison between with and without the CXI hook"
414+
* Without the CXI hook
411415

412-
[annotations]
413-
com.hooks.cxi.enabled = "false"
416+
```bash
417+
$ cat ${HOME}/.edf/osu-mb.toml 
418+
image = "quay.io#madeeks/osu-mb:6.2-mpich4.1-ubuntu22.04-arm64"
414419

415-
> srun -N2 --mpi=pmi2 --environment=osu-mb ./osu_bw
416-
# OSU MPI Bandwidth Test v6.2
417-
# Size Bandwidth (MB/s)
418-
1 0.22
419-
2 0.40
420-
4 0.90
421-
8 1.82
422-
16 3.41
423-
32 6.81
424-
64 13.18
425-
128 26.74
426-
256 11.95
427-
512 38.06
428-
1024 39.65
429-
2048 83.22
430-
4096 156.14
431-
8192 143.08
432-
16384 53.78
433-
32768 106.77
434-
65536 49.88
435-
131072 871.86
436-
262144 780.97
437-
524288 694.58
438-
1048576 831.02
439-
2097152 1363.30
440-
4194304 1279.54
441-
442-
443-
# With the CXI hook enabling access to the Slingshot high-speed network
444-
> cat .edf/osu-mb-cxi.toml 
445-
image = "quay.io#madeeks/osu-mb:6.2-mpich4.1-ubuntu22.04"
420+
[annotations]
421+
com.hooks.cxi.enabled = "false"
422+
423+
$ srun -N2 --mpi=pmi2 --environment=osu-mb ./osu_bw
424+
# OSU MPI Bandwidth Test v6.2
425+
# Size Bandwidth (MB/s)
426+
1 0.22
427+
2 0.40
428+
4 0.90
429+
8 1.82
430+
16 3.41
431+
32 6.81
432+
64 13.18
433+
128 26.74
434+
256 11.95
435+
512 38.06
436+
1024 39.65
437+
2048 83.22
438+
4096 156.14
439+
8192 143.08
440+
16384 53.78
441+
32768 106.77
442+
65536 49.88
443+
131072 871.86
444+
262144 780.97
445+
524288 694.58
446+
1048576 831.02
447+
2097152 1363.30
448+
4194304 1279.54
449+
```
446450

447-
[annotations]
448-
com.hooks.cxi.enabled = "true"
451+
* With the CXI hook enabling access to the Slingshot high-speed network
449452

450-
> srun -N2 --mpi=pmi2 --environment=osu-mb-cxi ./osu_bw
451-
# OSU MPI Bandwidth Test v6.2
452-
# Size Bandwidth (MB/s)
453-
1 1.21
454-
2 2.32
455-
4 4.85
456-
8 8.38
457-
16 19.36
458-
32 38.47
459-
64 76.28
460-
128 151.76
461-
256 301.25
462-
512 604.17
463-
1024 1145.03
464-
2048 2367.25
465-
4096 4817.16
466-
8192 8633.36
467-
16384 16971.18
468-
32768 18740.55
469-
65536 21978.65
470-
131072 22962.31
471-
262144 23436.78
472-
524288 23672.92
473-
1048576 23827.78
474-
2097152 23890.95
475-
4194304 23925.61
476-
```
453+
```bash
454+
$ cat ${HOME}/.edf/osu-mb-cxi.toml 
455+
image = "quay.io#madeeks/osu-mb:6.2-mpich4.1-ubuntu22.04"
456+
457+
[annotations]
458+
com.hooks.cxi.enabled = "true"
459+
460+
$ srun -N2 --mpi=pmi2 --environment=osu-mb-cxi ./osu_bw
461+
# OSU MPI Bandwidth Test v6.2
462+
# Size Bandwidth (MB/s)
463+
1 1.21
464+
2 2.32
465+
4 4.85
466+
8 8.38
467+
16 19.36
468+
32 38.47
469+
64 76.28
470+
128 151.76
471+
256 301.25
472+
512 604.17
473+
1024 1145.03
474+
2048 2367.25
475+
4096 4817.16
476+
8192 8633.36
477+
16384 16971.18
478+
32768 18740.55
479+
65536 21978.65
480+
131072 22962.31
481+
262144 23436.78
482+
524288 23672.92
483+
1048576 23827.78
484+
2097152 23890.95
485+
4194304 23925.61
486+
```
477487

478488
!!! tip
479-
On several vClusters, the CXI hook for Slingshot connectivity is enabled implicitly by default or by other hooks.
489+
On most vClusters, the CXI hook for Slingshot connectivity is enabled implicitly by default or by other hooks.
480490
Therefore, entering the enabling annotation in the EDF is unnecessary in many cases.
481491

482492
[](){#ref-ce-container-hooks}

0 commit comments

Comments
 (0)