ディープラーニング、AI、OpenGL、Direct3D、クラウドゲーミングなどのワークロードでハイパフォーマンスコンピューティングやグラフィックスアクセラレーションを実現するには、GPU がその性能を最大限に発揮し、スムーズなグラフィックスレンダリングを提供できるよう、Tesla ドライバーがインストールされている必要があります。Linux の GPU コンピューティング最適化インスタンスを作成する際に Tesla ドライバーをインストールしなかった場合は、後で手動でインストールする必要があります。このトピックでは、Linux の GPU コンピューティング最適化インスタンスに Tesla ドライバーを手動でインストールする方法について説明します。
手順
このトピックは、Linux のすべての GPU コンピューティング最適化インスタンスに適用されます。詳細については、「GPU コンピューティング最適化インスタンス (gn/ebm/scc シリーズ)」をご参照ください。インスタンスのオペレーティングシステムと互換性のある Tesla ドライバーのみをインストールできます。たとえば、Linux の GPU インスタンスは、Linux 用の Tesla ドライバーのみをサポートします。
手順1:NVIDIA Tesla ドライバーのダウンロード
NVIDIA ドライバーダウンロードページに移動します。
説明NVIDIA ドライバーのインストールと設定の詳細については、「NVIDIA Driver Installation Quickstart Guide」をご参照ください。
検索条件を設定し、[Search] をクリックします。
検索条件を次の表に示します。
条件
説明
例
製品タイプ
製品シリーズ
製品ファミリー
インスタンス内の GPU に基づいて、製品タイプ、製品シリーズ、製品ファミリーを選択します。
説明インスタンス ID、インスタンスタイプ、オペレーティングシステムなど、GPU インスタンスの詳細を表示する方法については、「インスタンス情報の表示」をご参照ください。
Data Center / Tesla
A-Series
NVIDIA A10
オペレーティングシステム
インスタンスが使用するイメージに基づいて、Linux オペレーティングシステムのバージョンを選択します。
Linux 64-bit
CUDA Toolkit
CUDA Toolkit のバージョンを選択します。
11.4
言語
ドライバーの言語を選択します。
日本語
検索結果ページで、[Beta, Older Drivers, and More] をクリックします。
ダウンロードするドライバーを見つけ、表示 をクリックします。
たとえば、ドライバーバージョン 470.161.03、CUDA Toolkit バージョン 11.4 の Data Center Driver for Linux x64 を選択します。
ドライバーの詳細ページで、ダウンロード を右クリックし、[リンクのアドレスをコピー] を選択します。
Linux GPU インスタンスに接続します。
詳細については、「パスワードまたはキーを使用して Linux インスタンスに接続する」をご参照ください。
次のコマンドを実行して、ドライバーインストールパッケージをダウンロードします。
コマンド例のドライバーダウンロード URL は、手順5でコピーしたリンクです。
wget https://us.download.nvidia.com/tesla/470.161.03/NVIDIA-Linux-x86_64-470.161.03.run
手順2:NVIDIA Tesla ドライバーのインストール
Tesla ドライバーのインストール方法は、オペレーティングシステムによって異なります。
CentOS
次のコマンドを実行して、kernel-devel および kernel-headers パッケージがインストールされているかどうかを確認します。
sudo rpm -qa | grep $(uname -r)出力に kernel-devel および kernel-headers パッケージのバージョン情報が含まれている場合、パッケージはすでにインストールされています。
kernel-3.10.0-1062.18.1.el7.x86_64 kernel-devel-3.10.0-1062.18.1.el7.x86_64 kernel-headers-3.10.0-1062.18.1.el7.x86_64出力に kernel-devel-* および kernel-headers-* が見つからない場合は、カーネルバージョンに一致する kernel-devel および kernel-headers パッケージをダウンロードしてインストールします。
重要kernel-devel のバージョンがカーネルのバージョンと一致しない場合、ドライバーを RPM でインストールする際にドライバーのコンパイルが失敗します。そのため、出力内の kernel-* のバージョン番号を確認し、一致する kernel-devel バージョンをダウンロードする必要があります。出力例では、カーネルバージョンは 3.10.0-1062.18.1.el7.x86_64 です。
権限を付与し、Tesla ドライバーをインストールします。
Linux 64 ビットオペレーティングシステムの場合、NVIDIA-Linux-x86_64-xxxx.run のような .run 形式の Tesla ドライバーを使用することを推奨します。次のコマンドを実行して権限を付与し、Tesla ドライバーをインストールします。
説明.deb や .rpm などの別の形式の Tesla ドライバーを使用している場合は、「NVIDIA CUDA Installation Guide for Linux」のインストール手順をご参照ください。
sudo chmod +x NVIDIA-Linux-x86_64-xxxx.runsudo sh NVIDIA-Linux-x86_64-xxxx.run次のコマンドを実行して、インストールを確認します。
nvidia-smi次のような出力が表示された場合、Tesla ドライバーはインストールされています。
[ecs-use xxx 9sgg1tZ ~]$ nvidia-smi Tue Sep 10 13:58:31 2024 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 470.161.03 Driver Version: 470.161.03 CUDA Version: 11.4 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 NVIDIA A10 Off | 00000000:00:07.0 Off | 0 | | 0% 34C P0 62W / 150W | 0MiB / 22731MiB | 0% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+(オプション) NVIDIA Persistence Daemon を使用して Persistence Mode を有効にします。
Tesla ドライバーがインストールされると、デフォルトで Persistence Mode は無効 (
off) になっています。Persistence Mode を有効にすると、Tesla ドライバーはより安定して動作します。サービスの安定性を確保するために、NVIDIA Persistence Daemon を使用して Persistence Mode を有効にすることをお勧めします。詳細については、「Persistence Daemon」をご参照ください。説明Persistence Modeは、クライアントが接続されていない場合でもターゲット GPU を初期化状態に保つための、ユーザー設定が可能なドライバープロパティです。
nvidia-smi -pm 1を使用して Persistence Mode を有効にすると、インスタンスの再起動後に設定が失われるなどの問題が発生します。詳細については、「GPU インスタンスの再起動後、Persistence Mode が持続せず、ECC ステータスや MIG 機能の設定も失敗する」をご参照ください。NVIDIA Persistence Daemon を使用して Persistence Mode を有効にすることを推奨します。
次のコマンドを実行して、NVIDIA Persistence Daemon を起動します。
sudo nvidia-persistenced --user username # username をお使いのユーザー名に置き換えます。次のコマンドを実行して、Persistence Mode のステータスを確認します。
nvidia-smi返されたメッセージは、Persistence-M が有効 (
on) な状態であることを示しています。[ecs-usexxx2q9sgg1tZ ~]$ sudo nvidia-persistenced --user ecs-user [ecs-usexxx2q9sgg1tZ ~]$ nvidia-smi Tue Sep 10 14:02:16 2024 +-------------------------------+----------------------+----------------------+ | NVIDIA-SMI 470.161.03 Driver Version: 470.161.03 CUDA Version: 11.4 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 NVIDIA A10 On | 00000000:00:07.0 Off | 0 | | 0% 33C P8 8W / 150W | 0MiB / 22731MiB | 0% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+
(オプション) システムの再起動時に Persistence Mode を有効にするように設定します。
システムが再起動した場合、永続モードの有効な (
on) 状態は失われます。永続モードを再度有効にするには、以下の操作を実行できます。Tesla ドライバーのインストールパッケージにより、サンプルスクリプトやインストーラースクリプトなどの NVIDIA のインストールスクリプトが
/usr/share/doc/NVIDIA_GLX-1.0/samples/nvidia-persistenced-init.tar.bz2にインストールされます。次のコマンドを実行して、NVIDIA スクリプトを解凍してインストールします。
cd /usr/share/doc/NVIDIA_GLX-1.0/samples/ sudo tar xf nvidia-persistenced-init.tar.bz2 cd nvidia-persistenced-init sudo sh install.sh次のコマンドを実行して、NVIDIA Persistence Daemon が実行されているかどうかを確認します。
sudo systemctl status nvidia-persistenced次のような出力が表示された場合、NVIDIA Persistence Daemon は実行されています。
[ecs-user@xxx nvidia-persistenced-init]$ sudo systemctl status nvidia-persistenced ● nvidia-persistenced.service - NVIDIA Persistence Daemon Loaded: loaded (/usr/lib/systemd/system/nvidia-persistenced.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2024-09-10 14:13:20 CST; 40s ago Process: 13882 ExecStart=/usr/bin/nvidia-persistenced --user nvidia-persistenced (code=exited, status=0/SUCCESS) Main PID: 13883 (nvidia-persiste) Tasks: 1 (limit: 383833) Memory: 196.0K CGroup: /system.slice/nvidia-persistenced.service └─13883 /usr/bin/nvidia-persistenced --user nvidia-persistenced Sep 10 14:13:19 iZbp13orbqqx6m2q9sgg1tZ systemd[1]: Starting NVIDIA Persistence Daemon... Sep 10 14:13:19 iZbp13orbqqx6m2q9sgg1tZ nvidia-persistenced[13883]: Started (13883) Sep 10 14:13:20 iZbp13orbqqx6m2q9sgg1tZ systemd[1]: Started NVIDIA Persistence Daemon.説明お使いのオペレーティングシステムに合わせて NVIDIA Persistence Daemon のインストールスクリプトを調整し、正しく動作するようにできます。
次のコマンドを実行して、永続化モードが
onに設定されていることを確認します。nvidia-smi(オプション) 次のコマンドを実行して、NVIDIA Persistence Daemon を停止します。
NVIDIA Persistence Daemon が不要になった場合は、無効にできます。
sudo systemctl stop nvidia-persistenced sudo systemctl disable nvidia-persistenced
(該当する場合のみ必須) インスタンスが ebmgn8v、ebmgn7、または ebmgn7e インスタンスファミリーに属している場合は、ドライバーバージョンに一致する nvidia-fabricmanager サービスをインストールします。
重要ebmgn8v、ebmgn7、または ebmgn7e インスタンスファミリーに属するインスタンスでは、ドライバーバージョンと一致する nvidia-fabricmanager サービスがインストールされていない場合、GPU インスタンスを使用できません。
GPU インスタンスが ebmgn8v、ebmgn7、または ebmgn7e インスタンスファミリーに属していない場合は、この手順をスキップします。
nvidia-fabricmanager サービスをインストールします。
nvidia-fabricmanager サービスは、ソースコードまたはインストールパッケージからインストールできます。次のサンプルコマンドでは、オペレーティングシステムとして CentOS 7.x および CentOS 8.x を、ドライバーバージョンとして 460.91.03 を例として使用しています。コマンド内の
driver_versionを、手順1:NVIDIA Tesla ドライバーのダウンロードでダウンロードしたドライバーのバージョン番号に置き換えてください。[ソースコード]
[インストールパッケージ]
次のコマンドを実行して、nvidia-fabricmanager サービスを開始します。
sudo systemctl enable nvidia-fabricmanager sudo systemctl start nvidia-fabricmanager次のコマンドを実行して、nvidia-fabricmanager サービスのステータスを確認します。
systemctl status nvidia-fabricmanager次のような出力が表示されたら、nvidia-fabricmanager サービスは実行中です。
nvidia-fabricmanager.service - NVIDIA fabric manager service Loaded: loaded (/lib/systemd/system/nvidia-fabricmanager.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-09-13 19:14:45 CST; 1 weeks 1 days ago Process: 1928 ExecStart=/usr/bin/nv-fabricmanager -c /usr/share/nvidia/nvswitch/fabricmanager.cfg (code=exited, status=0/SUCCESS) Main PID: 2140 (nv-fabricmanage) Tasks: 18 (limit: 19660) CGroup: /system.slice/nvidia-fabricmanager.service └─2140 /usr/bin/nv-fabricmanager -c /usr/share/nvidia/nvswitch/fabricmanager.cfg Sep 13 19:14:26 xxx systemd[1]: Starting NVIDIA fabric manager service... Sep 13 19:14:45 xxx nv-fabricmanager[2140]: Successfully configured all the available GPUs and NVSwitches. Sep 13 19:14:45 xxx systemd[1]: Started NVIDIA fabric manager service.
Ubuntu など
権限を付与し、Tesla ドライバーをインストールします。
Linux 64 ビットオペレーティングシステムの場合、NVIDIA-Linux-x86_64-xxxx.run のような .run 形式の Tesla ドライバーを使用することを推奨します。次のコマンドを実行して権限を付与し、Tesla ドライバーをインストールします。
説明.deb や .rpm などの別の形式の Tesla ドライバーを使用している場合は、「NVIDIA CUDA Installation Guide for Linux」のインストール手順をご参照ください。
sudo chmod +x NVIDIA-Linux-x86_64-xxxx.runsudo sh NVIDIA-Linux-x86_64-xxxx.run次のコマンドを実行して、インストールを確認します。
nvidia-smi次のような出力が表示された場合、Tesla ドライバーはインストールされています。
[ecs-use xxx 9sgg1tZ ~]$ nvidia-smi Tue Sep 10 13:58:31 2024 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 470.161.03 Driver Version: 470.161.03 CUDA Version: 11.4 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 NVIDIA A10 Off | 00000000:00:07.0 Off | 0 | | 0% 34C P0 62W / 150W | 0MiB / 22731MiB | 0% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+(オプション) NVIDIA Persistence Daemon を使用して Persistence Mode を有効にします。
Tesla ドライバーがインストールされると、デフォルトで Persistence Mode は無効 (
off) になっています。Persistence Mode を有効にすると、Tesla ドライバーはより安定して動作します。サービスの安定性を確保するために、NVIDIA Persistence Daemon を使用して Persistence Mode を有効にすることをお勧めします。詳細については、「Persistence Daemon」をご参照ください。説明Persistence Modeは、クライアントが接続されていない場合でもターゲット GPU を初期化状態に保つための、ユーザー設定が可能なドライバープロパティです。
nvidia-smi -pm 1を使用して Persistence Mode を有効にすると、インスタンスの再起動後に設定が失われるなどの問題が発生します。詳細については、「GPU インスタンスの再起動後、Persistence Mode が持続せず、ECC ステータスや MIG 機能の設定も失敗する」をご参照ください。NVIDIA Persistence Daemon を使用して Persistence Mode を有効にすることを推奨します。
次のコマンドを実行して、NVIDIA Persistence Daemon を起動します。
sudo nvidia-persistenced --user username # username をお使いのユーザー名に置き換えます。次のコマンドを実行して、Persistence Mode のステータスを確認します。
nvidia-smi返されたメッセージは、Persistence-M が有効 (
on) な状態であることを示しています。[ecs-usexxx2q9sgg1tZ ~]$ sudo nvidia-persistenced --user ecs-user [ecs-usexxx2q9sgg1tZ ~]$ nvidia-smi Tue Sep 10 14:02:16 2024 +-------------------------------+----------------------+----------------------+ | NVIDIA-SMI 470.161.03 Driver Version: 470.161.03 CUDA Version: 11.4 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 NVIDIA A10 On | 00000000:00:07.0 Off | 0 | | 0% 33C P8 8W / 150W | 0MiB / 22731MiB | 0% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+
(オプション) システムの再起動時に Persistence Mode を有効にするように設定します。
システムが再起動した場合、永続モードの有効な (
on) 状態は失われます。永続モードを再度有効にするには、以下の操作を実行できます。Tesla ドライバーのインストールパッケージにより、サンプルスクリプトやインストーラースクリプトなどの NVIDIA のインストールスクリプトが
/usr/share/doc/NVIDIA_GLX-1.0/samples/nvidia-persistenced-init.tar.bz2にインストールされます。次のコマンドを実行して、NVIDIA スクリプトを解凍してインストールします。
cd /usr/share/doc/NVIDIA_GLX-1.0/samples/ sudo tar xf nvidia-persistenced-init.tar.bz2 cd nvidia-persistenced-init sudo sh install.sh次のコマンドを実行して、NVIDIA Persistence Daemon が実行されているかどうかを確認します。
sudo systemctl status nvidia-persistenced次のような出力が表示された場合、NVIDIA Persistence Daemon は実行されています。
[ecs-user@xxx nvidia-persistenced-init]$ sudo systemctl status nvidia-persistenced ● nvidia-persistenced.service - NVIDIA Persistence Daemon Loaded: loaded (/usr/lib/systemd/system/nvidia-persistenced.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2024-09-10 14:13:20 CST; 40s ago Process: 13882 ExecStart=/usr/bin/nvidia-persistenced --user nvidia-persistenced (code=exited, status=0/SUCCESS) Main PID: 13883 (nvidia-persiste) Tasks: 1 (limit: 383833) Memory: 196.0K CGroup: /system.slice/nvidia-persistenced.service └─13883 /usr/bin/nvidia-persistenced --user nvidia-persistenced Sep 10 14:13:19 iZbp13orbqqx6m2q9sgg1tZ systemd[1]: Starting NVIDIA Persistence Daemon... Sep 10 14:13:19 iZbp13orbqqx6m2q9sgg1tZ nvidia-persistenced[13883]: Started (13883) Sep 10 14:13:20 iZbp13orbqqx6m2q9sgg1tZ systemd[1]: Started NVIDIA Persistence Daemon.説明お使いのオペレーティングシステムに合わせて NVIDIA Persistence Daemon のインストールスクリプトを調整し、正しく動作するようにできます。
次のコマンドを実行して、永続化モードが
onに設定されていることを確認します。nvidia-smi(オプション) 次のコマンドを実行して、NVIDIA Persistence Daemon を停止します。
NVIDIA Persistence Daemon が不要になった場合は、無効にできます。
sudo systemctl stop nvidia-persistenced sudo systemctl disable nvidia-persistenced
(該当する場合のみ必須) インスタンスが ebmgn8v、ebmgn7、または ebmgn7e インスタンスファミリーに属している場合は、ドライバーバージョンに一致する nvidia-fabricmanager サービスをインストールします。
重要ebmgn8v、ebmgn7、または ebmgn7e インスタンスファミリーに属するインスタンスでは、ドライバーバージョンと一致する nvidia-fabricmanager サービスがインストールされていない場合、GPU インスタンスを使用できません。
GPU インスタンスが ebmgn8v、ebmgn7、または ebmgn7e インスタンスファミリーに属していない場合は、この手順をスキップします。
nvidia-fabricmanager サービスをインストールします。
nvidia-fabricmanager サービスは、ソースコードまたはインストールパッケージからインストールできます。次のコマンド例は、Ubuntu 16.04、Ubuntu 18.04、Ubuntu 20.04、Ubuntu 22.04、または Ubuntu 24.04 オペレーティングシステム用です。コマンド内の
driver_versionを、手順1:NVIDIA Tesla ドライバーのダウンロードでダウンロードしたドライバーのバージョンに置き換えてください。重要Ubuntu 22.04 では、nvidia-fabricmanager サービスには 515.48.07 より後のバージョンの Tesla ドライバーが必要です。Ubuntu 22.04 の次の例では、ドライバーバージョン 535.154.05 を使用しています。
Ubuntu 24.04 では、nvidia-fabricmanager サービスには 550.90.07 より後のバージョンの Tesla ドライバーが必要です。Ubuntu 24.04 の次の例では、ドライバーバージョン 570.133.20 を使用しています。
[ソースコード]
[インストールパッケージ]
次のコマンドを実行して、nvidia-fabricmanager サービスを開始します。
sudo systemctl enable nvidia-fabricmanager sudo systemctl start nvidia-fabricmanager次のコマンドを実行して、nvidia-fabricmanager サービスのステータスを確認します。
systemctl status nvidia-fabricmanager次のような出力が表示されたら、nvidia-fabricmanager サービスは実行中です。
nvidia-fabricmanager.service - NVIDIA fabric manager service Loaded: loaded (/lib/systemd/system/nvidia-fabricmanager.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-09-13 19:14:45 CST; 1 weeks 1 days ago Process: 1928 ExecStart=/usr/bin/nv-fabricmanager -c /usr/share/nvidia/nvswitch/fabricmanager.cfg (code=exited, status=0/SUCCESS) Main PID: 2140 (nv-fabricmanage) Tasks: 18 (limit: 19660) CGroup: /system.slice/nvidia-fabricmanager.service └─2140 /usr/bin/nv-fabricmanager -c /usr/share/nvidia/nvswitch/fabricmanager.cfg Sep 13 19:14:26 xxx systemd[1]: Starting NVIDIA fabric manager service... Sep 13 19:14:45 xxx nv-fabricmanager[2140]: Successfully configured all the available GPUs and NVSwitches. Sep 13 19:14:45 xxx systemd[1]: Started NVIDIA fabric manager service.説明GPU が正しく動作するためには、nvidia-fabricmanager パッケージのバージョンが Tesla ドライバーのバージョンと一致している必要があります。Ubuntu で、インストールパッケージを使用して nvidia-fabricmanager サービスをインストールした場合、
apt-dailyサービスが nvidia-fabricmanager パッケージを自動的に更新する可能性があります。これにより、Tesla ドライバーとのバージョン不一致が発生し、nvidia-fabricmanager サービスが起動しなくなり、GPU が使用できなくなることがあります。この問題を解決するには、「nvidia-fabricmanager のバージョンが Tesla ドライバーのバージョンと異なるため、GPU が期待どおりに動作しない」をご参照ください。
関連ドキュメント
Windows の GPU コンピューティング最適化インスタンスを購入した場合、ディープラーニングや AI などの汎用コンピューティングワークロードでインスタンスを使用するには、Tesla ドライバーをインストールする必要があります。詳細については、「GPU コンピューティング最適化インスタンスへの Tesla ドライバーの手動インストール (Windows)」をご参照ください。
GPU インスタンスの作成時に Tesla ドライバーをインストールする場合は、「GPU インスタンス作成時の Tesla ドライバーの自動インストールまたはロード」をご参照ください。
何らかの理由で現在の Tesla ドライバーをアンインストールする必要がある場合は、「Tesla ドライバーのアンインストール」をご参照ください。
インストールしたドライバーのバージョンがワークロードに適していない場合や、誤ったドライバータイプやバージョンをインストールしたために GPU インスタンスが使用できなくなった場合は、現在のドライバーをアンインストールして新しいものをインストールするか、直接ドライバーをアップグレードできます。ドライバーのアップグレード方法については、「NVIDIA ドライバーのアップグレード」をご参照ください。