Azure Stack Edge Pro デバイス上の GPU でモジュールを構成して実行する

適用対象:Yes for Pro GPU SKUAzure Stack Edge Pro - GPUYes for Pro R SKUAzure Stack Edge Pro R

Note

Linux VM に最新の IoT Edge バージョンをデプロイすることを強くお勧めします。 Azure Stack Edge 上のマネージド IoT Edge では、最新の機能と修正プログラムがない古いバージョンの IoT Edge ランタイムが使用されます。 手順については、Ubuntu VM のデプロイに関するページを参照してください。 IoT Edge を実行できるその他のサポートされている Linux ディストリビューションの詳細については、「Azure IoT Edge のサポートされるシステム」のコンテナー エンジンに関する部分を参照してください。

Azure Stack Edge Pro デバイスには、1 つ以上のグラフィックス処理装置 (GPU) が含まれています。 GPU は、並列処理機能を提供し、中央処理装置 (CPU) より画像のレンダリングを速く処理できるため、AI 計算によく使用されます。 Azure Stack Edge Pro デバイスに含まれる GPU の詳細については、Azure Stack Edge Pro デバイスの技術仕様をご覧ください。

この記事では、Azure Stack Edge Pro デバイス上の GPU でモジュールを構成して実行する方法について説明します。 この記事では、Nvidia T4 GPU 用に記述された、一般公開されているコンテナー モジュールの Digits を使用します。 この手順は、Nvidia がこの GPU 用に公開している他のすべてのモジュールの構成にも使用できます。

前提条件

開始する前に次の点を確認します。

  1. GPU 対応の 1 ノード Azure Stack Edge Pro デバイスにアクセスできること。 このデバイスと Azure のリソースがアクティブになっていること。

GPU を使用するようにモジュールを構成する

Azure Stack Edge Pro デバイス上の GPU を使用するようにモジュールを構成してモジュールを実行するには、次の手順に従います。

  1. Azure portal で、デバイスに関連付けられているリソースに移動します。

  2. [概要] で、[IoT Edge] を選択します。

    Configure module to use GPU 1

  3. [IoT Edge サービスを有効にする][追加] を選択します。

    Configure module to use GPU 2

  4. [IoT Edge サービスの作成] に、自分の IoT Hub リソースの設定を入力します。

    フィールド
    サブスクリプション Azure Stack Edge リソースによって使用されるサブスクリプション。
    Resource group Azure Stack Edge リソースによって使用されるリソース グループ。
    IoT Hub [新規作成] または [既存のデータを使用する] を選択します。
    既定では、IoT リソースの作成には Standard レベル (S1) が使用されます。 Free レベルの IoT リソースを使用するには、それを作成してから既存のリソースを選択します。
    いずれの場合も、IoT Hub リソースでは、Azure Stack Edge リソースによって使用されるのと同じサブスクリプションとリソース グループが使用されます。
    名前 新しい IoT Hub リソースに既定の名前を使用したくない場合は、別の名前を入力します。

    設定が完了したら、 [確認および作成] を選択します。 IoT Hub リソースの設定を確認し、 [作成] を選択します。

    Get started with compute 2

    IoT Hub リソースの作成には数分かかります。 リソースの作成後、IoT Edge サービスが実行中であることが [概要] に示されます。

    Get started with compute 3

  5. Edge コンピューティング ロールが構成されたことを確認するには、 [プロパティ] を選択します。

    Get started with compute 4

  6. [プロパティ] で、[IoT Edge デバイス] のリンクを選択します。

    Configure module to use GPU 6

    右側のウィンドウに、Azure Stack Edge Pro デバイスに関連付けられている IoT Edge デバイスが表示されます。 このデバイスは、IoT Hub リソースを作成するときに作成した IoT Edge デバイスに対応しています。

  7. この IoT Edge デバイスを選択します。

    Configure module to use GPU 7

  8. [Set modules](モジュールの設定) を選びます。

    Configure module to use GPU 8

  9. [+ 追加] を選択し、[+ IoT Edge モジュール] を選択します。

    Configure module to use GPU 9

  10. [IoT Edge モジュールを追加する] タブで以下を行います。

    1. [イメージの URI] を指定します。 ここでは、一般公開されている Nvidia モジュールの Digits を使用します。

    2. [再起動ポリシー][常時] に設定します。

    3. [必要な状態][実行中] に設定します。

    Configure module to use GPU 10

  11. [環境変数] タブで、変数の名前と対応する値を指定します。

    1. 現在のモジュールがこのデバイス上の GPU の 1 つを使用するようにするため、NVIDIA_VISIBLE_DEVICES を使用します。

    2. 値を 0 または 1 に設定してください。 0 または 1 の値により、少なくとも 1 つの GPU がこのモジュールのためにデバイスによって使用されます。 値を「0, 1」に設定すると、デバイス上の両方の GPU がこのモジュールによって使用されていることを意味します。

      Configure module to use GPU 11

      Nvidia GPU で使用できる環境変数の詳細については、nVidia コンテナー ランタイムに関するセクションを参照してください。

    Note

    モジュールでは、一方または両方の GPU を使用するか、まったく使用しないことができます。

  12. モジュールの名前を入力します。 ここで、コンテナーの作成オプションを指定したり、モジュール ツインの設定を変更したりするように選択できます。完了したら、[追加] を選択します。

    Configure module to use GPU 12

  13. モジュールが実行されていることを確認し、[確認および作成] を選択します。

    Configure module to use GPU 13

  14. [確認および作成] タブに、選択したデプロイ オプションが表示されます。 オプションを確認し、[作成] を選択します。

    Configure module to use GPU 14

  15. モジュールの [ランタイムの状態] をメモします。

    Configure module to use GPU 15

    モジュールのデプロイには数分かかります。 [更新] を選択すると、[ランタイムの状態][実行中] に更新されていることが確認できます。

    Configure module to use GPU 16

次のステップ