Skip to content

Commit e65125e

Browse files
bdicejameslamb
andauthored
Update README (#2)
* Update README * fix branch references --------- Co-authored-by: James Lamb <[email protected]>
1 parent bc73516 commit e65125e

File tree

4 files changed

+25
-31
lines changed

4 files changed

+25
-31
lines changed

.github/workflows/build.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ concurrency:
3434
jobs:
3535
cpp-build:
3636
secrets: inherit
37-
uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuda13.0
37+
uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-25.10
3838
with:
3939
build_type: ${{ inputs.build_type || 'branch' }}
4040
branch: ${{ inputs.branch }}
@@ -45,7 +45,7 @@ jobs:
4545
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
4646
needs: [cpp-build]
4747
secrets: inherit
48-
uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@cuda13.0
48+
uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@branch-25.10
4949
with:
5050
build_type: ${{ inputs.build_type || 'branch' }}
5151
branch: ${{ inputs.branch }}
@@ -55,7 +55,7 @@ jobs:
5555
if: ${{ startsWith(github.ref, 'refs/tags/') }}
5656
needs: [cpp-build]
5757
secrets: inherit
58-
uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@cuda13.0
58+
uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@branch-25.10
5959
with:
6060
build_type: ${{ inputs.build_type || 'branch' }}
6161
branch: ${{ inputs.branch }}

.github/workflows/pr.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
- devcontainer
1515
- telemetry-setup
1616
secrets: inherit
17-
uses: rapidsai/shared-workflows/.github/workflows/pr-builder.yaml@cuda13.0
17+
uses: rapidsai/shared-workflows/.github/workflows/pr-builder.yaml@branch-25.10
1818
telemetry-setup:
1919
runs-on: ubuntu-latest
2020
continue-on-error: true
@@ -29,20 +29,20 @@ jobs:
2929
checks:
3030
secrets: inherit
3131
needs: telemetry-setup
32-
uses: rapidsai/shared-workflows/.github/workflows/checks.yaml@cuda13.0
32+
uses: rapidsai/shared-workflows/.github/workflows/checks.yaml@branch-25.10
3333
with:
3434
ignored_pr_jobs: telemetry-summarize
3535
conda-cpp-build:
3636
needs: checks
3737
secrets: inherit
38-
uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@cuda13.0
38+
uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-25.10
3939
with:
4040
build_type: pull-request
4141
script: ci/build_cpp.sh
4242
devcontainer:
4343
secrets: inherit
4444
needs: telemetry-setup
45-
uses: rapidsai/shared-workflows/.github/workflows/build-in-devcontainer.yaml@cuda13.0
45+
uses: rapidsai/shared-workflows/.github/workflows/build-in-devcontainer.yaml@branch-25.10
4646
with:
4747
arch: '["amd64", "arm64"]'
4848
cuda: '["13.0"]'

.github/workflows/trigger-breaking-change-alert.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
trigger-notifier:
1313
if: contains(github.event.pull_request.labels.*.name, 'breaking')
1414
secrets: inherit
15-
uses: rapidsai/shared-workflows/.github/workflows/breaking-change-alert.yaml@cuda13.0
15+
uses: rapidsai/shared-workflows/.github/workflows/breaking-change-alert.yaml@branch-25.10
1616
with:
1717
sender_login: ${{ github.event.sender.login }}
1818
sender_avatar: ${{ github.event.sender.avatar_url }}

README.md

Lines changed: 17 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# cuMLPrims
22

3-
This repository contains C++ and CUDA code of muti-node multi-GPU (MNMG) ML mathematical primitives and some algorithms, that are used by [the main cuML project](https://github.com/rapidsai/cuml). The build system uses CMake for build configuration, and an out-of-source build is recommended.
3+
This repository contains C++ and CUDA code of muti-node multi-GPU (MNMG) ML mathematical primitives and some algorithms, that are used by [the main cuML project](https://github.com/rapidsai/cuml). The build system uses CMake for build configuration, and an out-of-source build is recommended.
44

5-
As of version 0.13, the MNMG code included in cuMLPrims follows the model one-process-per-GPU (OPG), where the code uses a communication library (based on cuML's comms) and each process has one GPU assigned to it. This is in contrast to single-process-multi-GPU (SPMG) approaches, which are no longer part of the code base.
5+
The MNMG code included in cuMLPrims follows the model one-process-per-GPU (OPG), where the code uses a communication library (based on cuML's comms) and each process has one GPU assigned to it. This is in contrast to single-process-multi-GPU (SPMG) approaches, which are no longer part of the code base.
66

77
## Folder Structure
88

@@ -14,30 +14,28 @@ The folder structure mirrors closely the structure of github cuML. The folders a
1414
- `cpp/cmake`: CMake related scripts.
1515
- `cpp/include`: The include folder for headers that are necessary to be installed/distributed to use the libcumlprims.so artifact by users of the library.
1616
- `cpp/src_prims_opg`: Contains source code for MNMG ML primitives. It also contains source code for algorithms that use the primitives that are still included in cuMLPrims as opposed to cuML.
17-
- `cpp/test`: Googletest based unit tests (work in progress).
17+
- `cpp/test`: Googletest based unit tests.
1818

1919
## Building cuMLPrims:
2020

2121
### Requirements
2222

2323
The main artifact produced by the build system is the shared library libcumlprims. Ensure the following dependencies are satisfied:
2424

25-
1. CMake (>= 3.14.5)
26-
2. CUDA (>= 10.0)
27-
3. GCC (>= 5.4.0)
28-
4. NCCL (>= 2.4.6.1)
29-
5. UCX with CUDA support (optional)(>=1.7) - enables point-to-point messaging in the cuML communicator.
30-
6. zlib
25+
1. CMake (>= 3.30.4)
26+
2. CUDA (>= 12.0)
27+
3. GCC (>= 14)
28+
4. NCCL (>= 2.5)
3129

32-
It is recommended to use conda for environment/package management. If doing so, it is recommended to use the convenience environment .yml file located in [**the cuML repository**, in `conda/environments/cuml_dev_cudax.y.yml` (replace x.y for your CUDA version)](https://github.com/rapidsai/cuml/tree/branch-0.14/conda/environments). This file contains most of the dependencies ment1ioned above (notable exceptions are gcc and zlib). To use it, for example to create an environment named cuml_dev for CUDA 10.0 and Python 3.7, you can use the follow command:
30+
It is recommended to use conda for environment/package management. See `conda/environments/` for available environment files.
3331

3432
```bash
35-
conda env create -n cuml_dev python=3.7 --file=conda/environments/cuml_dev_cuda10.0.yml
33+
conda env create --name cumlprims_dev --file conda/environments/all_cuda-130_arch-$(arch).yaml
3634
```
3735

3836
### Using build.sh script
3937

40-
As a convenience, a `build.sh` script is provided which can be used to execute the build commands in an automated manner. Note that the libraries will be installed to the location set in `$INSTALL_PREFIX` if set (i.e. `export INSTALL_PREFIX=/install/path`), otherwise to `$CONDA_PREFIX`.
38+
As a convenience, a `build.sh` script is provided which can be used to execute the build commands in an automated manner. Note that the libraries will be installed to the location set in `$INSTALL_PREFIX` if set (i.e. `export INSTALL_PREFIX=/install/path`), otherwise to `$CONDA_PREFIX`.
4139
```bash
4240
$ ./build.sh # build the libcuml library and tests
4341
# install them to $INSTALL_PREFIX if set, otherwise $CONDA_PREFIX
@@ -46,12 +44,12 @@ $ ./build.sh # build the libcuml library and tests
4644
Other `build.sh` options:
4745

4846
```bash
49-
$ ./build.sh clean # remove any prior build artifacts and configuration (start over)
47+
$ ./build.sh clean # remove any prior build artifacts and configuration (start over)
5048
$ ./build.sh libcumlprims -v # build and install libcumlprims with verbose output
5149
$ ./build.sh libcumlprims -g # build and install libcumlprims for debug
5250
$ PARALLEL_LEVEL=4 ./build.sh libcumlprims # build and install libcumlprims limiting parallel build jobs to 4 (make -j4)
53-
$ ./build.sh libcuml -n # build libcuml but do not install
54-
$ ./build.sh libcumlprims --allgpuarch # build the tests for all supported GPU architectures
51+
$ ./build.sh libcuml -n # build libcuml but do not install
52+
$ ./build.sh libcumlprims --allgpuarch # build the tests for all supported GPU architectures
5553

5654
```
5755

@@ -107,11 +105,7 @@ cuMLPrims CMake has the following configurable flags available:
107105

108106
| Flag | Possible Values | Default Value | Behavior |
109107
| --- | --- | --- | --- |
110-
| BUILD_OPG_TESTS | [ON, OFF] | OFF | Build MPI cumlcomms based C++ unit tests (in progress, refer to step 4. of the build steps). |
111-
| BUILD_CUMLPRIMS_LIBRARY | [ON, OFF] | ON | Enable/disable building libcumprims shared library. |
112-
| CMAKE_CXX11_ABI | [ON, OFF] | ON | Enable/disable the GLIBCXX11 ABI |
113-
| DISABLE_OPENMP | [ON, OFF] | OFF | Set to `ON` to disable OpenMP |
114-
| KERNEL_INFO | [ON, OFF] | OFF | Enable/disable kernel resource usage info in nvcc. |
115-
| LINE_INFO | [ON, OFF] | OFF | Enable/disable lineinfo in nvcc. |
116-
| NVTX | [ON, OFF] | OFF | Enable/disable nvtx markers in libcumlprims. |
117-
| GPU_ARCHS | List of GPU architectures, semicolon-separated | 60;70;75 | List of GPU architectures that all artifacts are compiled for. |
108+
| BUILD_OPG_TESTS | [ON, OFF] | OFF | Build MPI cumlcomms based C++ unit tests (in progress, refer to step 4. of the build steps). |
109+
| BUILD_CUMLPRIMS_LIBRARY | [ON, OFF] | ON | Enable/disable building libcumlprims shared library. |
110+
| DISABLE_OPENMP | [ON, OFF] | OFF | Set to `ON` to disable OpenMP |
111+
| NVTX | [ON, OFF] | OFF | Enable/disable nvtx markers in libcumlprims.|

0 commit comments

Comments
 (0)