GPU Server

Prev Next

Classic環境で利用できます。

NAVERクラウドプラットフォームコンソールで GPUサーバを作成して管理する方法を説明します。

参考
  • 予期せぬサーバ障害または予定された変更タスクなどの際に、中断せずにサービスを継続する保障ができるよう、サーバは基本的にゾーン間の冗長化構成をお勧めします。Load Balancer の概要を参照して冗長化設定を行います。
  • NAVERクラウドプラットフォームでは、メモリ、CPU、電源供給などの物理サーバの障害に備えるため、High Availability(HA)構造を提供しています。HAは、ハードウェアで発生した障害が Virtual Machine(VM)サーバに拡大されることを防ぐためのポリシーで、ホストサーバに障害が発生した場合、自動的にホストサーバの中にある VMサーバを安定した他のホストサーバに移す Live Migrationをサポートします。ただし、Live Migrationを行えないエラーが発生した場合、VMサーバは再起動します。VMサーバ1台でサービスを運用する場合、VMサーバの再起動により障害が発生し得るため、障害の発生頻度を減らすために上記のように VMサーバを冗長化することをお勧めします。

サーバ情報確認

GPUサーバ情報を確認する方法は、一般サーバ情報を確認する方法と同じです。詳細は、サーバ情報確認をご参照ください。

注意

GPUサーバは、サーバ停止中も全体サーバ料金が発生します。

サーバ作成

GPUサーバはコンソールの Services > Compute > Server メニューから作成できます。詳しい作成方法は、サーバ作成をご参照ください。

参考
  • GPUサーバは企業会員に限り、最大5台まで作成できます。さらに多くの GPUサーバが必要な場合や GPUサーバ作成が必要な個人会員の場合は、FAQを参照してカスタマーサポートまでお問い合わせください。
  • GPUサーバは、Private Subnetを利用できません。

サーバ管理

GPUサーバ管理と設定変更方法は、一般サーバ管理と設定変更方法と同じです。詳細は、サーバ管理をご参照ください。

参考
  • GPUサーバは、同じタイプのサーバにのみスペックを変更できます。
  • GPUサーバを作成した後、GPUを削除して一般サーバに移行できません。一般サーバに変更するには、サーバイメージを作成した後、サーバイメージを使用して一般サーバを新たに作成します。
  • 一般サーバで作成したサーバイメージを使用して GPUサーバを作成できます。

GPUドライバ/CUDAの再インストールとアップデート

GPUサーバ使用中に以下のような場合にサーバの GPUドライバおよび CUDAを再インストールできます。

  • OSカーネルバージョンが変更(アップデート)され、現 GPUドライバと互換に失敗した場合: GPUドライバのみ再インストールします。
  • 使用中の旧バージョンの GPUドライバを NAVERクラウドプラットフォームで提供している最新ドライバにアップグレードする場合
  • ユーザーが希望する任意のドライババージョンにアップグレードが必要な場合
参考
  • NAVERクラウドプラットフォームが基本インストールにて提供するバージョン以外のドライバインストール後に発生する問題に対しては、公式サポートを受けることが難しい場合があります。
  • NAVERクラウドプラットフォームで提供しているドライバより下位バージョンでの再インストールはお勧めしません。
  • NAVERクラウドプラットフォームが基本インストールにて提供するドライババージョンは、次の通りです(Windows Server 2016の場合、NVIDIAのサポート終了により R525バージョンで提供されます)。
Linux Windows Server 2019 Windows Server 2016
GPU Driver 535.161.08 537.13 527.4
CUDA 12.2 12.2 12.0
cuDNN 8.9.7 8.9.7 8.8.0

使用中の OSに応じて次の案内をご参照ください。

GPUドライバの再インストール(Linux)

NAVERクラウドプラットフォームが提供するバージョンのドライバは、スクリプトにて再インストールできます。
別のバージョンを使用する場合は、手動再インストール手順に従ってください。

スクリプトによる再インストール

