그래픽 처리 장치(GPUs) 사용하기

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed
  • GitLab Runner 13.9에서 도입되었습니다.

GitLab Runner는 그래픽 처리 장치(GPUs)의 사용을 지원합니다.
다음 섹션에서는 다양한 실행기를 위해 GPUs를 활성화하기 위한 필수 구성을 설명합니다.

셸 실행기

러너 구성은 필요하지 않습니다.

도커 실행기

runners.docker 섹션의 gpus 구성 옵션을 사용하세요.
예를 들어:

[runners.docker]
    gpus = "all"

도커 머신 실행기

Google Compute Engine에서 GPUs 사용에 대한 GitLab 포크의 문서를 참조하세요.

쿠버네티스 실행기

러너 구성은 필요하지 않아야 합니다.
노드 선택기가 GPU 지원 노드를 선택하는지 확인하세요.

GitLab Runner는 Amazon Elastic Kubernetes Service에서
GPU 지원 인스턴스로 테스트되었습니다.

GPUs가 활성화되었는지 확인하기

NVIDIA GPUs가 있는 러너를 사용할 수 있습니다.
NVIDIA GPUs의 경우 CI 작업을 위해 GPU가 활성화되었는지 확인하는 한 가지 방법은
스크립트 시작 부분에서 nvidia-smi를 실행하는 것입니다. 예를 들어:

train:
  script:
    - nvidia-smi

GPUs가 활성화된 경우 nvidia-smi의 출력에 사용 가능한 장치가 표시됩니다.
다음 예에서는 단일 NVIDIA Tesla P4가 활성화됩니다:

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.51.06    Driver Version: 450.51.06    CUDA Version: 11.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla P4            Off  | 00000000:00:04.0 Off |                    0 |
| N/A   43C    P0    22W /  75W |      0MiB /  7611MiB |      3%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

하드웨어가 GPU를 지원하지 않는 경우 nvidia-smi는 없거나
드라이버와 통신할 수 없기 때문에 실패해야 합니다:

modprobe: ERROR: could not insert 'nvidia': No such device
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.