GPU Resources

Prev Next

最新のコンテンツが反映されていません。早急にアップデート内容をご提供できるよう努めております。最新のコンテンツ内容は韓国語ページをご参照ください。

VPC環境で利用できます。

GPU Resourceの画面構成について説明します。GPU Resourcesでは、Workspaceに割り当てられた GPUリソースの状況を照会できます。

参考

現在、ML expert Platformはクローズドベータサービス(CBT)中で、事前協議済みのユーザーに GPUリソースを別途割り当てています。

GPU Resourceリスト照会

ユーザーの Workspaceに割り当てられた GPUリソースのリストを確認できます。GPU Resourceリストの情報は次の通りです。

mlxp_console_gpuresources03_ko

  • GPU Zone: ユーザーの Workspaceに割り当てられた GPUリソースの提供方法を区別する情報
  • 作成日時: GPUリソースを割り当てた時点
  • ステータス: GPUリソースのステータス
  • Ready Nodes: 使用可能な GPUノード数
  • UnReady Nodes: 使用不可な GPUノード数
  • Total Nodes: 現在 Workspaceに割り当てられた GPUリソースの総数
参考
  • 現在、ML Expert Platformは Private Zoneで GPUリソースを提供しています。
  • Private Zoneとは、他のユーザーと GPUリソースを共有せず、割り当てられた Workspaceで専用に使用する方式です。

使用可能な GPUゾーン情報の照会

使用可能な GPUゾーン情報を照会する方法は、次の通りです。

  • Workspaceで使用可能な GPU Zone情報を照会
    kubectl get managementquota default -o yaml -n w-{ workspace name }
  spec:
  type: workspace
  zones:
    privateZones:
      # Workspaceで「gpu-private-zone」の GPUリソースが使用可能
      gpu-private-zone: ["*"]
  • Projectで使用可能な GPU Zone情報を照会
    kubectl get managementquota default -o yaml -n p-{ project name}
  spec:
  type: project
  zones:
    privateZones:
      # Projectで「gpu-private-zone」の GPUリソースが使用可能
      gpu-private-zone: ["*"]

GPU Zone情報の使用方法

GPUリソース情報を活用するすべての機能を使用する際には、GPU Zone情報を明示する必要があります。

  • PyTorchJobで Podを作成する際は、実行する GPU Zoneを明示する nodeSelectorを追加してください。
apiVersion: "kubeflow.org/v1"
kind: "PyTorchJob"
metadata:
  name: "pytorch-dist-mnist-nccl"
spec:
  pytorchReplicaSpecs:
    Master:
      replicas: 1
      restartPolicy: OnFailure
      template:
        metadata:
          labels:
            app: my-app
        spec:
          nodeSelector:
            mlx.navercorp.com/zone: ai-infra
          containers:
            - name: pytorch
              image: kubeflow/pytorch-dist-mnist:latest
              args: ["--backend", "nccl"]
              resources:
                limits:
                  nvidia.com/gpu: 1
    Worker:
      replicas: 2
      restartPolicy: OnFailure
      template:
        metadata:
          labels:
            app: my-app
        spec:
          containers:
            - name: pytorch
              image: kubeflow/pytorch-dist-mnist:latest
              args: ["--backend", "nccl"]
              resources:
                limits:
                  nvidia.com/gpu: 1
          nodeSelector:
            mlx.navercorp.com/zone: ai-infra
  • すべてのワークロードの基盤となる Podにも、nodeSelectorで GPUゾーンを明示する必要があります。
apiVersion: v1
kind: Pod
metadata:
  name: sleep
  annotations:
    sidecar.istio.io/inject: "false"
spec:
  nodeSelector:
    mlx.navercorp.com/zone: ai-infra
  containers:
    - image: reg.navercorp.com/base/ubuntu:22.04
      command: ["/bin/bash", "-c", "sleep inf"]
      imagePullPolicy: IfNotPresent
      name: sleep

GPU Instance詳細を照会

GPU Zone内部にある GPUインスタンスのステータス情報を照会できます。

mlxp_console_gpuresources03_ko

  • GPUインスタンス名: GPU Zoneに割り当てられた GPUインスタンスの名前
  • 作成日時: GPUインスタンスを作成した時点
  • ステータス: GPUインスタンスのステータス
    • Ready: GPUインスタンスが使用可能なステータス
    • NotReady: ハードウェア障害などにより GPUインスタンスが使用できないステータス
    • Unschedulable: GPUインスタンスは正常だが、使用可能な対象から除外されたステータス
    • Unknown: GPUインスタンスに問題が発生し、点検が必要なステータス
  • プロジェクト: GPUインスタンスが割り当てられたプロジェクト名

GPU Instance管理

GPU Zoneの GPUインスタンスをプロジェクトごとに割り当てることができます。

参考

GPU Instance管理機能は、Workspaceの Admin、Writerのみが使用できます。

  1. GPUインスタンス管理のポップアップでプロジェクトを選択した後、選択したプロジェクトで使用する GPUインスタンスを選択します。
  2. 保存ボタンを押すと、選択した GPUインスタンスがプロジェクトに割り当てられます。
  3. 初期化ボタンを押すと、選択したプロジェクトに設定された GPUインスタンス情報で再照会されます。
注意
  • 最初の GPUインスタンスは、すべてのプロジェクトに割り当てられた状態です。Workspaceに割り当てられた GPUインスタンスが、すべてのプロジェクトで使用できる状態であることを意味します。
  • GPUインスタンスは各プロジェクトに重複して割り当て可能です。
  • GPU Instance管理機能は、各プロジェクトで使用可能な予備リソースを指定する機能であり、現在使用中の Podのリアルタイムステータス情報は反映しません。使用中の Podがある GPUインスタンスを別のプロジェクトに割り当てた場合、再起動時にそのインスタンスが割り当てられたプロジェクト情報が変更されたため、Podは再起動されません。