oneCCL Usage
Refer to the Intel oneAPI Collective Communications Library System
Requirements
for a full list of hardware and software dependencies, such as MPI and
Intel oneAPI DPC++/C++ Compiler.
SYCL*-aware API is an optional feature of oneCCL. There is a choice
between CPU and SYCL back ends when creating the oneCCL stream object.
- For CPU backend: Specifyccl_stream_hostas the first argument.
- For SYCL backend: Specifyccl_stream_cpuorccl_stream_gpudepending on the device type.
- For collective operations that operate on the SYCL stream:
- For C API, oneCCL expects communication buffers to besycl::bufferobjects casted tovoid*.
- For C++ API, oneCCL expects communication buffers to be passed by reference.
Additional usage details are available from
https://oneapi-src.github.io/oneCCL/.