スクリプトにて GPUドライバを再インストールする方法は、次の通りです。

  1. wget http://init.ncloud.com/gpu/ncp_gpu_reinstall.shコマンドを入力してスクリプトファイルをダウンロードします。
  2. ./ncp_gpu_reinstall.shコマンドを入力して既存の GPUドライバを削除します。
  3. サーバを再起動します。
  4. ./ncp_gpu_reinstall.shコマンドを再入力して GPUドライバを再インストールします。

手動再インストール

スクリプトによる再インストールに失敗したり、GPUドライバのバージョンを変更してインストールする方法は、次の通りです。

  1. 再インストールまたはアップグレードするバージョンのドライバファイルをダウンロードします。

  2. 次のコマンドを入力して既存の GPUドライバを削除します。

    • 例) NAVERクラウドプラットフォームで基本提供する 535.161.08バージョン
    # ./NVIDIA-Linux-x86_64-535.161.08.run -s
    Verifying archive integrity... OK
    Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64    535.161.08..........................................................................................................
    
  3. サーバを再起動します。

  4. 次のコマンドを入力して新規の GPUドライバをインストールします。

    # ./NVIDIA-Linux-x86_64-535.161.08.run -a --ui=none --no-questions --accept-license
    Verifying archive integrity... OK
    Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 535.161.08............................................................................................................................................................
    
    Welcome to the NVIDIA Software Installer for Unix/Linux
    
    (省略)
    
    Installation of the kernel module for the NVIDIA Accelerated Graphics Driver for Linux-x86_64 (version 535.161.08) is now complete.
    
  5. サーバを再起動します。

  6. nvidia-smiコマンドで入力して正常にインストールされたドライバのバージョンと、認識された GPUカードモデルと数を確認します。

CUDAの再インストール(Linux)

CUDAは cuDNNも一緒に再インストールしてから正常に動作します。インストールする方法は、次の通りです。

  1. CUDA Toolkitダウンロードウェブサイトにアクセスします。

  2. インストールしたいバージョンの CUDA Runtimeインストールファイルを選択し、ダウンロードリンクを読み取ります。

    • インストールタイプは OSと依存関係のない runfile (local)を選択します。
  3. 既存 CUDAパスのシンボリックリンクを確認し、既存バージョンの実際のディレクトリパスを削除します。

    • 既存の CUDA Toolkitと cuDNNが削除されます。
    # ll /usr/local/cuda
    # lrwxrwxrwx 1 root root 21 Apr 16 15:42 /usr/local/cuda -> /usr/local/cuda-12.2/
    # rm -rf /usr/local/cuda-12.2
    
  4. 次のコマンドを入力して CUDA Toolkitを再インストールします。

    • 例) NAVERクラウドプラットフォームで基本提供する12.2バージョン
    # ./cuda_12.2.2_535.104.05_linux.run --toolkit --toolkitpath=/usr/local/cuda-12.2 --samples --samplespath=/usr/local/cuda-12.2/samples --silent
    
  5. 再インストールされた CUDAのバージョンを確認します。

    # nvcc --version
    
  6. cuDNNダウンロードウェブサイトにアクセスし、ダウンロードリンクを読み取ります。

  7. 読み取ったリンクを介して cuDNNをダウンロードします。

  8. cuDNNは、別途のインストール管理者なく、CUDAがインストールされたディレクトリに圧縮を展開する形でインストールされます。次を参照してインストールしてください。

    • 例) NAVERクラウドプラットフォームで基本提供する 8.9.7バージョン
    # cd /root
    # tar -xvf cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz
    # mv cudnn-linux-x86_64-8.9.7.29_cuda12-archive cuda
    # cp cuda/include/cudnn* /usr/local/cuda/include
    # cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
    # chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
    
  9. インストールされた cuDNNのバージョンを確認します。

    • cuDNN 8.x基準の確認方法
    # cat /usr/local/cuda/include/cudnn_version.h | grep -A2 MAJOR
    #define CUDNN_MAJOR 8
    #define CUDNN_MINOR 9
    #define CUDNN_PATCHLEVEL 7
    

GPUドライバの再インストール(Windows)

GPUドライバはスクリプトを実行して自動で再インストールできます。
もし自動再インストールに失敗した場合、手動での再インストールもできます。

自動再インストール

