@@ -159,6 +159,13 @@ The following plugins from CodePlay are supported:
159159.. _codeplay_nv_plugin : https://developer.codeplay.com/products/oneapi/nvidia/
160160.. _codeplay_amd_plugin : https://developer.codeplay.com/products/oneapi/amd/
161161
162+ Builds for CUDA and AMD devices internally use SYCL alias targets that are passed to the compiler.
163+ A full list of available SYCL alias targets is available in the
164+ `DPC++ Compiler User Manual <https://intel.github.io/llvm/UsersManual.html >`_.
165+
166+ CUDA build
167+ ~~~~~~~~~~
168+
162169``dpctl `` can be built for CUDA devices using the ``DPCTL_TARGET_CUDA `` CMake option,
163170which accepts a specific compute architecture string:
164171
@@ -173,19 +180,20 @@ set ``DPCTL_TARGET_CUDA`` to a value such as ``ON``, ``TRUE``, ``YES``, ``Y``, o
173180
174181 python scripts/build_locally.py --verbose --cmake-opts=" -DDPCTL_TARGET_CUDA=ON"
175182
176- Note that kernels are built for ``sm_50 `` by default , allowing them to work on a wider
177- range of architectures, but limiting the usage of more recent CUDA features.
183+ Note that kernels are built for the default architecture ( ``sm_50 ``) , allowing them to work on a
184+ wider range of architectures, but limiting the usage of more recent CUDA features.
178185
179186For reference, compute architecture strings like ``sm_80 `` correspond to specific
180187CUDA Compute Capabilities (e.g., Compute Capability 8.0 corresponds to ``sm_80 ``).
181188A complete mapping between NVIDIA GPU models and their respective
182189Compute Capabilities can be found in the official
183190`CUDA GPU Compute Capability <https://developer.nvidia.com/cuda-gpus >`_ documentation.
184191
185- A full list of available SYCL alias targets is available in the
186- ` DPC++ Compiler User Manual < https://intel.github.io/llvm/UsersManual.html >`_.
192+ AMD build
193+ ~~~~~~~~~
187194
188- To build for AMD devices, use:
195+ ``dpctl `` can be built for AMD devices using the ``DPCTL_TARGET_HIP `` CMake option,
196+ which requires specifying a compute architecture string:
189197
190198.. code-block :: bash
191199
@@ -194,8 +202,13 @@ To build for AMD devices, use:
194202 Note that the `oneAPI for AMD GPUs ` plugin requires the architecture be specified and only
195203one architecture can be specified at a time.
196204
197- It is, however, possible to build for Intel devices, CUDA devices, and an AMD device
198- architecture all at once:
205+ Multi-target build
206+ ~~~~~~~~~~~~~~~~~~
207+
208+ The default ``dpctl `` build from the source enables support of Intel devices only.
209+ Extending the build with a custom SYCL target additionally enables support of CUDA or AMD
210+ device in ``dpctl ``. Besides, the support can be also extended to enable both CUDA and AMD
211+ devices at the same time:
199212
200213.. code-block :: bash
201214
0 commit comments