NVIDIA / warp

A Python framework for high performance GPU simulation and graphics
https://nvidia.github.io/warp/
Other
3.64k stars 205 forks source link

Cannot detect GPU #226

Open tnnandi opened 1 month ago

tnnandi commented 1 month ago

I have installed warp within a conda environment on WSL2 on Windows (on a machine with GeForce RTX 3050 GPU), but warp doesn't seem to be able to locate the GPU.

Here are some relevant information and output:

nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Thu_Mar_28_02:18:24_PDT_2024
Cuda compilation tools, release 12.4, V12.4.131
Build cuda_12.4.r12.4/compiler.34097967_0
 python
Python 3.10.14 | packaged by conda-forge | (main, Mar 20 2024, 12:45:18) [GCC 12.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import warp as wp
>>> wp.init()
Warp CUDA error 100: no CUDA-capable device is detected (in function init_cuda_driver, /builds/omniverse/warp/warp/native/cuda_util.cpp:224)
Warp CUDA error 3: initialization error (in function cuda_device_get_count, /builds/omniverse/warp/warp/native/warp.cu:1635)
Warp 1.1.0 initialized:
   CUDA devices not available
   Devices:
     "cpu"      : "x86_64"
   Kernel cache:
     /home/tnandi/.cache/warp/1.1.0
maohaotian commented 1 month ago

same

c0d1f1ed commented 1 month ago

Thanks for reporting this! CUDA support on WSL can be a bit tricky to set up. Did you follow the steps at CUDA on WSL? Pay specific attention to:

users must not install any NVIDIA GPU Linux driver within WSL 2. One has to be very careful here as the default CUDA Toolkit comes packaged with a driver, and it is easy to overwrite the WSL 2 NVIDIA driver with the default installation. We recommend developers to use a separate CUDA Toolkit for WSL 2 (Ubuntu) available from the CUDA Toolkit Downloads page to avoid this overwriting.

The above page also contains other troubleshooting advice. Please let us know if you're able to run other CUDA workloads within WSL, but not Warp.