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なり、なんなりを動かすだけだ。
本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
-
第533回
PC
PCの世界ではすっかり存在感が薄くなった光学メディアをあらためて整理 -
第532回
PC
モニターの情報が含まれる「VESA EDID」をWindowsで調べる方法 -
第531回
PC
Windowsのコンソール上でUnix/Linuxの標準的なコマンドを動かす「Windows CoreUtils」 -
第530回
PC
Windows 11でタスクバーの位置の移動機能が復活するのは結局どうなった? プレビュー版の現状を見る -
第529回
PC
Windowsの標準スクリプト言語であるPowerShellの現状をあらためて紹介する -
第528回
PC
Windows 11の標準機能でメモリに問題がないかを診断する -
第527回
PC
Windowsがクラッシュする原因を究明する方法 AIを活用すると結構早い -
第526回
PC
今年6月にPCが起動しなくなる心配はないが、セキュアブートが機能しないとWindowsのセキュリティ機能は一部使えなくなる -
第525回
PC
6月以降「PCが起動不可能に?」と間違った騒がれ方をしている原因の「セキュアブート」とは? -
第524回
PC
Windows Insider Programが変化 チャンネルが3つになって整理される -
第523回
PC
AI傾倒に一息入れて、既存のWindowsの改良を宣言するMicrosoft タスクバーを画面の上下左右に移動可能に!? - この連載の一覧へ













