Show HN: Rgpu – 一个张量驻留在远程 GPU 上的 PyTorch 设备

Hacker News Top 工具

摘要

Rgpu 是一个开源工具,可通过 TCP 让 PyTorch 张量和现有 CUDA 程序在远程 NVIDIA GPU 上执行计算,客户端应用保持在本地运行,提供 PyTorch 设备接口和 CUDA shim 两条路径。

rGPU 在远程 NVIDIA 机器上运行 GPU 任务,而应用保持在客户端本地运行。
查看原文
查看缓存全文

缓存时间: 2026/10/08 21:02

ymcrcat/rgpu

来源: https://github.com/ymcrcat/rgpu

rGPU

CI (https://github.com/ymcrcat/rgpu/actions/workflows/ci.yml)

rGPU 在远程 NVIDIA 机器上执行 GPU 工作负载,而应用程序保留在客户端。目前提供两种路径:

路径适用场景接口
PyTorch device可以切换到 rgpu 设备的 PyTorch 程序基于 TCP 的 torch 操作
CUDA shim现有 Linux CUDA 程序,包括原版 CUDA PyTorchlibcuda、CUDA Runtime、cuBLAS、cuBLASLt 和 cuDNN 的 shim

PyTorch device 是更简单的集成方式。CUDA shim 可以覆盖现有二进制程序,但兼容面更大。

文档

位于 website/ 的 Fumadocs 站点是产品文档:

工程记录和实验汇总在 docs/README.md 中。

快速开始:PyTorch device

使用 pip install rgpu 安装 rGPU,或者在本检出目录中执行 pip install -e ./python,然后按照快速开始部署服务器。将以下内容保存为工作负载目录下的 smoke.py:

``python import torch import rgpu

x = torch.ones(4, device=“rgpu”) print((x * 2).sum().item()) # 8.0 ``

在安装了 rGPU 的环境中运行,指定你的服务器 SSH 地址和选项:

``sh rgpu-run –host user@gpu-host –ssh-port 2222 -i ~/.ssh/gpu_key
python smoke.py


程序负责选择设备;`rgpu-run` 负责打开隧道并配置连接。预期输出为 `8.0`。

对于现有 Linux CUDA 程序,请参阅 [CUDA shim 指南](website/content/docs/cuda-shim.mdx),从 `./scripts/build_client.sh` 开始。

这两种协议都不对连接进行身份验证或加密。请让 `rgpu-opserver` 保持默认的 localhost 绑定,并使用 SSH。CUDA 服务器监听所有 IPv4 接口:即使使用 SSH 隧道,也请在启动前通过主机/云防火墙规则限制 9713 端口。参见[部署](website/content/docs/operations.mdx)。

## 开发

``bash
# C++ 客户端和 fake-driver 测试
./scripts/build_client.sh

# Python 测试
python -m pip install -e './python[test]'
python -m pytest python/tests

# 静态文档
npm --prefix website ci
npm --prefix website run build

其余的构建、云端和硬件相关命令参见 scripts/README.md。生成的 C++ 代码已提交到仓库;其策略和重新生成步骤见 codegen/README.md。

仓库结构

路径用途
client/CUDA 客户端 shim 和传输层
server/CUDA 服务器和调度分发
common/共享协议和生成的 API 元数据
python/PyTorch device 和启动器
tests/C++、Python、CUDA 和硬件检查
codegen/CUDA 头文件解析器和源码生成器
website/Fumadocs 产品文档
docs/设计记录、测量数据和实验报告
jax/实验性的 JAX 工作;不是受支持的产品路径
scripts/构建、部署、云端和测试辅助脚本
skills/可安装的智能体指导,用于使用 rGPU

历史实现笔记和实验结果汇总在 docs/README.md 中。

许可证

基于 Apache License 2.0 授权。

相似文章

@gyro_ai: 在本地跑大模型给自己的工具用,装一堆 Python 依赖、配半天后端,光环境就劝退一批人 其实很多人只想要一个能立刻跑起来的本地接口 Shimmy 是 Rust 写的本地推理服务,编译成单个二进制文件,提供跟 OpenAI 完全一样的接口…

X AI KOLs Timeline

Shimmy is a lightweight single-binary local inference server that provides a drop-in OpenAI-compatible API for running GGUF models, supporting hot-swapping models and requiring no Python dependencies.