スクリプトファイルをダウンロードおよび実行して GPUドライバを自動で再インストールする方法は、次の通りです。

  1. 次のコマンドを入力してスクリプトファイルをダウンロードします。
    Start-BitsTransfer -Source "http://init.ncloud.com/win_gpu/install_gpu.exe" -Destination "c:\install_gpu.exe"
    
  2. install_gpu.exeファイルを実行します。
    • Nvidia GPU driverインストールのポップアップが表示され、インストールの時間は約10~15分かかります。
  3. インストール完了のポップアップが表示されたら、サーバを再起動します。
  4. run - devmgmt.mscコマンドを入力してデバイス管理者コンソールを開きます。
  5. デバイス管理者コンソールで Display Adapters 下位の NVIDIAグラフィックボードをダブルクリックします。
  6. プロパティポップアップの [Driver] タブでドライバのバージョンを確認します。
  7. cmdウィンドウを開き、cd C:\Program Files\NVIDIA Corporation\NVSMIを入力して位置を移動した後、nvidia-smiを入力します。
    • 認識されたグラフィックボードデバイスを確認できます。

手動再インストール

スクリプトを利用した自動再インストールができない場合、手動で GPUドライバを再インストールする方法は、次の通りです。

  1. GPUドライバのダウンロードウェブサイトで再インストールまたはアップグレードするバージョンのドライバファイルをダウンロードします。
  2. ダウンロードした GPUドライバの exeファイルを実行してインストールします。
    • インストールポップアップの案内に従って行います。
    • ソフトウェアサービス利用約款に同意してから使用できます。
    • インストールオプションは Express を選択します。
  3. サーバを再起動します。
  4. run - devmgmt.mscコマンドを入力してデバイス管理者コンソールを開きます。
  5. デバイス管理者コンソールで Display Adapters 下位の NVIDIAグラフィックボードをダブルクリックします。
  6. プロパティポップアップの [Driver] タブでドライバのバージョンを確認します。

CUDAの再インストール(Windows)

CUDAは cuDNNも一緒に再インストールしてから正常に動作します。インストールする方法は、次の通りです。

  1. CUDA Toolkitダウンロードウェブサイトにアクセスします。

  2. プラットフォームを設定した後、リンクをクリックして exeファイルをダウンロードします。

  3. ダウンロードした CUDA exeファイルを実行してインストールします。

    • インストールポップアップの案内に従って行います。
    • ソフトウェアサービス利用約款に同意してから使用できます。
    • インストールオプションは Express を選択します。
  4. cuDNNダウンロードウェブサイトにアクセスしてログインした後、希望するバージョンの cuDNNファイルをダウンロードします。

参考

cuDNNは会員のみダウンロードできます。アカウントをお持ちでない場合、会員登録後にログインしてください。

  1. ダウンロードして zipファイルを圧縮展開し、内部の bin、include、libフォルダを CUDA 11.2.2バージョンのインストールパスにある同じ名前のフォルダに置換します。

  2. cmdウィンドウを開き、cd C:\Program Files\NVIDIA Corporation\NVSMIを入力して位置を移動した後、nvidia-smiを入力します。

    • 認識されたグラフィックボードデバイスを確認できます。
参考

nvidia-smiコマンドを実行すると出力される情報は、次の通りです。

項目 説明
Driver Version インストールされたドライバのバージョン
CUDA Version ドライバがサポートする CUDA APIバージョン
Name GPUモデル名
Temp GPUコアの温度
Perf GPUの Performance State
  • GPUの温度と電力使用量に応じて流動的に変化
Pwr:Usage/Cap 現在 GPUが使用している電力量
Memory-Usage GPUのメモリ使用量(現在の使用量/GPUメモリ容量)
Volatile GPU-Util GPU使用率
Uncorr. ECC Uncorrectable ECC(Error Correction Code)エラーの発生回数
MIG M. MIG(Multi Instance GPU) Modeステータス
  • NAVERクラウドプラットフォームで提供する P40、T4、V100 GPUは機能をサポートしない
