一言日記 2020/08/10

昨日の続きとしてWSLからGPUが使えないか色々試してた.

結論からいうとうまく使えなかった.

$ sudo make
(省略)
$ ./deviceQuery
./deviceQuery Starting…

CUDA Device Query (Runtime API) version (CUDART static linking)

cudaGetDeviceCount returned 35
-> CUDA driver version is insufficient for CUDA runtime version
Result = FAIL

サンプルコードを動かしたときのエラーメッセージ

エラーメッセージからしてバージョンが悪さしているのは分かるのだが,CUDA Toolkit 10.0/10.2/11.0 の全てで上手く動かないのはよくわからない(GPUはGeForce GTX 1060でLinux ディストリビューションはUbuntu 18.04).

WindowsのコマンドプロンプトからはCUDA Toolkit 10.2でGPUを使うことが出来るのでGPUとToolkitのバージョン相性が悪いことは無いはず.





個人的に一番匂うのは,WSL2にあらかじめ入れておく必要があるNVIDIAドライバ(NVIDIA Drivers for CUDA on WSL)とCUDA Toolkitの相性の問題.


ドライバをダウンロードしてきたときのファイル名が”455.41_gameready_win10-dch_64bit_international”なのでDriver Versionは455.41と予想.

ここで,CUDA Toolkit 10.0/10.2/11.0が対応しているDriver Versionを見てみると(https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html 参照),Driver Version 455.41とCUDA Toolkitとの対応は問題がないことが分かる(というかDriver Version 455だと全てのCUDA Toolkitと対応している?).

こう見るといけてそうだが,CUDA Toolkitをインストールするときにドライバをきちんと除けているかとかが不安(WSL用のNVIDIAドライバを使わないといけないようなので,参考文献[1]に書いてあるように$sudo apt-get install cudaで一気に全部入れるとだめらしい).




まあ准教授にヘルプ出してみたので後日解決するだろう(知らんけど).







参考にさせて頂いたサイト

[1] 「待ってました CUDA on WSL2」, https://qiita.com/ksasaki/items/ee864abd74f95fea1efa

(最終閲覧日 2020年 8月 11日)

[2] 「CUDA in WSL2を試す」,

https://rigaya34589.blog.fc2.com/blog-entry-1259.html

(最終閲覧日 2020年 8月 11日)







40日目