トップページ -> インストール,設定,利用 -> WSL 2, WSL -> WSL 2 で GPU を使う(WSL 2 の Ubuntu で,CUDA や PyTorch や TensorFlow 2.2 GPU 版を動かす.Docker は使わない,Windows 10 Insider Program,WSL 2 上 の Ubuntu を使用)
[サイトマップへ], [サイト内検索へ]

WSL 2 で GPU を使う(WSL 2 の Ubuntu で,CUDA や PyTorch や TensorFlow 2.2 GPU 版を動かす.Docker は使わない,Windows 10 Insider Program,WSL 2 上 の Ubuntu を使用)

主にこのような人向け:Windows 10 + CUDA で PyTorch や TensorFlow などを使ってきたが,Ubuntu (Windows 10 の WSL 2 上)でも CUDA や TensorFlow を使いたい

前提:Windows 10 Insider Program に参加すること.その条件などは利用者で確認すること.

WSL 2 上の Ubuntu での CUDA や TensorFlow の動作については,Dockerを使うものについて, https://ubuntu.com/blog/getting-started-with-cuda-on-ubuntu-on-wsl-2 で報告されている.日本語の類似記事も散見される. この記事では,Docker なし素直に WSL 2 上の Ubuntu を動かす)の場合について,報告する.

ソフトウエア類の利用条件は各自で確認すること.

【このページの目次】

  1. 前準備
  2. WSL 2 の Ubuntu での設定
  3. NVIDIA CUDA ツールキットのインストール
  4. PyTorch のインストール
  5. TensorFlow 2.3 のインストール手順(WSL 2 の Ubuntu 上)
  6. TensorFlow 2 のプログラム例

サイト内の関連ページ:

参考Webページ

https://www.tensorflow.org/install/gpu#pip_package

先人に感謝.


前準備

Windows パソコンで次を行う

Hyper-V,Linux 用 Windows サブシステム,仮想マシンプラットフォームを,いったん,無効にしておく

設定変更に伴うトラブルの可能性を減らすため.

  1. Windows の機能の有効化または無効化」で, 「Hyper-V」, 「Linux 用 Windows サブシステム」, 「仮想マシンプラットフォーム」のチェックを外し, 「OK」をクリック.

    ※ すでにチェックが外れている場合には,何も行わなくて良い

    ※ なお,「Linux 用 Windows サブシステム」がないというときは, 「Windows Subsystem for Linux」があれば,そのチェックを外す.

    「Windows の機能の有効化または無効化」の表示法

    1. Windows のメニューで「設定」を選ぶ
    2. アプリ
    3. 下の方へスクロールし,「プログラムと機能
    4. 「Windows の機能の有効化または無効化」を選ぶ.

    コントールパネルに慣れている場合など,コントールパネルで,「プログラム」,「プログラムと機能」,「Windows の機能の有効化と無効化」という操作でもよい.

    Windows の検索機能で,「Windows の機能の有効化または無効化」でもよいでしょう

  2. Windows を再起動する

Windows 10 Insider Program に参加

更新による不具合の可能性がある. 大事なデータのバックアップを取っておくなど,慎重に行うこと.

手順は 別ページで説明している

Windows 10 Insider Preview 20150 かそれ以上に更新

  1. Windows のスタートメニューで,設定を選ぶ.

  2. 更新とセキュリティ」を選ぶ.

  3. Windows Insider Program」を選ぶ.

  4. Windows Insider Program の設定で「ファスト」に設定.

  5. 今度は設定で,「Windows Update」を選ぶ.

  6. 更新を行う.

    時間がかかるので,しばらく待つ

  7. Windows を再起動する
  8. winver コマンドにより,バージョンを確認する

WSL 2 と Ubuntu のインストール

手順は 別ページで説明している

WSL の Ubuntu の更新

  1. Windows で,コマンドプロンプトを実行.
  2. インストール済みの Ubuntu のカーネルのバージョンの確認

    次のように,121 より小さい値のときは,更新する必要がある.

    更新するには,「wsl --update」あるいは「wsl -d <ディストリビューション名> --update」を実行

    ※ 「wsl --update」あるいは「wsl -d <ディストリビューション名> --update」を実行を実行したが, 「利用できる更新ない」というとき(下図のように)

    は,次の手順を行う.
    1. 「Windows Update」の設定で,「詳細オプション(追加の更新コントールと設定)」を開く.

    2. Windows の更新時に他の Microsoft 製品の更新プログラムを受け取る」をオンにする.

    3. そして,Windows Update で「更新プログラムのチェック」をクリックし,更新する.

    4. 「wsl --update」あるいは「wsl -d <ディストリビューション名> --update」を再度実行する.

プレビュー版の NVIDIA グラフィックスドライバのインストール

Ubuntu のインストールが終わった後, プレビュー版の NVIDIA グラフィックスドライバを,Windows マシンにインストールする.