Processes 現在 GPUを使用しているプロセス情報
  • GPU: プロセスが動作中の GPU番号
  • GI ID/CI ID: MIG(Multi-Instance GPU)機能で Sliceされた GPU Instanceおよび Compute Instanceの情報
  • PID、Process name: プロセスの IDおよび名前
  • Type: CUDA/OpenCLプロセスは C(Compute)と、DirectX/OpenGLプロセスは G(Graphics)と表示
  • GPU Memory Usage: プロセスの GPUメモリ使用量

NTKを通じた診断データの収集/伝達

Ncloud Tool Kit(NTK)を通じて GPU VMの NVIDIAデバッグログを収集して伝達できます。
デバッグログの収集と伝達プロセスは、次の通りです。

1. NTK実行
2. GPUデバックログの収集

参考

NTKに関する詳細な説明は、Ncloud Tool Kit(Linux/Windows)をご参照ください。

1. NTK実行

Linuxサーバで NTKを実行する方法は、次の通りです。

  1. cd /usr/local/etc コマンドを入力します。
    • NTKのあるパスに遷移します。
  2. tar zxvf ntk.tar.gz コマンドを入力します。
    • NTKファイルの圧縮が展開されます。
    • ntk.tar.gzファイルがないか、このファイルを最新バージョンに置き換えるには、wget -P /usr/local/etc http://init.ncloud.com/server/ntk/linux/xen/ntk.tar.gzを入力してファイルをダウンロードします。
  3. /usr/local/etc/ntk/ntkコマンドを順に入力して NTKを実行します。

2. GPUデバックログの収集

NTKで GPU関連のデバッグログを収集する方法は、次の通りです。

  1. NTKメイン画面で、E EXECUTE - << Run System Apps >>を選択します。
    gpu-server-createvpc_guide28_ko

  2. G GPU DEBUG COLLECTING - FOR LOG COLLECT >>を選択します。
    gpu-server-createvpc_guide29_ko

  3. ログ収集スクリプトを実行するために、 Yes を選択します。
    gpu-server-createvpc_guide30_ko

  4. ログ収集完了メッセージとログファイル保存パスが出力されたら、内容を確認した後に Ok を選択します。
    gpu-server-createvpc_guide31_ko

  5. NAVERクラウドのテクニカルサポートセンターへのログファイル送信有無を選択します。

  • 転送を希望する場合は Yes を選択します。ファイル送信がすぐに開始されます。送信が完了すると、成功メッセージとユーザーがログをダウンロードできる短縮 URLが表示されます。
  • 送信を希望しない場合は No を選択して終了します。
    gpu-server-createvpc_guide32_ko

作成されたログの送信

既に作成されたログファイルを NAVERクラウドのテクニカルサポートセンターに送信する方法は、次の通りです。

参考

ネットワークの不具合により NAVERクラウドのテクニカルサポートセンターにログファイルが正常に送信されない場合は、VMに保存されているログファイルを添付して転送してください。

  • ログファイルの保存パス: /usr/local/etc/ntk/logs/gpu_get_log
  1. NTKメイン画面で、V VIEW - << View & Upload Logs >>を選択します。
    gpu-server-createvpc_guide34_ko

  2. G - GPU DEBUG FILESを選択します。
    gpu-server-createvpc_guide35_ko

  3. 作成されたログファイルのリストを確認した後、NAVERクラウドのテクニカルサポートセンターに送信するログファイルを選択します。
    gpu-server-createvpc_guide36_ko

  4. Yes を選択します。

  • ファイル送信がすぐに開始されます。送信が完了すると、成功メッセージとユーザーがログをダウンロードできる短縮 URLが表示されます。
    gpu-server-createvpc_guide37_ko

GPUデバッグログファイルの種類

NTKを通じて作成される GPUログファイルは、次の通りです。

ログファイル名 使用コマンド ロール
date.log date ログ作成日時を表示
dmesg-xid.log dmesg grep -i xid xidが含まれたカーネルメッセージを表示
dmesg.log dmesg カーネルメッセージを表示
free.log free -m MB単位でメモリ使用量を表示
last.log last ログインと再起動ログを表示
ps.log ps auxf プロセスステータスを確認
top.log top -b -n 1 top(batchモードで1回)、システム情報を表示
uptime.log uptime uptime結果を表示
nvidia-bug-report.log.gz cell nvidia-bug-report.shスクリプトを実行