OpenMythosのサンプルプログラムを動かしました

1.概要 前回、OpenMythosの環境構築まで実現したので、GitHubにあるサンプルプログラム(Usage)を動かしてみました。一部エラーが発生しましたが、結果出力部分なので修正をしました。その内容を記述します。 2.詳細 Usageに記載されているPythonプログラムをopenmythos_usage.pyとして作成します。 $ source ~/mypy/bin/activate (mypy) $ pythoh3 openmythos_usage.py 下記エラーとなります [MLA] Parameters: 1,538,626 [MLA] Logits shape: torch.Size([2, 16, 1000]) [MLA] Generated shape: torch.Size([2, 24]) Traceback (most recent call last):   File "/home/nakasima/openmythos/openmythos_usage.py", line 48, in <module>     rho = torch.linalg.eigvals(A).abs().max().item()           ^^^^^^^^^^^^^^^^^^^^^^^ RuntimeError: linalg.eig: The input tensor A must have at least 2 dimensions. コードの下記部分を修正します #rho = torch.linalg.eigvals(A).abs().max().item() rho = A.abs().max().item() $ source ~/mypy/bin/activate (mypy) $ pythoh3 openmythos_usage.py [MLA] Parameters: 1,538,626 [MLA] Logits shape: torch.Size([2, 16, 1000]) [MLA] Generated shape: torch.Size([2, 24]) [MLA] Spectral radius ρ(A) = 0.3679 (mus...

Deep Learning環境構築をnVIDIA Container Toolkit利用に変えました

 1.概要

本ブログの7/1の記事で記載したGPUに関して、nVIDIAのGPU利用には下記製品を導入して利用していました。
・nVIDIAのデバイスドライバー
・CUDA(Compute Unified Device Architecture)
・cuDNN(The NVIDIA CUDA Deep Neural Network library)
・GPU対応のtensorflow
しかし、ubuntuのkernelが更新されると整合性が取れなくなり、再構築をしていました。

nVIDIAはnVIDIA Container Toolkitを提供して、環境構築の問題を改善しています。nVIDIA Container ToolKitに関して記述します。

2.詳細

ubuntu-20.04.4でnVidia 1050Tiを利用します。導入手順は以下の通りです。

(a) ubuntu-20.04.4の標準driver(nouveau)を無効にする
(b) ubuntu-20.04.4にnVidiaの最新ドライバーを導入する
(c) nVIDIA Container Toolkitを導入して、nvidia-smi試験(参考資料)
(d) nVIDIA Runtimeを設定して、docker上でnvidia-smi試験(参考資料)

ここでは、(a)(b)の記述は省略して、(c)(d)に関して記述します。

(c) nVIDIA Container Toolkitを導入して、nvidia-smi試験
Installation Guideを参照します。
・Dockerを導入します(ubuntu 20.04の標準を利用します)
・Setting up NVIDIA Container Toolkit

$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
      && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
      && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
            sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
            sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

$ sudo apt-get update
$ sudo apt-get install -y nvidia-docker2
$ sudo systemctl restart docker
$ sudo docker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi

nvidia-smiの実行結果が表示されます

(d) nVIDIA Runtimeを設定して、docker上でnvidia-smi試験
User Guideを参照します。
記述内容通りでなく、/etc/docker/deamon.jsonを以下のように作成します。
私はvimで作成しました。

{
    "default-runtime": "nvidia",
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
        }
    }
}

一度、PCを再起動します。

$ docker run --rm --gpus all nvidia/cuda nvidia-smi

上記手順では実行できません。
nvidia/cudaの参考資料に従って、

$ docker run --rm --gpus all nvidia/cuda:11.0.3-runtime-ubuntu20.04 nvidia-smi

nvidia-smiの動作確認できます。

参考
[外部サイト参照]
Installation Guide
User Guide
nvidia/cuda

コメント

このブログの人気の投稿

miniPCのBMAXでWindows11のsecure boot設定漏れでトラブル発生

LinuxMint-22.3にWine 11.6をサクッと入れてみました

LinuxMint 21.3にWinBoat導入を試してみました