これは,Windows マシンにインストールするのであって,WSL上の Ubuntu でのインストール作業ではない.

  1. Windows で,コマンドプロンプトを実行.
  2. コマンドプロンプトで,次のコマンドを実行し,すべての Linux サブシステムをシャットダウンしておく.
    wsl --shutdown
    

  3. 次のWeb ページからダウンロード

    ダウンロードには登録が必要.登録のときにも,利用条件などは,利用者側で確認すること.

    https://developer.nvidia.com/cuda/wsl/download

  4. ダウンロードしたファイルを実行して,インストールする


WSL 2 の Ubuntu での設定

WSL の Ubuntu のシステム更新

WSL 2 の Ubuntu で OS のシステム更新を行う

  1. Windows で,コマンドプロンプトを実行.
  2. WSL で Ubuntu を起動
  3. Ubuntu のシステム更新
    sudo apt update
    sudo apt -yV upgrade
    

Python3 開発用ファイル,pip, setuptools,numpy のインストール

引き続き,次のコマンドを実行.

sudo apt -y install python3-dev python3-pip python3-setuptools python3-numpy


NVIDIA CUDA ツールキットのインストール

GPU とは,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある. CUDA とは,NVIDIA社が提供している GPU 用のプラットフォームである. NVIDIA 社のグラフィックスボードが持つ GPU の機能を使うとき,CUDA を利用することができる.

NVIDIA グラフィックスドライバ,NVIDIA CUDA ツールキットのインストールの要点:

次のコマンドを実行して,インストールする.

Ubuntu 20.04 では,CUDA 10.1 がインストールされる.

sudo apt -y install nvidia-cuda-dev nvidia-cuda-toolkit nvidia-cuda-toolkit-gcc

バージョンを選んでインストールしたい場合などは, 次のページからダウンロードしてインストールする.

http://developer.nvidia.com/cuda-downloads


PyTorch のインストール

  1. Windows で,コマンドプロンプトを実行.
  2. WSL で Ubuntu を起動
  3. 使用する Python のバージョンの確認
    python3 --version
    

  4. Torch の Web ページを開く

    https://pytorch.org/

  5. ランタイムコマンドを表示させる

    次のように選ぶと,その下に,ランタイムコマンドが表示される

    [image]
  6. ランタイムコマンドを,先ほどのコマンドプロンプトで実行.

    頭には「sudo」を付ける.

    pip」は「pip3」に変える.

    [image]
  7. Python でPyTorch のバージョン確認

    python3 -c "import torch; print( torch.__version__ )"
    

    [image]
  8. 動作確認
    https://pytorch.org/get-started/locally/ に記載の Python プログラムを動かしてみる

    from __future__ import print_function
    import torch
    x = torch.rand(5, 3)
    print(x)
    

    [image]

TensorFlow 2.3 のインストール手順(WSL 2 の Ubuntu 上)

  1. Windows で,コマンドプロンプトを実行.
  2. WSL で Ubuntu を起動
  3. 使用する Python のバージョンの確認
    python3 --version
    

  4. パッケージのアンインストール操作

    ※ トラブルの可能性を減らすために,次の操作でアンインストールを行っておく.

    sudo apt -y remove python3-keras
    sudo python3 -m pip uninstall -y tensorflow tensorflow-cpu tensorflow-gpu tensorflow_datasets tensorflow-hub keras
    

    [image]
  5. pip を用いてインストール

    https://www.tensorflow.org/install/gpu#pip_package の記載に従う.

    次のコマンドを実行

    GPU 版 Tensorflow をインストールする場合

    ※ 「pip3 install」は,Python パッケージをインストールするためのコマンド

    sudo python3 -m pip install --upgrade pip
    sudo python3 -m pip install tensorflow-gpu tensorflow_datasets
    

    [image]

    CPU 版の Tensorflow をインストールする場合

    ※ 「pip3 install」は,Python パッケージをインストールするためのコマンド

    sudo python3 -m pip install --upgrade pip
    sudo python3 -m pip install tensorflow tensorflow_datasets
    
  6. その結果,エラーメッセージが出ていないことを確認.

  7. TensorFlow のバージョン確認

    端末で,次のコマンドを実行.

    ※ バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.下の図とは違うバージョンが表示されることがある

    python3 -c "import tensorflow as tf; print( tf.__version__ )"
    

  8. (GPU を使うとき) GPU が認識できてるかの確認

    TensorFlow が GPU を認識できているかの確認は,端末で,次を実行して行う.

    python3 -c "from tensorflow.python.client import device_lib; print(device_lib.list_local_devices())"
    

    「device_type: "GPU"」があれば,GPUが認識できている.

    ここで,GPU があるのに,TensorFlow から認識されていないかもしれない. TensorFlow GPU 版が指定するバージョンの NVIDIA CUDA ツールキット,NVIDIA cuDNN がインストールされていないことが原因かも知れない.


TensorFlow のプログラム例

https://github.com/tensorflow/tensorflow に記載のサンプルプログラムを実行してみる

Python プログラムを動かす.

※ Python プログラムを動かすために, WSL 2 の Ubuntu では「python3」コマンドを使う. あるいは, PyCharmなどにある Python コンソールも便利である.


本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.

問い合わせ先: 金子邦彦(かねこ くにひこ) [image]