WSLからAnacondaのpythonを動かしてGPUを使ってみた(NNablaで動作確認)

wsl_anacondaAI(人工知能)
Sponsored Links

WSL(Windows Subsystem for Linux)からAnaconda環境のpythonを実行してGPU(CUDA+cuDNN)が動くようなので試してみる

Sponsored Links
Sponsored Links
Sponsored Links

やってみた

Anacondaでpython仮想環境を作成し、WSLからAnaconda環境のpythonを実行してGPUを使用

use-gpu

 

 

 

 

 

 

 

 

できた!
Sponsored Links

やりかた(使い方)

実行環境

  • Windows10 (1903)
  • NVIDIA GPU Computing Toolkit CUDA v10.1
  • Anaconda3
  • Linux Ubuntu 18.04 LTS (WSL)

Anacondaでpython仮想環境を作成

Anaconda Promptを起動

Anaconda Prompt
(base) >

Anacondaでpython仮想環境を作成してactivateしておく

envnameは仮想環境名を任意に指定する

(base) > conda create -n envname python=3.7
(base) > activate envname
(envname) >

WSLからAnaconda環境のpythonを実行

Anaconda PromptからWSLを起動

(envname) > wsl
(WSL)$

Anaconda環境のpythonが動くようにエイリアスを設定

(WSL)$ alias python="python.exe"
(WSL)$ alias pip="pip.exe"

pythonを起動してAnaconda環境のpythonが動くことを確認

(WSL)$ python
Python 3.7.5 ~ :: Anaconda, Inc.
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
(WSL)$

他にも起動したいWindowsバイナリ(exe)があればaliasに設定し、適宜.bashrcに設定するとよい模様

python実行時にGPUが使用されるか確認

GPUが動くかNNabla(Neural Network Libraries)で試してみる

NNablaはSONY提供のAI(機械学習・ニューラルネットワーク)のフレームワーク

GitHub - sony/nnabla: Neural Network Libraries
Neural Network Libraries. Contribute to sony/nnabla development by creating an account on GitHub.
(WSL)$ mkdir -p your/path/nnabla
(WSL)$ cd your/path/nnabla
(WSL)$ pip install nnabla-ext-cuda101
(WSL)$ git clone https://github.com/sony/nnabla-examples.git
(WSL)$ cd nnabla-examples/mnist-collection/

MNISTのサンプルをGPUあり(CUDA+cuDNN)で実行すると約30秒ほどで完了した

(WSL)$ python classification.py -c cudnn
2019-12-23 02:33:32,107 [nnabla][INFO]: Initializing CPU extension...
2019-12-23 02:33:32,405 [nnabla][INFO]: Running in cudnn
2019-12-23 02:33:32,421 [nnabla][INFO]: Initializing CUDA extension...
2019-12-23 02:33:32,423 [nnabla][INFO]: Initializing cuDNN extension...
~~
2019-12-23 02:33:33,800 [nnabla][INFO]: Parameter save (.h5): tmp.monitor\params_000000.h5
2019-12-23 02:33:33,827 [nnabla][INFO]: iter=9 {Training loss}=2.210261583328247
2019-12-23 02:33:33,827 [nnabla][INFO]: iter=9 {Training error}=0.79453125
~~
2019-12-23 02:33:59,986 [nnabla][INFO]: iter=9999 {Training loss}=0.006541474722325802
2019-12-23 02:33:59,987 [nnabla][INFO]: iter=9999 {Training error}=0.003125
2019-12-23 02:33:59,987 [nnabla][INFO]: iter=9999 {Training time}=0.26130175590515137[sec/100iter] 26.61487102508545[sec]
2019-12-23 02:33:59,999 [nnabla][INFO]: iter=9999 {Test error}=0.00703125

比較のために、CPUのみで実行すると7分ほどかかった

(WSL)$ python classification.py
2019-12-23 02:37:54,749 [nnabla][INFO]: Initializing CPU extension...
2019-12-23 02:37:55,041 [nnabla][INFO]: Running in cpu
~~
2019-12-23 02:37:55,455 [nnabla][INFO]: Parameter save (.h5): tmp.monitor\params_000000.h5
2019-12-23 02:37:55,850 [nnabla][INFO]: iter=9 {Training loss}=2.210261344909668
2019-12-23 02:37:55,851 [nnabla][INFO]: iter=9 {Training error}=0.79453125
~~
2019-12-23 02:44:47,789 [nnabla][INFO]: iter=9999 {Training loss}=0.005216401536017656
2019-12-23 02:44:47,790 [nnabla][INFO]: iter=9999 {Training error}=0.00234375
2019-12-23 02:44:47,790 [nnabla][INFO]: iter=9999 {Training time}=4.1329545974731445[sec/100iter] 412.7419340610504[sec]
2019-12-23 02:44:47,978 [nnabla][INFO]: iter=9999 {Test error}=0.00859375

WSLからAnaconda環境のpythonを実行してGPU(CUDA+cuDNN)を使用することができた模様

pipとcondaの問題はあるが、とりあえずGPUで動いたのでよしとしよう

解散!

いいね! いいね?(0)
読み込み中...

Sponsored Links
Sponsored Links

AI(人工知能)
Sponsored Links
wells12
タイトルとURLをコピーしました