rlx-driver
Driver layer for RLX — Device enum + cross-cutting types (arenas,
buffers, command streams).
This crate sits between rlx-ir (vocabulary) and the per-backend crates
(execution). Backends consume the types here so the runtime can dispatch
to any of them through a uniform interface.
What's here
Device—Cpu,Metal,Mlx,Ane,Cuda,Rocm,Tpu,Gpu(wgpu),Vulkan,OpenGl,DirectX,WebGpu,Fpga. Used by the runtime to pick a backend and by tests to pin graphs to a specific path.registry— process-global table of whichDevicevariants have a registered backend (set at runtime, queried byrlx_runtime::Device::is_available).- Collective primitives — the
Transporttrait +ProcessGroup(all_reduce/all_gather/broadcast/barrier) withTcpTransport(mesh) andNetTransport(star) for distributed / multi-stream scenarios that the runtime composes on top. IrohTransport(featureiroh) — a NAT-traversingTransportover iroh QUIC (relays + pkarr/DNS discovery): ranks addressed byEndpointId, noip:port. See../../../docs/iroh-transport.md.
Install
[]
= "0.2"
Usually pulled in transitively via rlx-runtime
or rlx.
License
GPL-3.0-only.