RuntimeError: CUDA error: no kernel image is available for execution on the device

pytorch 1.8.0がリリースされました。

github.com

早速アップデート

pip install --upgrade torch torchvision torchaudio

すると,

Traceback (most recent call last):
  File "/home/satoharu/benchmark_NN/classification/src/train.py", line 95, in <module>
    main(config, dset_config)
  File "/home/satoharu/benchmark_NN/classification/src/train.py", line 77, in main
    trainer.train(
  File "/home/satoharu/benchmark_NN/classification/src/trainers/BaseTrainer.py", line 27, in train
    self._train(
  File "/home/satoharu/benchmark_NN/classification/src/trainers/clf.py", line 78, in _train
    output = self.model(x)
  File "/home/satoharu/.pyenv/versions/3.9.2_bench/lib/python3.9/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/home/satoharu/.pyenv/versions/3.9.2_bench/lib/python3.9/site-packages/torch/nn/parallel/data_parallel.py", line 165, in forward
    return self.module(*inputs[0], **kwargs[0])
  File "/home/satoharu/.pyenv/versions/3.9.2_bench/lib/python3.9/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/home/satoharu/benchmark_NN/classification/src/models/torchhub.py", line 41, in forward
    x = layer(x)
  File "/home/satoharu/.pyenv/versions/3.9.2_bench/lib/python3.9/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/home/satoharu/.cache/torch/hub/lukemelas_EfficientNet-PyTorch_master/efficientnet_pytorch/model.py", line 311, in forward
    x = self.extract_features(inputs)
  File "/home/satoharu/.cache/torch/hub/lukemelas_EfficientNet-PyTorch_master/efficientnet_pytorch/model.py", line 286, in extract_features
    x = self._swish(self._bn0(self._conv_stem(inputs)))
  File "/home/satoharu/.pyenv/versions/3.9.2_bench/lib/python3.9/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/home/satoharu/.cache/torch/hub/lukemelas_EfficientNet-PyTorch_master/efficientnet_pytorch/utils.py", line 270, in forward
    x = self.static_padding(x)
  File "/home/satoharu/.pyenv/versions/3.9.2_bench/lib/python3.9/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/home/satoharu/.pyenv/versions/3.9.2_bench/lib/python3.9/site-packages/torch/nn/modules/padding.py", line 23, in forward
    return F.pad(input, self.padding, 'constant', self.value)
  File "/home/satoharu/.pyenv/versions/3.9.2_bench/lib/python3.9/site-packages/torch/nn/functional.py", line 3997, in _pad
    return _VF.constant_pad_nd(input, pad, value)
RuntimeError: CUDA error: no kernel image is available for execution on the device

CUDA error: no kernel image is available for execution on the device????

RTX3090+CUDA11.2では以下のコマンドでpytorchをインストールします。

pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html

RTX2080Ti系はCUDA11でもCUDA10系のpytorchで大丈夫なんですが, RTX30番台ではできない様子。

少々面倒ですね。

↓深層学習が簡単に実行できるレポジトリ。 github.com