Update Build with fixes from shortREADME authored by Yannik Müller's avatar Yannik Müller
...@@ -7,33 +7,20 @@ ...@@ -7,33 +7,20 @@
* If using NVLink (cuda), Omni-Path (psm2), UCX (ucp), or IBVerbs (ibverbs) * If using NVLink (cuda), Omni-Path (psm2), UCX (ucp), or IBVerbs (ibverbs)
* `minipmi`: https://github.com/kraused/minipmi * `minipmi`: https://github.com/kraused/minipmi
* If using NVLink (cuda): * If using NVLink (cuda):
* A standard compliant CUDA compiller * A standard compliant CUDA compiler
* Python version 3.0.0 or a derivative * Python version 3.0.0 or a derivative
* If using linktest-report tool * If using linktest-report tool
* Python 3.8.5 or above * Python 3.8.5 or above
* numpy and matplotlib * Including the NumPy and MatPlotLib packages
# Build procedure # Build procedure
In general you have to do the following steps In general you have to do the following steps
1. Install Dependencies 1. Install Dependencies
2. Set-Up Environment, Pahs etc. 2. Set-Up Environment, Pahs etc.
3. Install `linktest` with `make`, disable unavailable transport layers 3. Install `linktest` with `make`, disable unavailable transport layers
4. Install `linktest-report` via pip (Update PYTHONPATH or use virtual environments) 4. [Optional] Install `linktest-report` via pip (Update PYTHONPATH or use virtual environments)
5. [Optional] Install `pingponganalysis` with `make` 5. [Optional] Install `pingponganalysis` with `make`
Quick-Start Example installing only MPI and TCP support. (Might not work on your system)
```bash
mkdir -p install
ml GCC ParaStationMPI SIONlib SciPy-Stack # 1 + 2
cd benchmark; #
make HAVE_MINIPMI=0 PREFIX=../install clean install # 3
python -m pip install ../python/setup.py --prefix=../install # 4
```
exampleBuild.sh showcases a more complicated build procedure. You can adapt it to your needs.
A file named `pingpong_results_bin.sion` should be produced.
Some examples for JSC systems can also be found in chapter [JSC Build Examples](#JSC-Build-Examples)
# Transport Layers # Transport Layers
Transport Layers can be (de-)activated with `make HAVE_<LAYER>=(0)1` Transport Layers can be (de-)activated with `make HAVE_<LAYER>=(0)1`
The following transport layers and other variables may be used: The following transport layers and other variables may be used:
...@@ -50,6 +37,7 @@ The following transport layers and other variables may be used: ...@@ -50,6 +37,7 @@ The following transport layers and other variables may be used:
| | `CUARCH` | | Needs to be set if `cuda` is enable | | | `CUARCH` | | Needs to be set if `cuda` is enable |
For `CUARCH` values see https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#virtual-architecture-feature-list For `CUARCH` values see https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#virtual-architecture-feature-list
# JSC Build Examples # JSC Build Examples
**JUWELS:** **JUWELS:**
... ...
......