☰
ppf-contact-solver 跑在 vast.ai:租张 GPU 跑布料固体绳索仿真
2026/10/17 2:25:01 网站建设 项目流程

ppf-contact-solver 跑在 vast.ai:租张 GPU 跑布料固体绳索仿真

【免费下载链接】ppf-contact-solverA contact solver for physics-based simulations involving 👚 shells, 🪵 solids, 🪢 rods, 🧱 rigid bodies and ⏳ sand.项目地址: https://gitcode.com/GitHub_Trending/pp/ppf-contact-solver

本地没有 NVIDIA GPU 时,租 vast.ai 上的显卡是运行 ppf-contact-solver 最省事的办法:几分钟拉起实例,浏览器里就能跑布料、固体、绳索的接触仿真例子,用完即毁。

什么时候需要租卡跑

两个典型场景。一是批量跑仓库examples/里的仿真:drape 布料垂坠、woven 绳织、stack 固体堆叠这类场景顶点数动辄几十万,CPU 后端或 Mac 上的 Metal 后端能跑通但很慢,一个例子跑完要等很久,而一张按小时计费的云上 RTX 卡把时间压缩到分钟级。二是本地根本没有 CUDA 环境的 Windows 或 Mac 用户,又不想折腾驱动和容器。

下面的例子是 ppf-contact-solver 的招牌画面:布料盖在球体上,接触处无穿透。

选卡与预算参考

准备三样东西:vast.ai 账户(并把你的 SSH 公钥注册进去)、本地的 vast CLI 和jq(sudo apt install jq)。

选卡按"场景规模"走,参考价区间:

GPU每小时参考价适合跑什么
RTX 4090$0.5–1.0大型场景:绳织、数十万顶点布料
RTX 3090$0.3–0.7中型:常规布料/固体跑几百帧
RTX 3080$0.2–0.5小规模验证:yarn 这类例子几分钟出结果

搜索时用条件收窄:dph <= 1.0(时价 1 美元以内)、verified=True、disk_space >= 64、cpu_ram >= 32、reliability > 0.98。镜像选nvidia/cuda系列的 devel 版,省得在实例里装驱动。

从零到跑通

把实例拉起来,顺带转发 8080

下面两条命令先租实例,再用-L参数把远端 8080 端口映射到本地,之后浏览器就能直连前端;SSH_IP和SSH_PORT从./vast show instances --raw里读出来。

./vast create instance --label ppf-contact-solver \ --image nvidia/cuda:11.8.0-devel-ubuntu22.04 --disk 64 --ssh ssh -p $SSH_PORT root@$SSH_IP -L 8080:localhost:8080

在容器里装项目

连上后先起一个 CUDA 容器,后续所有操作都在容器内,宿主机保持干净。

docker run -it --gpus all -p 8080:8080 -e TZ=Asia/Tokyo \ --name ppf-contact-solver nvidia/cuda:12.8.0-devel-ubuntu24.04

容器里装好 git 和 python 后克隆仓库,warmup.py负责准备编译环境,最后一步 release 编译 Rust 内核,最耗时。

apt install -y git python3 git clone https://gitcode.com/GitHub_Trending/pp/ppf-contact-solver cd ppf-contact-solver && python3 warmup.py source "$HOME/.cargo/env" && cargo build --release

起 Web 前端,跑第一个例子

编译出现Finished release profile后,一条命令把 JupyterLab 前端拉起来。

python3 warmup.py jupyter

本地浏览器打开http://localhost:8080,左侧就是全部示例 notebook。先打开最小的 drape 和 yarn 确认管线通了,再上大例子。

跑通之后的三个高频问题

SSH 连不上?实例还在启动,等 30 秒重试即可,仓库文档也明确建议间隔重试;端口变了就重新查./vast show instances拿最新的SSH_PORT。

浏览器打不开 8080?九成是 SSH 时没带-L 8080:localhost:8080,断开后用带转发参数的命令重连,再刷新浏览器。

账单一直涨?⚠️ 用完必须销毁实例:

./vast destroy instance $(./vast show instances -q)

销毁后到 Web 控制台再确认一次实例列表为空,才真正停止计费。

这套方案适合谁,下一步做什么

适合本地没有高端 GPU、又想按需租用、跑完即走的 CG 美术、虚拟服装开发者和仿真研究者。建议先跑 drape 和 yarn 两个小例子,确认nvidia-smi认卡、结果符合预期,再上 woven 这种大场景。

【免费下载链接】ppf-contact-solverA contact solver for physics-based simulations involving 👚 shells, 🪵 solids, 🪢 rods, 🧱 rigid bodies and ⏳ sand.项目地址: https://gitcode.com/GitHub_Trending/pp/ppf-contact-solver

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询