FedoraのDockerとBumblebee

FedoraのDockerとBumblebee

Nvidia MX150を搭載したノートパソコン(Xiaomi Notebook Pro)があります。したがって、NvidiaのOptimus技術を活用します。ディストリビューションにはFedora 28を使用します。

カボチャ

そのため、この技術を活用するためにBumblebeeをインストールしました。

optirunまたは、.dllを介してglmark2を起動できるため、正しくインストールする必要がありますprimusrun。また、cat /proc/acpi/bbswitch出力を実行してくださいON。したがって、Nvidia GPUが実際に実行されている必要があります。

ルーストアバウト

ドッカーをインストールするには、以下の指示に従いました。https://docs.docker.com/install/linux/docker-ce/fedora/#install-docker-ce

実行するdocker run hello-worldと出力すべき内容が出力されるので docker も動作します。

Nvidia-docker2

次のコマンドを使用して、Fedoraにnvidia-docker2をインストールしました。

curl -s -L https://nvidia.github.io/nvidia-docker/centos7/nvidia-docker.repo | \
  sudo tee /etc/yum.repos.d/nvidia-docker.repo
sudo dnf install nvidia-docker2
sudo pkill -SIGHUP dockerd

インストールされたNVIDIAパッケージ

どの nvidia パッケージがインストールされているかを確認するには、次のコマンドを実行します。

rpm -qa '*nvidia*'

  • 出力:akmod-nvidia-396.51-1.fc28.x86_64
  • NVIDIA-コンテナ-ランタイム-2.0.0-1.docker18.06.1.x86_64
  • Nvidia-Driver-396.51-1.fc28.x86_64
  • kmod-nvidia-4.17.9-200.fc28.x86_64-396.45-1.fc28.x86_64
  • kmod-nvidia-4.17.14-202.fc28.x86_64-396.51-1.fc28.x86_64
  • nvidia-docker2-2.0.3-1.docker18.06.1.ce.noarch
  • Nvidia-Driver-libs-396.51-1.fc28.x86_64
  • NVIDIA-コンテナ-ランタイム-フック-1.4.0-1.x86_64
  • libnvidia-container1-1.0.0-0.1.rc.2.x86_64
  • kmod-nvidia-4.17.12-200.fc28.x86_64-396.45-1.fc28.x86_64
  • libnvidia-コンテナ-ツール-1.0.0-0.1.rc.2.x86_64

テストドッカーはNvidia GPUを使用して実行されています。

残念ながら、dockerは現在Nvidia GPUで実行されていません。

optirun docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi

次のエラーが発生します。

docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:402: container init caused \"process_linux.go:385: running prestart hook 1 caused \\\"error running hook: exit status 1, stdout: , stderr: exec command: [/usr/bin/nvidia-container-cli --load-kmods configure --ldconfig=@/sbin/ldconfig --device=all --compute --utility --require=cuda>=9.0 --pid=26115 /var/lib/docker/overlay2/c00aa7855e42deee545cb07531a571538e0d051d38f45e36584a1c850dd47680/merged]\\\\nnvidia-container-cli: initialization error: driver error: failed to process request\\\\n\\\"\"": unknown.

私は何を見逃していますか?

現在、どこでエラーが発生したかわかりません。バージョンの問題かもしれないと思いますCUDA

答え1

私が見つけた唯一の「修正」(追加の回避策)は、最初にプライムセレクトを介してnvidiaカードがロード/選択されていることを確認することです。

sudo prime-select nvidia

これがカボチャを使う目的を崩すような感じ

関連情報