すべてのプロダクト
Search
ドキュメントセンター

Container Compute Service:ACS GPU Pod の GPU モデルとドライバーバージョンを指定する

最終更新日:Nov 09, 2025

Alibaba Cloud Container Compute Service (ACS) は、サーバーレスモデルでコンテナーの計算能力を提供します。GPU リソースを使用する場合、Pod の構成で GPU モデルと ACS がサポートするドライバーバージョンを指定できます。この機能により、インフラストラクチャの管理と O&M コストが大幅に削減されます。このトピックでは、Pod の作成時に GPU モデルとドライバーバージョンを指定する方法について説明します。

GPU モデルの説明

ACS は複数の GPU モデルをサポートしています。GPU 容量予約 で使用するか、Pod の作成時にオンデマンドでリクエストできます。使用方法は、以下で説明するように、コンピューティングクラスごとに異なります。

  • パフォーマンス専有型ネットワーク GPU クラス

    このクラスはノード予約のみをサポートします。購入後、予約をクラスターに関連付ける必要があります。各リソース予約は、Pod が使用できるクラスター内の独立した仮想ノードとして表されます。詳細については、「GPU-HPN 容量予約」をご参照ください。

  • GPU クラス

    このクラスは、従量課金と容量予約の両方をサポートします。Pod が作成されると、利用可能な 容量予約 が自動的に使用されます。

説明

現在サポートされている GPU モデルのリストを取得するには、チケットを送信してください。

Pod の GPU モデルの指定

パフォーマンス専有型ネットワーク GPU クラスの場合、ノード予約を使用してのみリソースをリクエストできます。予約された各リソースは、クラスター内の独立した仮想ノードとして表されます。仮想ノードのラベルは GPU モデルを指定します。これらのリソースは、ノードアフィニティスケジューリング を構成することで使用できます。詳細については、「属性ラベルに基づいてパフォーマンス専有型ネットワーク GPU 仮想ノードにアプリケーションをスケジュールする」をご参照ください。

GPU アクセラレーションクラスの場合、Pod の labelsnodeSelector で GPU モデルを明示的に指定する必要があります。次のセクションでは、その方法について説明します。

コンピューティングクラス

プロトコルフィールド

パフォーマンス専有型ネットワーク GPU タイプ

spec.nodeSelector

apiVersion: v1
kind: Pod
metadata:
  labels:
    # コンピューティングクラスを gpu-hpn として指定します。
    alibabacloud.com/compute-class: "gpu-hpn"
  name: gpu-example-pod
spec:
  nodeSelector:
 # GPU モデルを example-model として指定します。実際のモデルに置き換えてください。
    alibabacloud.com/gpu-model-series: "example-model"
  ...

GPU タイプ

metadata.labels[

alibabacloud.com/gpu-model-series]

apiVersion: v1
kind: Pod
metadata:
  labels:
    # コンピューティングクラスを gpu として指定します。
    alibabacloud.com/compute-class: "gpu"
    # GPU モデルを example-model として指定します。T4 など、実際のモデルに置き換えてください。
    alibabacloud.com/gpu-model-series: "example-model"
  name: gpu-pod
spec:
...

ドライバーバージョンの説明

GPU アプリケーションは通常、実行に Compute Unified Device Architecture (CUDA) を使用します。CUDA は、2007 年に NVIDIA によって導入された並列計算プラットフォームおよびプログラミングモデルです。次の図は、CUDA アーキテクチャを示しています。CUDA ソフトウェアスタックのドライバーレイヤー API とランタイムレイヤー API は、次の点で異なります。

  • ドライバー API: より包括的な機能を提供しますが、使用が複雑です。

  • CUDA ランタイム API: 一部のドライバー API をカプセル化し、特定のドライバー初期化操作を非表示にし、使いやすくなっています。

CUDA ドライバー API は NVIDIA ドライバー パッケージによって提供されます。CUDA ライブラリと CUDA ランタイムは CUDA Toolkit パッケージによって提供されます。

cuda.png

ACS クラスターで GPU アプリケーションを実行する場合は、次の点を考慮してください。

  1. コンテナーイメージに CUDA Toolkit をインストールするときは、NVIDIA が提供する CUDA ベースイメージ を使用します。これらのベースイメージには、CUDA Toolkit がプリインストールされています。その後、これらのベースイメージのいずれかに基づいてアプリケーションコンテナーイメージをビルドできます。さまざまな CUDA ベースイメージを選択して、さまざまな CUDA Toolkit バージョンを使用できます。

  2. アプリケーションを作成するときは、Pod が必要とするドライバーバージョンを指定します。詳細については、「Pod のドライバーバージョンを指定する」をご参照ください。

  3. CUDA Toolkit と NVIDIA ドライバーのバージョン互換性の詳細については、NVIDIA の公式ドキュメント「CUDA Toolkit Release Notes」をご参照ください。

説明

アプリケーションで使用される CUDA ランタイム API のバージョンは、コンテナーイメージのビルドに使用される CUDA ベースイメージのバージョンと同じです。たとえば、アプリケーションのコンテナーイメージが CUDA ベースイメージ NVIDIA/CUDA:12.2.0-base-Ubuntu20.04 に基づいてビルドされている場合、アプリケーションで使用される CUDA ランタイム API のバージョンは 12.2.0 です。

Pod のドライバーバージョンの指定

