UbuntuでCUDA環境を構成する

WindowsのWSL2環境からUbuntu 22.04 LTS環境に変更しました。

Windows がインストールされたディスクを取り外し、新規のディスクと交換、Ubuntuをインストールして利用しています。

OS入りディスクのみ入れ替えなのでマザーボードやCPU、メモリ、その他ディスクの構成は同じです。

Ubuntu 22.04 LTS+NVIDA RTX A4000環境で評価をしています。

CUDA環境構築の成功と失敗パターンについて記載をします。

GPUメモリ問題

WSL2というよりWindows側の仕様ですが、GPUメモリ(共有メモリ)は実メモリの50%に制限されます。

例えば、実メモリ128GB環境の場合、GPUメモリは64GBが上限です。

メモリを最大限利用させたい場合は、Linux環境が必要となります。

成功

CUDA Toolkit

以下コマンドを実行しインストール処理を行います。

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda-repo-ubuntu2204-12-1-local_12.1.0-530.30.02-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-12-1-local_12.1.0-530.30.02-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-12-1-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda
sudo reboot

以下サイトを参考にしています。

CUDA Toolkit 12.1 Downloads | NVIDIA Developer

nvidia-smiコマンドでドライバとCUDAのバージョンを確認します。

以下のように結果が表示されていれば成功です。

失敗

公式ドライバのインストール

NVIDIAの公式サイトからドライバをダウンロードしました。

公式ドライバー | NVIDIA

ダウンロードしたファイルを以下コマンドでインストールしましたが失敗します。

sudo sh NVIDIA-Linux-x86_64-525.105.17.run

インストールログ(/var/log/nvidia-installer.log)の記載は以下のとおりです。

Ubuntuが提供するドライバがよいとのことなので処理を中断しました。

nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Wed Apr  5 22:24:02 2023
installer version: 525.105.17

PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

nvidia-installer command line:
    ./nvidia-installer

Using: nvidia-installer ncurses v6 user interface
-> Detected 8 CPUs online; setting concurrency level to 8.
-> Installing NVIDIA driver version 525.105.17.
-> An alternate method of installing the NVIDIA driver was detected. (This is usually a package provided by your distributor.) A driver installed via that method may integrate better with your system than a driver installed by nvidia-installer.

Please review the message provided by the maintainer of this alternate installation method and decide how to proceed:

The NVIDIA driver provided by Ubuntu can be installed by launching the "Software & Updates" application, and by selecting the NVIDIA driver from the "Additional Drivers" tab.


(Answer: Abort installation)
ERROR: The installation was canceled due to the availability or presence of an alternate driver installation. Please see /var/log/nvidia-installer.log for more details.

ディストリビューションのドライバインストール

以下のコマンドでドライバのインストールを試しました。

sudo ubuntu-drivers autoinstall

以下のエラーにより失敗します。

UnboundLocalError: local variable 'version' referenced before assignment

おわりに

私がUbuntuのCUDA環境を必要とした理由は、趣味でやっている仮想通貨chia(XCH)のGPUファーミング(マイニング)環境を作るためです。

chiaフォーラムの構築手順では上手く行かなかったので検証をしました。

Gigahorse Ubuntu Simple Plotting Guide - Tutorials & Guides - Chia Forum

現状、GPUによるプロットをしながらファーミングを行っています。

CPUは、i3-10100を利用しています。

メモリは、DDR4 2666MHz(PC4-21300)の32GBを4枚挿した128GB構成です。

去年までは、CPUによる無圧縮プロットをしており、1プロットあたり1時間30分程度かかっていました。

4月からGPUによるLv8圧縮プロットに切り替えを行い、1プロットあたり40分程度に短縮されました。

プロット状況の証跡については以下のとおりです。

少しでも参考になれば幸いです。

執筆担当者プロフィール
宮久保 良彦

宮久保 良彦(日本ビジネスシステムズ株式会社)

モダンワークプレイス部に所属。 Azureに関連する提案、設計、構築を担当しています。 自作PCのカスタマイズが趣味です。

担当記事一覧