首页/新闻资讯/正文详情

如何构建Spirula Studio?Vulkan与CUDA双后端编译完全指南

发布时间:2026/9/25 19:04:40 来源:云帆数科 栏目:资讯中心
如何构建Spirula Studio?Vulkan与CUDA双后端编译完全指南
如何构建Spirula StudioVulkan与CUDA双后端编译完全指南【免费下载链接】spirula-studioCross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA.项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studioSpirula Studio是一款开源的跨厂商 3D Gaussian Splatting3D 高斯泼溅训练工具可以从原始照片或视频直接训练出 splat 并导出带贴图的网格无需 Python/PyTorch 和 COLMAP。本文将带你一步步完成Vulkan 与 CUDA 双后端的源码编译覆盖 Windows、Linux 和 macOS 三大平台 ️一、Vulkan 还是 CUDA先看懂双后端区别Spirula Studio 通过SS_BACKEND选项在编译期选择计算后端两个后端提供完全相同的训练和网格化功能对比项Vulkan推荐CUDA显卡支持NVIDIA、AMD、Intel、Apple Silicon仅限 NVIDIA平台支持Windows / Linux / macOSWindows / Linux额外依赖Vulkan SDKmacOS 自动获取 MoltenVKCUDA Toolkit MSVCWindows额外能力内置 SfM、视频抽帧、AI 掩码无产物体积构建更快、二进制更小较大 性能差异通常在几个百分点以内具体取决于 GPU 驱动Vulkan 后端在部分场景下显存占用更低。后端选择逻辑定义在 cmake/SsOptions.cmake 中整体构建流程编排见 CMakeLists.txt 与 docs/backends.md。二、编译前准备环境清单不同平台只需准备对应工具链其余依赖如 MoltenVK会由 CMake 自动处理WindowsVisual Studio含 C 工作负载CUDA 后端还需安装 CUDA ToolkitLinuxCMake、Ninja、C 编译器GCC/Clang、python3可选用于代码生成macOSXcode 命令行工具MoltenVK 会静态链接进二进制无需单独安装Vulkan 后端请确认已安装Vulkan SDKmacOS 除外CMake 会自动拉取 MoltenVK。三、克隆仓库git clone https://gitcode.com/GitHub_Trending/sp/spirula-studio cd spirula-studio项目自带两个一键构建脚本Linux/macOS 用 build_develop.bashWindows 用 build_develop.bat。脚本会自动完成代码生成、代码风格检查、按可用内存分配编译并发数等工作。四、Vulkan 后端编译步骤推荐4.1 WindowsMSVC在项目根目录打开命令提示符.\build_develop.bat -DSS_BACKENDvulkan -DSS_ENABLE_PATENTEDON成功后生成build_vulkan\spirula.exe。若使用 GCC/Clang可手动调用 CMakecmake -G Ninja -B build_vulkan -DCMAKE_BUILD_TYPERelease -DSS_BACKENDvulkan -DSS_ENABLE_PATENTEDON cmake --build build_vulkan -j4.2 Linuxbash build_develop.bash -DSS_BACKENDvulkan -DSS_ENABLE_PATENTEDON成功后生成build_vulkan/spirula可执行文件。4.3 macOSApple Silicon / Intelbash build_develop.bash -DSS_BACKENDvulkan -DSS_ENABLE_PATENTEDON cmake --build build --target macos_app cmake --build build --target macos_dmgmacOS 只有一个后端所以构建目录固定为build/。构建完成后你会得到双击即用的build/Spirula Studio.app和build/Spirula Studio.dmg磁盘映像 ⚖️关于SS_ENABLE_PATENTED开启后视频解码在 GPU 上进行抽帧约快 15 倍、无需安装 ffmpeg但涉及 AVC/HEVC 第三方专利风险需自行确认本地合规关闭时视频解码会自动交由 ffmpeg 完成。五、CUDA 后端编译步骤确保已安装较新版本的 CUDAWindows 下还需要与 CUDA 版本兼容的 MSVC 编译器。5.1 Windows.\build_develop.bat -DSS_BACKENDcuda成功后生成build_cuda\spirula.exe。5.2 Linuxbash build_develop.bash -DSS_BACKENDcuda成功后生成build_cuda/spirula可执行文件。 Windows 脚本会自动探测系统中最新安装的 CUDA Toolkit并注入-DCMAKE_CUDA_COMPILER如需指定版本可显式追加该参数。六、实用编译选项速查选项说明默认值-DSS_BACKENDvulkan\|cuda选择计算后端cuda-DSS_BUILD_GUIOFF不构建图形界面只保留 CLI 工具ON-DSS_ENABLE_PATENTEDON启用 GPU 内 H.264/H.265/AV1 编解码OFF-DSS_BUILD_SFMONCUDA 构建中启用内置 SfM需 Vulkan SDKVulkan 下ON-DSS_DEFAULT_LANGzh_CN无法检测语言时的默认界面语言en-DSS_DEBUG_SYMBOLSON输出调试符号二进制显著变大OFF选项完整定义参见 cmake/SsOptions.cmakeVulkan 后端的设备能力与内核覆盖细节可阅读 src/backend/vulkan/README.md。七、编译完成后如何验证双击或命令行运行生成的spirula/spirula.exe打开 GUI加载一个数据集即可看到训练界面命令行用户推荐先执行spirula --help查看全部子命令。默认spirula train会在 HTTP 端口提供 Web 查看器远程 GPU 训练时可通过 ssh 端口转发在浏览器中查看训练进度。八、常见问题排查 找不到 Ninja/CMakeWindowsbuild_develop.bat会自动回退到 Visual Studio 自带的 CMake/Ninja若仍报错请确认 VS 安装了使用 C 的桌面开发组件。Linux 提示 python3 未找到可跳过代码生成构建会使用仓库中已提交的生成文件不影响编译。CUDA 后端链接 nvcc 失败脚本默认不信任旧的CUDA_PATH环境变量会自动选择最新 Toolkit多版本共存时请显式传-DCMAKE_CUDA_COMPILER。macOS 网格化/UV 展开变慢Homebrew 的libomp是 keg-only脚本会自动探测并通过-DOpenMP_ROOT传入若未生效请手动指定该参数。Vulkan 构建想用内置 SfM/SAM它们依赖 Vulkan 运行时Vulkan 后端下默认开启CUDA 后端可通过-DSS_BUILD_SFMON -DSS_BUILD_SAMON手动开启。九、写在最后至此你已经掌握了 Spirula Studio 的完整编译流程Vulkan 后端一条命令即可在三大平台出包CUDA 后端同样简单。得益于自动化的构建脚本和代码生成流程整个编译过程基本是克隆 → 跑脚本 → 双击运行的体验。编译只是起点——训练一个 splat、导出网格、批量处理视频都可以直接从 GUI 或 CLI 完成。祝构建顺利享受 3D 高斯泼溅的乐趣吧【免费下载链接】spirula-studioCross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA.项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

