CUDA for WSLのインストール
次にWindows 10側でNVIDIAが提供する「CUDA on WSL」をインストールする(WSL2側でないことに注意されたい)。なお、ダウンロードには、NVIDIA Developer Program Membershipへの登録が必要である。
EXEファイルが入手できるので、これを実行してインストールする。インストール後にNVIDA GPU用の「GeforceExpreience」が起動する。これは、NVIDIA提供のGPUドライバーをインストールすると必ずインストールされ、ドライバーのアップデートなどをするものだ。これもデバイスドライバーの更新などにはユーザー登録(Googleアカウントなどが利用できる)が必要となる。NVIDIA、MicrosoftのドキュメントともにGPUドライバーのバージョンについての記述はないが、最新ドライバーにしておくべきだろう。
WSL2側で必要な処理
WSL2側での処理は大きく以下のとおり。
Docker-CEのインストール
NVIDIA Container Toolkitのインストール
Dockerデーモンの再起動
それぞれ、Linuxのコマンドだが、ここでは特に意味を説明しない。詳細は、以下のNVIDIAの文書にある。
●CUDA on WSL :: CUDA Toolkit Documentation
https://docs.nvidia.com/cuda/wsl-user-guide/index.html
まずは、以下のコマンドでDocker-CEをインストールする。
curl https://get.docker.com | sh
途中、WSLを見付けたのでDocker Desktopにしませんか的な英語のメッセージが出るが、放っておくと、処理が先に進む。ここで慌てて止めないように。
次にNVIDIA Container Toolkitをインストールする。面倒だが、以下のリストの6行のコマンドを実行させる。
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
curl -s -L https://nvidia.github.io/libnvidia-container/experimental/$distribution/libnvidia-container-experimental.list | sudo tee /etc/apt/sources.list.d/libnvidia-container-experimental.list
sudo apt-get update
sudo apt-get install -y nvidia-docker2
前記NVIDIAの文書に同じものがあるので、そちらをコピーして使うといいだろう。この記事の表示を使うには折り返しなどに注意されたい。
リストのコマンドの出力が終わって、プロンプトに戻ったら、以下の2つのコマンドを実行する。これでDockerデーモンが再立ち上げされ、準備が整う。
sudo service docker stop
sudo service docker start
特にエラー表示などがなければ、インストールはうまくいったはずだ。
とりあえず、ホントに動くか試してみる
では、サンプルのコンテナーを動かして試してみることにしよう。以下のDockerコマンドを入れてみる(記事冒頭の画面)。
sudo docker run --gpus all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark
コンテナーのダウンロードが開始され、実行には数分かかる。まあ、表示を見ていればわかると思うが……。コマンド出力の最後に
GPU Device 0: "GeForce GTX 960M" with compute capability 5.0
といった表示が出れば、WSL2側でCUDAが正しく動作していることになる。コマンド出力の最後に実行結果が表示されるが、これは、GPUにより違いが出る。
コマンドがちょっと面倒だが、WSLやコマンドラインを使い慣れているユーザーなら特に問題なく設定できるはずだ。これで、少なくとも機械学習関係は、Linuxマシンを用意することなく、Windowsマシンで代用が可能になる。あとはDIGITSなり、なんなりを動かすだけだ。
![](/img/blank.gif)
この連載の記事
-
第437回
PC
Windowsが今更(?)開発者に優しくなろうとしている!? 「Dev Home」は開発者にとって使い物になる? -
第436回
PC
Copilot+PCとともにWindowsのデバイス間連携に大きな変化!? Project ROMEの逆襲? -
第435回
PC
Windows Terminal Preview v1.21では、前回終了時のタブとその表示内容を復元できるように -
第434回
PC
AIの急速な導入がWindowsの予定を変えた!? Windows 12がすぐには出ない可能性 -
第433回
PC
Windows 11の2つのウィジェットを調べる -
第432回
PC
ウェブブラウザが切り開いたWindowsでのタブアプリケーション -
第431回
PC
Windows上でユニコードを「見る」方法 -
第430回
PC
WindowsからWordPadが廃止! RTF(Rich Text Format)はどうなる? -
第429回
PC
Windows Updateの「利用可能になったらすぐに最新の更新プログラムを入手する」はオンにした方がいいか? -
第428回
PC
Google/Bingで使える検索オプション -
第427回
PC
WindowsのPowerShellのプロファイルを設定する - この連載の一覧へ