torch編譯場景, 有時候會報找不到TORCH_CUDA_ARCH_LIST, 具體報錯信息如下:
/home/用戶名/Miniconda3/envs/ktransformers/lib/python3.11/site-packages/torch/utils/cpp_extension.py:2059: UserWarning: TORCH_CUDA_ARCH_LIST is not set, all archs for visible cards are included for compilation.
If this is not desired, please set os.environ['TORCH_CUDA_ARCH_LIST'].
在命令行啓動編譯之前, 輸入以下内容查詢CUDA架構版本, 也被人叫做compute cap計算能力
nvidia-smi --query-gpu=compute_cap --format=csv
然後把這個號錄入到系統變量裡, 我的是ubuntu, 如果是Windows, 得設置PATH, 多張不同的顯卡用逗號隔開(相信生産環境下,你不會買不一樣的顯卡塞到一台服務器裡)
export TORCH_CUDA_ARCH_LIST="XXX;XXX;XXX"
之後啓動編譯, 例如pip3 install -e .
說白了, 遇到這種問題, 設定個系統變量重新編譯就能解決。