WSL下Taichi无法正常调用cuda

我现在可以在wsl中打开gui,但是使用ti.init(arch=ti.cuda)时会报错说无法找到cuda,同时在wsl中打开nvidia-smi的时候能够找到cuda,以及现在可以在pytorch里面调用cuda

报错是这样的

nvdia-smi的结果也是正常的

Hi,

问下Nvidia给的blackhole例子可以跑通嘛?

以及现在可以在pytorch里面调用cuda

我猜测是install pytorch的时候一般会带上install cudatoolkitPytorch 用了自带的cudatoolkit(和系统安装的不是一个)所以pytorch碰巧可以跑通。

个人感觉现在WSL2安装有不少坑( windows版本,WSL版本,CUDA版本,安装步骤先后等等),system specific的问题很难帮得上(我自己也没装成。。),这里建议没有特殊需求的话可以先用windows下的Taichi

您好,
刚刚试了一下,是可以跑通的,但是依然无法运行ti.init(arch=ti.cuda)

这个问题和 WSL2 下libcuda.so的位置有关。

可以确认下libcuda.so的位置是否在/usr/lib/wsl/lib/,或查找 CUDA 动态库的位置。

find /usr -name libcuda.so

将动态库位置导入到环境变量或写入到~/.bashrc中。

export LD_LIBRARY_PATH="/usr/lib/wsl/lib:${LD_LIBRARY_PATH}"

arch=cuda 的 taichi 应用就可以运行了。

PS: WSL2 目前还不支持 OpenGL 和 Vulkan,因此 GGUI 应用也不能运行。