NVIDIA のディープラーニングエコシステムとして、NGC (NVIDIA GPU CLOUD) を使用すると、開発者はディープラーニングソフトウェアスタックに無料でアクセスでき、ディープラーニング開発環境を作るのに適しています。
現在、NGC は gn5 インスタンスに完全にデプロイされています。 さらに、イメージマーケットは、NVIDIA Pascal GPU 用に最適化された NGC コンテナー画像も提供しています。 イメージマーケットから NGC コンテナー画像をデプロイすることで、開発者は NGC コンテナー環境を手軽に構築することができ、最適化されたディープラーニングフレームワークに即座にアクセスできるため、製品開発および業務デプロイ時間が大幅に短縮されます。 その他の利点として、開発環境の事前インストール、最適化されたアルゴリズムフレームワークのサポート、継続的な更新などがあります。
NGC Web サイトは、現在の主流のディープラーニングフレームワーク (Caffe、Caffe2、CNTK、MxNet、TensorFlow、Theano、Torch など) のさまざまなバージョンのイメージを提供します。 環境を構築するために希望のイメージを選択することができます。 例として TensorFlow ディープラーニングフレームワークを挙げ、 gn5 インスタンス上で NGC 環境を構築する方法について説明します。
TensorFlow 環境を構築する前に、以下を行う必要があります。
- Alibaba Cloud にサインアップして、本名の登録を終了します。
- NGC Web サイトにログインし、NGC アカウントを作成します。
- NGC Web サイトにログインし、NGC API キーを取得してローカルに保存します。 NGC コンテナー環境にログインすると、NGC API キーが検証されます。
手順
- 「ECS インスタンスの作成」を参照して、gn5 インスタンスを作成します。 以下の設定に注意します。
- リージョン: 中国 (青島)、中国 (北京)、中国 (フフホト)、中国 (杭州)、中国 (上海)、中国 (深セン)、中国 (香港)、シンガポール、オーストラリア (シドニー)、米国 (シリコンバレー)、米国 (バージニア)、ドイツ (フランクフルト) のみが利用できます。
- インスタンス: gn5 インスタンスタイプを選択します。
- イメージ: [イメージマーケット] を選択します。 表示されたダイアログボックスで、 [NVIDIA GPU Cloud VM イメージ] を検索し、[続行] をクリックします。
- ネットワーク請求方法: [パブリック IP の割り当て] を選択します。
注 ここでパブリックIPアドレスを割り当てない場合は、インスタンスが正常に作成された後に EIP アドレスをバインドできます。
- セキュリティグループ: セキュリティグループを選択します。 セキュリティグループで、TCP ポート 22 へのアクセスを許可する必要があります。 インスタンスが HTTPS または DIGITS 6 をサポートする必要がある場合、TCP ポート 443 (HTTPS 用) または TCP ポート5000 (DIGITS 6 用) へのアクセスを許可する必要があります。
ECS インスタンスが正常に作成された後、ECS コンソールにログインし、インスタンスのパブリック IP アドレスを書き留めます。
- ECS インスタンスに接続します。インスタンス作成中に選択したログオン認証情報に基づいて、パスワードを使用して ECS インスタンスに接続するか、または SSH キーペアを使用して ECS インスタンスに接続することができます。
- NGC Web サイトから取得した NGC API キーを入力し、Enter キーを押して NGC コンテナー環境にログインします。
nvidia-smi
を実行します。 以下に示すように、GPU モデル、ドライバーのバージョンなど、現在の GPU に関する情報を表示できます。- 以下の手順に従って TensorFlow 環境を構築します。
- NGC Web サイトにログインし、TensorFlow イメージページに移動し、
docker pull
コマンドを取得します。 - TensorFlow イメージをダウンロードします。
docker pull nvcr.io/nvidia/tensorflow:18.03-py3
- ダウンロードしたイメージを表示します。
docker image ls
- コンテナーを実行して TensorFlow 開発環境をデプロイします。
nvidia-docker run --rm -it nvcr.io/nvidia/tensorflow:18.03-py3
- NGC Web サイトにログインし、TensorFlow イメージページに移動し、
- 以下のいずれかの方法を使用して TensorFlow をテストします。
- TensorFlow の簡易テスト。
$python
>>> import tensorflow as tf >>> hello = tf.constant('Hello, TensorFlow!') >>> sess = tf.Session() >>> sess.run(hello)
TensorFlow が GPU デバイスを正しくロードすると、結果は以下のようになります。 - TensorFlow モデルをダウンロードして TensorFlow をテストします。
git clone https://github.com/tensorflow/models.git cd models/tutorials/image/alexnet python alexnet_benchmark.py --batch_size 128 --num_batches 100
実行状態は以下のとおりです。
- TensorFlow の簡易テスト。
- TensorFlow イメージに加えた変更を保存します。 保存しないと、次回ログイン時に設定が失われます。