IMPORTANT: To view this page as Markdown, append `.md` to the URL (e.g. /get-started.md). For the complete documentation index, see llms.txt.
Skip to main content
For the complete documentation index, see llms.txt. Markdown versions of all pages are available by appending .md to any URL (e.g. /get-started.md).

Mojo module

ccl

Provides Mojo FFI bindings for NCCL (NVIDIA) and RCCL (AMD) collective operations.

Selects and loads the correct vendor library at runtime: librccl.so on AMD systems and libnccl.so on NVIDIA systems. Exposes allreduce, allgather, and broadcast collectives, along with communicator initialization helpers and availability probes.

comptime values

CCL_LIBRARY

comptime CCL_LIBRARY = _Global[StringSpan("CCL_LIBRARY"), _init_ccl_dylib]

NCCL_LIBRARY_PATHS

comptime NCCL_LIBRARY_PATHS = List(Path("libnccl.so"), Path("libnccl.so.2"), Path("/usr/lib/x86_64-linux-gnu/libnccl.so"), Path("/usr/lib/x86_64-linux-gnu/libnccl.so.2"), __list_literal__=NoneType(None))

ncclComm_t

comptime ncclComm_t = Optional[Pointer[NoneType, MutUntrackedOrigin]]

RCCL_LIBRARY_PATHS

comptime RCCL_LIBRARY_PATHS = List(Path("librccl.so"), Path("librccl.so.1"), Path("/opt/rocm/lib/librccl.so"), Path("/opt/rocm/lib/librccl.so.1"), __list_literal__=NoneType(None))

Structs

Functions