Nvidia CUDA を動作させるにはどうすればいいですか? (Blender での GPU レンダリング用)

Nvidia CUDA を動作させるにはどうすればいいですか? (Blender での GPU レンダリング用)

私は、Blender 3D モデリング プログラムで GPU レンダリングを行うために、Ubuntu で CUDA (正確には何なのかはよくわかりませんが) を動作させようとしています。Windows 7 64 ビットでは、問題なく動作します。Ubuntu では、Blender の GPU 処理機能を有効にできません。Nvidia の CUDA をインストールする必要があると思われます。

これは可能ですか? もし可能であれば、その方法の詳細を教えていただけますか? ありがとうございます!

Ubuntu GNOME 15.04 x64 (GNOME 3.14、Nvidia GTX 660、Nvidia 独自ドライバー付き) を実行しています。

答え1

標準リポジトリから CUDA をインストールするには、次の手順を実行します。

sudo apt-get install nvidia-cuda-toolkit nvidia-modprobe

この意志現在CUDA V6.5をインストールします。この記事の執筆時点では、V7.0が最新版で、nVidiaリポジトリから直接入手できます。この警告nVidia リポジトリにアクセスする前に。

答え2

Nvidia の Web サイトで解決策を見つけることができました。リポジトリが Nvidia から直接 CUDA をインストールできるようにするには、システムにダウンロードしてインストールする必要がある .deb パッケージがあります。これが私がこれを動作させた方法です:

  1. へ移動https://developer.nvidia.com/cuda-downloads
  2. Ubuntu のバージョンに対応する .deb ファイルを選択します。(当時は Ubuntu 15.04 用のパッケージがなかったので、代わりに 14.10 用のパッケージを選択しました。これで問題は解決しましたが、将来的に互換性の問題が発生するかどうかはわかりません。それほど大きなリスクではないようですが、そのことをお知らせしたいと思いました。)
  3. ファイル ブラウザーに移動し、ダウンロードした .deb パッケージを見つけてダブルクリック (またはシングルクリック) し、Ubuntu ソフトウェア センター経由でパッケージをインストールします。
  4. ターミナルを開く
  5. 入力: sudo apt-get update
  6. 入力: sudo apt-get install cuda
  7. パッケージがダウンロードされてインストールされるまで待ってから、コンピューターを再起動します (私の場合、パッケージは 900 MB を超えていたため、私の接続ではダウンロードに約 20 分かかりました)

再起動後、Blender は CUDA を使用して GPU レンダリングとベイク処理を開始できるようになりました。問題は解決しました。

答え3

要約:いくつかのファイルが不足しています。それらを取得するには、ターミナルで以下のコマンドを実行してください。

注記:バージョン番号を、使用している Blender のバージョン番号に置き換えます。

$ wget https://download.blender.org/release/Blender2.83/blender-2.83.5-linux64.tar.xz && \
sudo tar -C /usr/share/blender/scripts/addons/cycles/ \
-xvf blender-2.83.5-linux64.tar.xz \
blender-2.83.5-linux64/2.83/scripts/addons/cycles/lib/ \
--strip-components=5 && \
rm -f blender-2.83.5-linux64.tar.xz

その後、Blender を再起動します。


Debian/Ubuntu リポジトリの Blender には、Cycles CUDA/GPU レンダリングを動作させるためのファイルがいくつか不足しています。

Debian/UbuntuリポジトリのBlenderはCUDAでは動作しません。ないCUDAカーネルとCycles用にパッケージ化されており、より具体的にはCyclesレンダリングはない*.cubin保存する必要があるいくつかのファイルとともにパッケージ化されています/usr/share/blender/scripts/addons/cycles/lib

CUDAカーネルなしのサイクル

Blender は Debian/Ubuntu リポジトリからインストールされました。

$ ls /usr/share/blender/scripts/addons/cycles/lib
ls: cannot access '/usr/share/blender/scripts/addons/cycles/lib': No such file or directory

CUDAカーネルを使用したサイクル

$ ls /usr/share/blender/scripts/addons/cycles/lib

ilter_sm_30.cubin  filter_sm_52.cubin  filter_sm_75.cubin  kernel_sm_37.cubin  kernel_sm_61.cubin
filter_sm_35.cubin  filter_sm_60.cubin  kernel_optix.ptx    kernel_sm_50.cubin  kernel_sm_70.cubin
filter_sm_37.cubin  filter_sm_61.cubin  kernel_sm_30.cubin  kernel_sm_52.cubin  kernel_sm_75.cubin
filter_sm_50.cubin  filter_sm_70.cubin  kernel_sm_35.cubin  kernel_sm_60.cubin

まとめ

これらの*.cubinファイルは、Cycles の CUDA/GPU レンダリングが機能するために不可欠です。しかし、リポジトリには存在しません。

インストールしても、nvidia-cuda-toolkitCycles CUDA カーネルがインストールされないため、Blender で CUDA/GPU レンダリング機能が有効になりません。 を完全にインストールする必要はありません。Cycles nvidia-cuda-toolkitCUDA libcuda1/GPU レンダリングが機能するには十分です。

もちろん、NVIDIA 独自のドライバーが必要です。

簡単な回避策

NVIDIAドライバはすでにインストールされていると思います。これが何を意味するのか分からない場合は、こちらを参照してください。素晴らしい AskUbuntu の回答

Blenderをダウンロードするには公式ウェブサイトダウンロードした tarball から CUDA Cycles カーネルを抽出します/usr/share/blender/scripts/addons/cycles/lib

注記:現在の Blender LTS バージョンは 2.83 です。他のバージョンの Blender を使用している場合は、それに応じて以下の Blender バージョンを変更してください。

Debianでは、apt install libcuda1インストール後に自動的にインストールされなかった場合は、nvidia-driver

$ sudo tar -C /usr/share/blender/scripts/addons/cycles/ \
-xvf blender-2.83.5-linux64.tar.xz \
blender-2.83.5-linux64/2.83/scripts/addons/cycles/lib/ \
--strip-components=5

Blender を再起動すると、CUDA が有効になった Cycles が動作するはずです。

より困難な回避策

Cycles CUDAカーネルを自分でコンパイルすることができます。ブレンダーウィキ詳細については。

関連情報