nexar-rdma
RDMA and GPUDirect transport extensions for nexar.
Provides InfiniBand/RoCE kernel-bypass transport as a drop-in extension to nexar's QUIC-based communication. After bootstrapping a nexar cluster, establish an RDMA mesh over the existing connections for zero-copy, OS-bypass data transfers.
Features
| Feature | What it enables | Extra dependencies |
|---|---|---|
| (default) | RDMA transport via ibverbs (InfiniBand/RoCE) | libibverbs (rdma-core) |
gpudirect |
GPU memory ↔ NIC directly, CudaAdapter |
libibverbs + CUDA runtime |
Usage
[]
= "<use-latest-version>"
# For GPUDirect:
# nexar-rdma = { version = "<use-latest-version>", features = ["gpudirect"] }
use ;
// After nexar bootstrap, layer RDMA on top:
establish_rdma_mesh.await;
With the gpudirect feature, CudaAdapter implements nexar's DeviceAdapter trait for GPU memory, and NexarClientRdmaExt adds RDMA-accelerated collective operations.
Building
# RDMA (requires libibverbs / rdma-core)
# GPUDirect RDMA (requires libibverbs + CUDA)
License
Licensed under the Apache License, Version 2.0. See LICENSE for details.