6.3. Dynamic Accelerator Slicer Operator를 사용하여 GPU 워크로드 배포


DAS(Dynamic Accelerator Slicer) Operator에서 관리하는 GPU 슬라이스를 요청하는 워크로드를 배포할 수 있습니다. Operator는 GPU 액셀러레이터를 동적으로 분할하고 사용 가능한 GPU 슬라이스로 워크로드를 예약합니다.

사전 요구 사항

  • 클러스터에서 사용할 수 있는MIG 지원 GPU 하드웨어가 있습니다.
  • NVIDIA GPU Operator가 설치되고 ClusterPolicyReady 상태가 표시됩니다.
  • DAS Operator가 설치되어 있습니다.

프로세스

  1. 다음 명령을 실행하여 네임스페이스를 생성합니다.

    oc new-project cuda-workloads
  2. NVIDIA>-<G 리소스를 사용하여 GPU 리소스를 요청하는 배포를 생성합니다.

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: cuda-vectoradd
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: cuda-vectoradd
      template:
        metadata:
          labels:
            app: cuda-vectoradd
        spec:
          restartPolicy: Always
          containers:
          - name: cuda-vectoradd
            image: nvcr.io/nvidia/k8s/cuda-sample:vectoradd-cuda12.5.0-ubi8
            resources:
              limits:
                nvidia.com/mig-1g.5gb: "1"
            command:
              - sh
              - -c
              - |
                env && /cuda-samples/vectorAdd && sleep 3600
  3. 다음 명령을 실행하여 배포 구성을 적용합니다.

    $ oc apply -f cuda-vectoradd-deployment.yaml
  4. 다음 명령을 실행하여 배포가 생성되고 Pod가 예약되었는지 확인합니다.

    $ oc get deployment cuda-vectoradd

    출력 예

    NAME             READY   UP-TO-DATE   AVAILABLE   AGE
    cuda-vectoradd   2/2     2            2           2m

  5. 다음 명령을 실행하여 Pod의 상태를 확인합니다.

    $ oc get pods -l app=cuda-vectoradd

    출력 예

    NAME                              READY   STATUS    RESTARTS   AGE
    cuda-vectoradd-6b8c7d4f9b-abc12   1/1     Running   0          2m
    cuda-vectoradd-6b8c7d4f9b-def34   1/1     Running   0          2m

검증

  1. 다음 명령을 실행하여 할당 클레임 리소스가 배포 Pod에 대해 생성되었는지 확인합니다.

    $ oc get allocationclaims -n das-operator

    출력 예

    NAME                                                                                           AGE
    13950288-57df-4ab5-82bc-6138f646633e-harpatil000034jma-qh5fm-worker-f-57md9-cuda-vectoradd-0   2m
    ce997b60-a0b8-4ea4-9107-cf59b425d049-harpatil000034jma-qh5fm-worker-f-fl4wg-cuda-vectoradd-0   2m

  2. 다음 명령을 실행하여 Pod의 리소스 할당 중 하나를 확인하여 GPU 슬라이스가 올바르게 할당되었는지 확인합니다.

    $ oc describe pod -l app=cuda-vectoradd
  3. 다음 명령을 실행하여 로그를 확인하여 CUDA 샘플 애플리케이션이 성공적으로 실행되는지 확인합니다.

    $ oc logs -l app=cuda-vectoradd

    출력 예

    [Vector addition of 50000 elements]
    Copy input data from the host memory to the CUDA device
    CUDA kernel launch with 196 blocks of 256 threads
    Copy output data from the CUDA device to the host memory
    Test PASSED

  4. 환경 변수를 확인하여 다음 명령을 실행하여 GPU 장치가 컨테이너에 올바르게 노출되었는지 확인합니다.

    $ oc exec deployment/cuda-vectoradd -- env | grep -E "(NVIDIA_VISIBLE_DEVICES|CUDA_VISIBLE_DEVICES)"

    출력 예

    NVIDIA_VISIBLE_DEVICES=MIG-d8ac9850-d92d-5474-b238-0afeabac1652
    CUDA_VISIBLE_DEVICES=MIG-d8ac9850-d92d-5474-b238-0afeabac1652

    이러한 환경 변수는 GPUMIG 슬라이스가 올바르게 할당되었으며 컨테이너 내의 CUDA 런타임에 표시되는 것을 나타냅니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동