proxy-GS:vulkan编译(记录)
文章目录第一阶段干净的基准环境配置第二阶段核心 CUDA 算子安装第三阶段代码“外科手术”解决 API 不匹配第四阶段Vulkan 后端终极编译第五阶段漫游验证Proxy-GS 的配置vulkan流程。看到vk2torch_ext.cpython-310-x86_64-linux-gnu.so成功生成意味着你的 L40S 现在已经具备了 1ms 生成深度图和零拷贝数据交换的硬核能力。为了方便你日后复现或在其他设备上快速迁移我为你总结了这套基于 L40S Ubuntu 22.04 CUDA 11.8 的“全通关”路线图。这套方案避开了所有的版本陷阱、路径冲突和代码 Bug。第一阶段干净的基准环境配置创建环境与锁定核心库conda create-nproxy-gspython3.10-yconda activate proxy-gs# 安装 Conda 版编译工具链解决 nvcc 找不到编译器的问题condainstall-cconda-forge gxx_linux-6411pybind11-y# 安装兼容版并行加速库解决 tbb::task 报错condainstall-cconda-forgetbb2020.3tbb-devel2020.3-y# 安装精准匹配的 PyTorch 2.1.2 (CUDA 11.8)pipinstalltorch2.1.2torchvision0.16.2torchaudio2.1.2 --index-url https://download.pytorch.org/whl/cu118修复依赖清单冲突在安装requirements.txt前必须解除 Numpy 和 Scipy 的版本死锁它们的高版本不支持 Python 3.10sed-is/numpy2.3.3/numpy/grequirements.txtsed-is/scipy1.16.3/scipy/grequirements.txt pipinstall-rrequirements.txt第二阶段核心 CUDA 算子安装为了防止 pip 开启构建隔离导致找不到torch必须强制使用本地环境编译pipinstallninja pipinstall./submodules/diff-gaussian-rasterization --no-build-isolation pipinstall./submodules/simple-knn --no-build-isolation# 获取预编译的 scatterpipinstalltorch-scatter-fhttps://data.pyg.org/whl/torch-2.1.2cu118.html第三阶段代码“外科手术”解决 API 不匹配这是最关键的一步。由于子模块版本代差必须手动补齐缺失的控制接口补全头文件声明打开ProxyGS-Vulkan-Cuda-Interop/nv_repo/nvpro_core2/nvapp/application.hpp将headlessRun()移至public:区域并添加public:voidheadlessRun();boolheadlessInit();boolheadlessStep();voidheadlessShutdown();补全实现逻辑在ProxyGS-Vulkan-Cuda-Interop/nv_repo/nvpro_core2/nvapp/application.cpp末尾添加boolnvapp::Application::headlessInit(){returntrue;}boolnvapp::Application::headlessStep(){returntrue;}voidnvapp::Application::headlessShutdown(){}修复桥接代码调用在ProxyGS-Vulkan-Cuda-Interop/src/pybind/vk2torch_ext.cpp中约 421 行将return m_app-headlessRun();修改为return m_app-headlessInit();确保后续headless_step调用headlessStep()headless_shutdown调用headlessShutdown()。第四阶段Vulkan 后端终极编译准备 Vulkan SDK确保下载了最新的 SDK如 1.4.341.1并解压到$HOME/VulkanSDK/下。对齐环境变量并执行编译cdProxyGS-Vulkan-Cuda-Interoprm-rfbuild-py# 必须清理旧缓存# 声明变量exportPYTHON_EXECUTABLE$(whichpython)exportVULKAN_SDK_PREFIX$HOME/VulkanSDK/1.4.341.1/1.4.341.1/x86_64exportCMAKE_PREFIX_PATH$CONDA_PREFIX# 强制锁定 Conda 编译器exportCC$CONDA_PREFIX/bin/x86_64-conda-linux-gnu-gccexportCXX$CONDA_PREFIX/bin/x86_64-conda-linux-gnu-g ./build_pyext_only.sh build-py第五阶段漫游验证[cite_start]现在万事俱备。论文提到 Proxy-GS 能实现FPS 150[cite: 15, 22, 222]在 L40S 上运行漫游cd..python render_real.py\-m/你的训练输出目录/output\--scene_file/你的代理网格路径/your_scene.glb
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2487485.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!