Trouble with Blackwell GPU compatibility with Pytorch

HAMBUK: <p>Hello!</p>
<p>Recently I bought RTX Pro 6000 Workstation Edition Blackwell GPU.</p>
<p>Today I tried to set up but I faced some compatibility issues.</p>
<p>I read same troubles and issues. I know that most of users solved their issue, but mine looks kinda different.</p>
<p>My environment</p>
<p>OS: Ubuntu 22.04</p>
<p>Driver: 575</p>
<p>Cuda : 12.8</p>
<p>Python version = 3.10</p>
<p>print(torch.<strong>version</strong>) = 2.9.0.dev20250823+cu128</p>
<p>When I print some simple codes it works fine like below.</p>
<p>torch.randn(1).cuda()</p>
<blockquote>
<blockquote>
<p>tensor([0.4545], device=‘cuda:0’)</p>
</blockquote>
</blockquote>
<p>torch.cuda.get_arch_list()</p>
<blockquote>
<blockquote>
<p>[‘sm_70’, ‘sm_75’, ‘sm_80’, ‘sm_86’, ‘sm_90’, ‘sm_100’, ‘sm_120’]</p>
</blockquote>
</blockquote>
<p>torch.cuda.get_device_capability()</p>
<blockquote>
<blockquote>
<p>(12, 0)</p>
</blockquote>
</blockquote>
<p>print(torch.cuda.is_available())</p>
<blockquote>
<blockquote>
<p>True</p>
</blockquote>
</blockquote>
<p>But when I tried to run my actual code I get the error below:</p>
<p>Traceback (most recent call last):<br>
File “/home/shawn/work/deeplava-main16/train_script.py”, line 165, in<br>
main()<br>
File “/home/shawn/work/deeplava-main16/train_script.py”, line 91, in main<br>
output, count = assistant.train(input, label)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/lava/lib/dl/slayer/utils/assistant.py”, line 116, in train<br>
output, count = <a href="http://self.net" rel="noopener nofollow ugc">self.net</a>(input)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/torch/nn/modules/module.py”, line 1775, in _wrapped_call_impl<br>
return self._call_impl(*args, **kwargs)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/torch/nn/modules/module.py”, line 1786, in _call_impl<br>
return forward_call(*args, **kwargs)<br>
File “/home/shawn/work/deeplava-main16/model/neural_network.py”, line 58, in forward<br>
spike = block(spike)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/torch/nn/modules/module.py”, line 1775, in _wrapped_call_impl<br>
return self._call_impl(*args, **kwargs)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/torch/nn/modules/module.py”, line 1786, in _call_impl<br>
return forward_call(*args, **kwargs)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/lava/lib/dl/slayer/block/base.py”, line 115, in forward<br>
x = self.neuron(z)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/torch/nn/modules/module.py”, line 1775, in _wrapped_call_impl<br>
return self._call_impl(*args, **kwargs)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/torch/nn/modules/module.py”, line 1786, in _call_impl<br>
return forward_call(*args, **kwargs)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/lava/lib/dl/slayer/neuron/cuba.py”, line 439, in forward<br>
_, voltage = self.dynamics(input)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/lava/lib/dl/slayer/neuron/cuba.py”, line 369, in dynamics<br>
quantize(self.voltage_decay),<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/lava/lib/dl/slayer/utils/quantize.py”, line 77, in quantize<br>
return _quantize.apply(input, step)<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/torch/autograd/function.py”, line 581, in apply<br>
return super().apply(*args, **kwargs)  # type: ignore[misc]<br>
File “/home/shawn/anaconda3/envs/deeplava/lib/python3.10/site-packages/lava/lib/dl/slayer/utils/quantize.py”, line 26, in forward<br>
return torch.round(input / step) * step<br>
torch.AcceleratorError: CUDA error: no kernel image is available for execution on the device<br>
Search for <code>cudaErrorNoKernelImageForDevice' in https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__TYPES.html for more information. CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect. For debugging consider passing CUDA_LAUNCH_BLOCKING=1 Compile with </code>TORCH_USE_CUDA_DSA` to enable device-side assertions.</p>

HAMBUK: <p>Solved!<br>
There was a code about setting ARCH list</p>
<p>if torch.cuda.is_available():</p>
<pre><code>major, minor = torch.cuda.get_device_capability(0)
</code></pre>
<p>if major &gt;= 8:</p>
<pre><code>    TORCH_CUDA_ARCH_LIST = '8.0'
</code></pre>
<p>After changing it to 12.0 it works just fine! Thank you!</p>