You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/source/gpu.rst
+59-11Lines changed: 59 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,13 +38,35 @@ proprietary technology like NVLink that might be available in their infrastructu
38
38
39
39
Set environment variable ``NCCL_PYLOPS_MPI=0`` to explicitly force PyLops-MPI to ignore the ``NCCL`` backend.
40
40
However, this is optional as users may opt-out for NCCL by skip passing `cupy.cuda.nccl.NcclCommunicator` to
41
-
the :class:`pylops_mpi.DistributedArray`
41
+
the :class:`pylops_mpi.DistributedArray`.
42
+
43
+
In summary:
44
+
45
+
.. list-table::
46
+
:widths: 50 25 25
47
+
:header-rows: 1
48
+
49
+
* - Operation model
50
+
- Enabled with
51
+
- Disabled with
52
+
* - NumPy + MPI
53
+
- Default
54
+
- Cannot be disabled
55
+
* - CuPy + MPI
56
+
- ``PYLOPS_MPI_CUDA_AWARE=0``
57
+
- ``PYLOPS_MPI_CUDA_AWARE=1`` (default)
58
+
* - CuPy + CUDA-Aware MPI
59
+
- ``PYLOPS_MPI_CUDA_AWARE=1`` (default)
60
+
- ``PYLOPS_MPI_CUDA_AWARE=0``
61
+
* - CuPy + NCCL
62
+
- ``NCCL_PYLOPS_MPI=1`` (default)
63
+
- ``NCCL_PYLOPS_MPI=0``
42
64
43
65
Example
44
66
-------
45
67
46
68
Finally, let's briefly look at an example. First we write a code snippet using
47
-
``numpy`` arrays which PyLops-mpi will run on your CPU:
69
+
``numpy`` arrays which PyLops-MPI will run on your CPU:
48
70
49
71
.. code-block:: python
50
72
@@ -128,41 +150,67 @@ one MPI process. In fact, minor communications like those dealing with array-rel
128
150
The CuPy and NCCL backend is in active development, with many examples not yet in the docs.
129
151
You can find many `other examples <https://github.com/PyLops/pylops_notebooks/tree/master/developement-mpi/Cupy_MPI>`_ from the `PyLops Notebooks repository <https://github.com/PyLops/pylops_notebooks>`_.
130
152
153
+
131
154
Supports for NCCL Backend
132
155
----------------------------
133
-
In the following, we provide a list of modules (i.e., operators and solvers) where we plan to support NCCL and the current status:
156
+
In the following, we provide a list of modules (i.e., operators and solvers)
157
+
and their current status in terms of support for the 3 different communication
0 commit comments