5个与众不同的认证加密算法的设计与分析
5个与众不同的认证加密算法的设计与分析

5个与众不同的认证加密算法的设计与分析 下面给出 5 个研究型/虚构的认证加密 AEAD 草案。它们不是标准,也未经过公开密码分析,不可直接用于生产。目的只是展示 5 种截然不同的设计范式:海绵/置换、格与多项式、编码与秩度量、可逆元胞自动机、排序网络与数据结构。所有方案… · 2026/9/25 19:04:40

Atlas 300V Pro部署YOLO实战:从ONNX到om及推理调优全指南
Atlas 300V Pro部署YOLO实战:从ONNX到om及推理调优全指南

第一次拿到Atlas 300V Pro的那天,我盯着这张卡愣了好一会儿:被动散热片铺满整卡,没有风扇、没有外接供电,插上PCIe槽就能跑,官方标称的INT8算力却比很多300W级别的GPU卡还好看。如果你搜过"atlas 300v 24g 是运算… · 2026/9/25 19:04:21

常用医疗系统数据库在AI时代的快速需求改进(二)
常用医疗系统数据库在AI时代的快速需求改进(二)

2.10 主数据与术语字典库:最容易被忽视,收益最大 如果要在这份盘点中挑出一个"投入产出比最高"的改造对象,那就是主数据与术语字典。因为它被所有系统依赖,改一次,全院受益。 三大类主数据 第一类:患者主索引(EMPI) EMPI 的作用是给同一个患者在不同系统… · 2026/9/25 19:04:03

ArcGIS JS 基础教程(38):三维要素聚合 FeatureReduction
ArcGIS JS 基础教程(38):三维要素聚合 FeatureReduction

ArcGIS JS 基础教程(38):三维要素聚合 FeatureReduction零、写在前面一、功能介绍二、功能实现2.1 开启三维抽稀聚合2.2 动态开关聚合三、功能应用四、核心代码五、在线示例六、关键 API 说明七、系列导航零、写在前面 📌 本系列教… · 2026/9/25 19:38:45

基于Python数据筛选模块总结
基于Python数据筛选模块总结

1、需求 筛查范围:全部储能项目 筛查周期:近一个月 筛查策略:存在单体电压>=XXXXmV,且存在单体温度>=XXX℃,且电池簇总电压30s内降低10V 输出结果:设备号,时间,总电压,电流,SOC,最高最低电压,最高最低温度,单体电压,单体温度 2、整体思路 从influxdb获取… · 2026/9/25 19:38:45

FDE 到底是什么?一文讲清 AI 时代的 Forward Deployed Engineer
FDE 到底是什么?一文讲清 AI 时代的 Forward Deployed Engineer

FDE 到底是什么?一文讲清 AI 时代的 Forward Deployed Engineer一、FDE 的三个单词,分别意味着什么?二、真实招聘描述告诉了我们什么?三、为什么会调用模型 API,还不等于能完成 FDE 项目?1. 输出是否与当前… · 2026/9/25 19:38:08

新能源汽车预充电电路
新能源汽车预充电电路

新能源汽车预充电电路是高压系统上电(车辆启动)或充电(插枪)时的关键保护电路,其核心目的是限制高压上电瞬间的冲击电流,保护高压电气元件(如主继电器、母线电容)免受大电流冲击和电… · 2026/9/25 19:37:14

Windows下ipmitool实战指南:IPMI带外管理全链路解析
Windows下ipmitool实战指南:IPMI带外管理全链路解析

1. 这不是“装个软件”那么简单:ipmitool在Windows下的真实定位与价值重估 你搜到“Windows下安装ipmitool”,第一反应可能是——又一个命令行小工具?点几下鼠标、解压就完事?我干这行十多年,亲手部署过上千台服务器硬… · 2026/9/25 19:37:02

2026年值得收藏:从提示词到AI Agent,掌握未来智能体管理的核心技能!
2026年值得收藏:从提示词到AI Agent,掌握未来智能体管理的核心技能!

AI正从简单的问答机器人进化为能执行复杂任务的智能体(Agent)。未来,掌握如何管理和指挥这些AI Agent将成为关键技能。文章详细介绍了Agent的工作原理、与聊天机器人的区别,以及为何2026年将是Agent发展的关键年份。同时&#xff… · 2026/9/25 19:37:02

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码