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なり、なんなりを動かすだけだ。

この連載の記事
-
第508回
PC
Scalable Vector Graphics(SVG)そもそも何なのか? -
第507回
PC
Windows 11の「開発者モード」とは何か? -
第506回
PC
Windows 11は早くも来秋登場の26H2プレビューの準備が始まる -
第505回
PC
結構変化しているWindows 11のエクスプローラーの基本設定を見直す -
第504回
PC
新しいOutlookとOutlook Classic、そろそろ古いOutlookとExchangeの組み合わせは引退の頃合いか -
第503回
PC
機能が増えたこともあり、寄せ集めから統合化に進むWindowsの便利ツール「PowerToys」 -
第502回
PC
Windows 11でBluetoothのオーディオ新規格「Bluetooth LE Audio」を試す -
第501回
PC
Windows 11 Ver.25H2での変更点、新機能を整理する -
第500回
PC
Windows 11 Ver.25H2が完成した -
第499回
PC
Windowsでの致命的だが回復可能なエラーに備える手段を2つ紹介 -
第498回
PC
Windows Terminalの安定版V1.23が公開 設定UIが改良される - この連載の一覧へ