ACS では、アプリケーションが GPU リソースを使用するときに、Pod ラベルを使用して必要なドライバーバージョンを指定できます。次のフォーマットを使用します。

コンピューティングクラス

プロトコルフィールド

GPU タイプ

metadata.labels[alibabacloud.com/gpu-driver-version]

apiVersion: v1
kind: Pod
metadata:
  labels:
    # コンピューティングクラスを gpu として指定します。
    alibabacloud.com/compute-class: "gpu"
    # GPU モデルを example-model として指定します。T4 など、実際のモデルに置き換えてください。
    alibabacloud.com/gpu-model-series: "example-model"
    # ドライバーバージョンを 535.161.08 として指定します。
    alibabacloud.com/gpu-driver-version: "535.161.08"
  name: gpu-pod
spec:
...

パフォーマンス専有型ネットワーク GPU タイプ

apiVersion: v1
kind: Pod
metadata:
  labels:
    # コンピューティングクラスを gpu-hpn として指定します。
    alibabacloud.com/compute-class: "gpu-hpn"
    # ドライバーバージョンを 535.161.08 として指定します。
    alibabacloud.com/gpu-driver-version: "535.161.08"
  name: gpu-pod
spec:
...

GPU ドライバーバージョン

Pod のドライバーバージョンを指定するときは、指定したバージョンが ACS がサポートするドライバーバージョンのリストに含まれていることを確認してください。詳細については、「GPU ドライバーバージョンの説明」をご参照ください。

Pod のデフォルト GPU ドライバーバージョン

ACS では、特定のルールに基づいて Pod の特定のプロパティを構成できます。デフォルトのドライバーバージョンがニーズを満たさない場合は、kube-system/acs-profile に次の構成を追加して、特定のタイプの GPU Pod に異なる GPU ドライバーバージョンを設定できます。詳細については、「セレクターの構成」をご参照ください。

次の構成では、クラスター内の gpu-hpn コンピューティングクラスのすべての Pod のドライバーバージョンを 1.5.0 に設定します。

apiVersion: v1
kind: ConfigMap
metadata:
  name: acs-profile
  namespace: kube-system
data:
  # 他のシステム構成は変更しないでください。
  selectors: |
    [
      {
        "name": "gpu-hpn-driver",
        "objectSelector": {
          "matchLabels": {
            "alibabacloud.com/compute-class": "gpu-hpn"
          }
        },
        "effect": {
          "labels": {
            "alibabacloud.com/gpu-driver-version": "1.5.0"
          }
        }
      }
    ]

  1. 次の YAML コンテンツを含む gpu-pod-with-model-and-driver.yaml という名前のファイルを作成します。マニフェストは、example-model GPU リソースとドライバーバージョン 535.161.08 をリクエストする gpu コンピューティングクラスの Pod を記述しています。

    apiVersion: v1
    kind: Pod
    metadata:
      name: gpu-pod-with-model-and-driver
      labels:
        # コンピューティングクラスを gpu として指定します。
        alibabacloud.com/compute-class: "gpu"
        # GPU モデルを example-model として指定します。T4 など、実際のモデルに置き換えてください。
        alibabacloud.com/gpu-model-series: "example-model"
        # ドライバーバージョンを 535.161.08 として指定します。
        alibabacloud.com/gpu-driver-version: "535.161.08"
    spec:
      containers:
      - image: registry.cn-beijing.aliyuncs.com/acs/tensorflow-mnist-sample:v1.5
        name: tensorflow-mnist
        command:
        - sleep
        - infinity
        resources:
          requests:
            cpu: 1
            memory: 1Gi
            nvidia.com/gpu: 1
          limits:
            cpu: 1
            memory: 1Gi
            nvidia.com/gpu: 1
  2. 次のコマンドを実行して、gpu-pod-with-model-and-driver.yaml をクラスターにデプロイします。

    kubectl apply -f gpu-pod-with-model-and-driver.yaml
  3. 次のコマンドを実行して、Pod のステータスを確認します。

    kubectl get pod

    予期される出力:

    NAME                            READY   STATUS    RESTARTS   AGE
    gpu-pod-with-model-and-driver   1/1     Running   0          87s
  4. 次のコマンドを実行して、Pod の GPU 情報を表示します。

    説明

    次のコマンドでは、/usr/bin/nvidia-smi はサンプルイメージにプリパッケージされているコマンドパラメーターです。

    kubectl exec -it gpu-pod-with-model-and-driver -- /usr/bin/nvidia-smi

    予期される出力:

    +---------------------------------------------------------------------------------------+
    | NVIDIA-SMI xxx.xxx.xx             Driver Version: 535.161.08   CUDA Version: xx.x     |
    |-----------------------------------------+----------------------+----------------------+
    ...
    |=========================================+======================+======================|
    |   x  NVIDIA example-model           xx  | xxxxxxxx:xx:xx.x xxx |                    x |
    | xxx   xxx    xx              xxx / xxxx |      xxxx /       xxx|      x%      xxxxxxxx|
    |                                         |                      |                  xxx |
    +-----------------------------------------+----------------------+----------------------+

    期待される出力は、GPU モデルが example-model で、ドライバーバージョンが 535.161.08 であることを示しており、これは Pod のラベルの構成と一致しています。

    重要

    上記の出力は一例です。実際の出力は、動作環境によって異なります。