デル eカタログサイト | デル製品 販売支援サイト
情報ガイドステーションメニュー
 |  NVIDIA GPUとコンテナでAI環境作ってみた

   
       
   
       
   
    





こんにちは。Dell EMCでBigData / AIソリューションを担当しているエンジニアの山口です。案件支援やAIソリューションのデモ環境構築・検証などをしています。

2月の中旬に発表させていただきましたAI Experience Zoneも多々苦労しながら私が構築したのですが、いくつかのソリューションはコンテナ上で動かしています。

AI関連の環境を構築するにはコンテナは必須ではないのですが、異なるバージョンのソフトやライブラリを簡単に試すことができるので、私もよく利用しています。

今回はUbuntuでのGPU認識からDockerのインストールまでの手順をご紹介します。



利用した機材は、GPUを搭載したハイエンドワークステーション、Precision7920です。(Precisionのパンフレットはこちら)  
※私も自宅用に欲しい。。。ここで紹介したらプレゼントで届いたりしないかな。。。

スペックは以下に記載しますが、GPUはNVIDIAのQuadroで検証を行いましたが、Quadro RTX6000でも同様の手順で認識することを確認しています。



Model Precision 7920 Tower
CPU Intel Xeon Gold 5122 3.6GHz, 4Core x2
Memory 64GB(4x16GB)
Disk 512GB SATA SSD x2
GPU NVIDIA Quadro P5000 16GB
OS Ubuntu 18.04


若干の操作画面表示の違いはあるもののPowerEdgeにTeslaのV100やT4を搭載しても同様の手順になります。

Ubuntuは通常のOSインストール後にネットワークの設定を行い、インターネットに接続できる状態になっていればOKです。



◆Nvidiaドライバのインストール

Ubuntuをインストール後はNvidiaのGPUはハードウェア的には認識していますが、ドライバがインストールされておらず利用はできないので、NVIDIAドライバのインストールを行います。

Ubuntuでドライバのインストール方法は2通りあり、GUIかCLIでインストールすることができます。今回はCLIでインストールを行いますが、参考にGUIでインストールする場合は、下のスクリーンショットにある「追加のドライバ」タブからインストールを行うことができます。



コマンドでインストール行う場合はubuntu-driversコマンドを実行します。



はい。これだけです。
昔のLinuxに比べて簡単にドライバのインストールができるようになっています。

ドライバインストールが完了した後はNVIDIA GPUが認識していることを確認します。
nvidia-smiコマンドを実行すると、赤枠の部分にインストールしたドライバのバージョン「430.64」と「Quadro P5000」が表示され認識されていることが確認できます。



注目していただきたいのは黄色枠で囲った部分で、ubuntu-driversコマンドでCUDAも同時にインストールされています。 ※ここでまた最近のLinuxは便利になったことを実感します。。。



◆Dockerのインストール

Dockerは公式の手順にそってコマンドを実行すれば問題なくインストールすることができます。(公式インストール手順はこちら)


1.前提となるソフトウェア類のインストール



2.GPGキーのインストール



3.フィンガープリントの確認

赤枠の内が「9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88」であることを確認します。



4.レポジトリの追加



5.パッケージインデックのアップデート

最新Dockerをインストールするためにインデックスをアップデートします。



6.インストールするDockerのバージョン確認


Dockerはバージョン19.03からGPU対応したため、これまでのnvidia-dockerは不要となりました。

7.Dockerのインストール



8.動作確認

バージョン19.03以降のDockerを導入した場合、次のコマンドを実行してnvidia-smiの実行結果が表示されればGPU対応Docker環境の構築が完了です。



今回はAIを始めるためにUbuntuでGPUの認識とGPU対応コンテナ環境の構築手順をご紹介しました。
次回は、今回構築した環境にDeep Learningで使われるJupyterLabの導入方法をご紹介します。


Dell Technologies
ソリューション本部
シニアシステムエンジニア
山口 泰亜



   
       
   
       
   
    

 

タグ: , , , , , , ,