前言
- A100服务器上给TriplaneGaussian配环境的时候,在diff-gaussian-rasterization上花了许多时间,踩了许多坑,特此记录。
- 安装diff-gaussian-rasterization一定要有nvcc,即
nvcc -V这个指令要有输出,如果没有输出,可以用conda create -n (env_names) python=3.10 cudatoolkit=11.8 -c nvidia -y安装虚拟环境。
注意事项
- Python = 3.10。虽然TriplaneGaussian上说Python >=3.8 即可,但实测得Python=3.10才能装上diff-gaussian-rasterization。(有人说Python=3.9也行,但没试过)
- PyTorch的cu >= 121。cu <= 118会报错,说是CUDA版本不匹配,可以在PyTorch官网上找合适的版本,用的是这个命令安装:
pip install torch==2.2.0 torchvision==0.17.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu121。 - gcc = 7.3.0。gcc版本高了会报错,在anaconda环境下升级gcc可以参考这个链接。
- setup.py。diff-gaussian-rasterization里头的setup.py改成下面这个:
from setuptools import setup
from torch.utils.cpp_extension import CUDAExtension, BuildExtension
import os
os.path.dirname(os.path.abspath(__file__))
setup(
name="diff_gaussian_rasterization",
packages=['diff_gaussian_rasterization'],
ext_modules=[
CUDAExtension(
name="diff_gaussian_rasterization._C",
sources=[
"cuda_rasterizer/rasterizer_impl.cu",
"cuda_rasterizer/forward.cu",
"cuda_rasterizer/backward.cu",
"rasterize_points.cu",
"ext.cpp"
],
extra_compile_args={
"nvcc": [
"-I" + os.path.join(os.path.dirname(os.path.abspath(__file__)), "third_party/glm/"),
"-std=c++17"
],
"cxx": ["-std=c++17"]
}
)
],
cmdclass={
'build_ext': BuildExtension
}
)
报错:ModuleNotFoundError: No module named 'torch'
- 解决办法:参考Github上的Issue,把
pip install ./diff-gaussian-rasterization-main
改成
pip install ./diff-gaussian-rasterization-main --no-build-isolation
1943

被折叠的 条评论
为什么被折叠?



