Windows11+AMD Radeon GPUにDirectML(DirectX+WSL2)を利用したTensorFlow/Pytorch環境をセットアップした
概要
Deep Learningで遊んでみようと思いGPUを搭載したが、NVIDIAでなくAMDなのでCMUが使えない。
Windowsが提供するAPIのDirectMLだとWindows/WSL上で動き、DirectX12を利用してAMD GPUにアクセスできるらしいので試してみた。環境はWSL上で構築した。
docs.microsoft.com
docs.microsoft.com
Kernelのアップデート
前回WSLセットアップの際にコマンドで入れたkernelは5.10.16.3で、今回使用するDirectMLに対応していなかった。以下のコマンドでLinux Kernelをアップデートした。
wsl --update
5.10.102.1にアップデートされた。
DirectML
実行した手順はMicrosoftのページの通り。いずれもpipで必要なdirectmlパッケージを導入するだけ。
TensorFlow with DirectML
TensorFlow1とTensorFlow2があるのでどちらも試した。
docs.microsoft.com
docs.microsoft.com
感想
AMD Radeon GPU&Windows(WSL)でもGPUを用いたDeep Learninigの環境をセットアップすることが出来た。Windows上のWSLからGPUを利用できて本当にすごい。*1
まともにPythonのライブラリを使ってML/DLをやったことがないので、使い勝手(速度がどれくらいか、必要なバージョンがあるか等)は不明。今学期Machine Learning for Tradingという講義を取ったので、色々試して勉強したい。
今回は試しで指示通りminicondaを使ったが、実際に使う際はdockerか、pipenv/venv。次はこの環境をLinux(WSL)上のDockerから使えるか?を試したい。
*1:こういった技術がどうやって動いているかを理解できるようになるよう、大学院で勉強したい。