2 个仓库
Configuration and registration of memory buffers on hardware accelerators via compilation and runtime options.
Distinct from Hardware Acceleration: Focuses on the memory setup and registration phase for accelerators rather than the execution of offloaded compute tasks.
Explore 2 awesome GitHub repositories matching operating systems & systems programming · Accelerator Memory Registration. Refine with filters or upvote what's useful.
Mooncake 是一个用于高性能推理基础设施的存算分离大语言模型服务平台和分布式键值存储系统。它作为一个 GPU 内存编排器和 KV 缓存管理系统,通过在集群间池化和传输键值缓存来加速推理。 该系统的独特之处在于将推理的预填充(prefill)和解码(decode)阶段分离到不同的硬件集群中,以优化资源利用率。它利用高性能 RDMA 分布式缓存和零拷贝传输在计算节点间移动数据,绕过 CPU 以减少延迟和开销。 该平台涵盖了广泛的功能领域,包括分布式内存池化、通过 CXL 进行加速器内存路由,以及向 SSD 进行多级存储卸载。它通过元数据协调服务管理集群状态,并利用基于租约的对象保护和基于水位线的缓存驱逐机制实现资源治理。 该软件已打包用于容器化部署,支持主机网络和硬件设备映射。
Configures hardware accelerator memory support and registration through specific compilation options.
NCCL 是一个高性能通信库和分布式 GPU 计算框架,专为在单节点或多节点系统中的多个 GPU 之间执行集合和点对点数据交换而设计。它充当 RDMA GPU 传输层和内存编排器,为分布式 GPU 训练和推理提供高带宽的数据和模型梯度同步。 该库的特色在于能够直接从 GPU 内核执行通信原语,将主机 CPU 从关键路径中移除。它利用拓扑感知路径选择来优化数据移动,并采用包括 InfiniBand 和 NVLink 在内的基于 RDMA 的网络传输,以实现设备跨不同物理节点之间的零拷贝内存访问。 该项目涵盖了广泛的集合通信模式,包括归约(Reductions)、广播(Broadcasts)、收集(Gathers)和全对全交换(All-to-all exchanges),以及点对点远程内存访问。它提供全面的通信器管理,用于初始化、分区和调整 GPU 组大小,以及用于注册缓冲区和协调共享设备内存的专用内存管理。 该系统包括一套用于健康跟踪、诊断日志记录和实时事件监控的监控与可观测性工具,以及用于机器学习框架、CUDA Graphs、MPI 和 Python 的集成接口。
NCCL creates a registered memory window to enable one-sided remote memory access and peer-to-peer mapping.