반응형

NVIDIA-SMI 확인방법 및 활용하기

nvidia-smi 옵션 사용법

nvidia gpu를 사용하기 위해서는 nvidia에서 제공하는 GPU Driver를 각각의 os에 맞게 설치해야 한다. 드라이버 설치에 성공하고 가장 먼저 사용하는 명령어는 nvidia-smi이다.

 

하지만 보통 사람들은 nvidia-smi를 GPU가 제대로 올라오는지 확인 차원에서만 사용하지만, 다른 차원에서는 nvidia smi 명령어는 현재 GPU의 모든 상태를 monitoring 해주고 있다.

 

그렇다면 nvidia-smi의 화면을 보면서 하나씩 간단하게 설명하도록 하겠다.

 

# nvidia-smi

위 그림처럼 nvidia-smi 명령어는 많은 내용을 담고 있다. 아래에서 자세히 한번 확인 해보도록 하겠다.

 

1. Driver Version

현재 설치되어 있는 nvidia driver version

 

2. CUDA Version

 

현재 드라이버 버전과 맞는 cuda 추천 버전

※ 절대 현재 설치되어 있는 버전이 아니다.

 

3. GPU/FAN

설치되어 있는 GPU number

FAN N/A(Not Available) fan이 없는 Tesla 모델.

※ RTX 계열의 팬이 있는 모델을 사용하면 56%같은 숫자와 %로 표기.

 

4. Name

Nvidia GPU Model(A100-PCIE-40GB)

 

5. Temp

GPU의 현재 온도

 

6. Perf(Performance)

P0 - P12 까지 존재하며, P0에 가까울수록 GPU의 Performance가 높다.

 

7. Persistence-M

Persistence Mode는 on/off 두 가지 모드가 존재하며, Default값은 off이다.

 

on 상태가 되면 Power limit을 설정할 수 있다.

 

※ 파워 지속성 옵션. on상태시 GPU 사용 시 지연시간을 아끼지만 전력을 낭비한다.

 

8. Pwr: Usage/Cap

현재 전력사용량과 최대 용량이다.

 

9. Bus-Id

서버 제조사의 메인보드마다 가지고 있는 PCI slot에 부여된 BUS-ID이다.

 

이것을 참고로 하여 사용하는 GPU number와 메인보드의 PCI 슬롯을 매칭 시켜 확인할 수 있다.

 

10. Disp.A

RTX나 Quadro계열의 GPU에서 사용된다.

모니터를 연결한 출력 포트의 GPU는 on상태로 변경이 된다.

 

11. Memory-Usage

현재 사용하는 GPU 메모리 / 총 GPU 메모리

 

12. Voltaile GPU-Util

GPU의 총사용량이다. GPU는 메모리로만 동작하지 않고 SMs와 같은 프로세서도 존재한다.

 

13. Uncorr. ECC

default값은 ECC ON 상태이며, ECC count가 생기면 숫자 0이 1,2.. 이상으로 변경된다.

 

※ ECC ON 상태에서 count가 계속 발생하면 시스템 Hang이 발생한다. 그러므로 Off 시켜 놓고 작업하는 곳이 많으며, ECC Off를 하게 되면 놀랍게도 GPU Memory 총량이 늘어나게 된다.

 

14. Compute M.

Compute Mode의 모드이다.

0 - default

1 - exclusive_thread

2 - prohibited

3 - exclusive_process

 

15. MIG M

NVIDIA GPU A100에서부터 지원이 가능하다.

MIG는 GPU를 Slice 하는 기능이다. 

 

Default는 Disabled가 되어 있지만 옵션을 통해 Enable 하여 사용한다.

 

17. Processes

GPU가 작업을 시작하면 No running processes found에 PID에 표기가 된다.

 

그렇다면 위 nvidia-smi의 정보 값을 내가 원하는 정보만 보고 싶다면 어떻게 해야 하는 걸까? 몇 가지 유용한 정보만 써보고자 한다.

 

NVIDIA-SMI 옵션

# nvidia-smi -q

-q,   --query Display GPU or Unit info.

GPU의 거의 모든 정보를 보여주는 옵션이다. 여기에서 grep 명령어를 통해 필요한 정보만을 볼 수도 있지만 아래에 옵션을 통해 필요한 정보를 따로 확인할 수 있다.

 

# nvidia-smi -q -d memory

-d,   --display Display only selected information: MEMORY, ECC 등..

위에서 -q로 뽑은 GPU 정보에서 필요한 정보를 select 하여 -d display 하여 보여준다. 

 

# nvidia-smi -q -d memory -i 0,3

-i,   --id Target a specific GPU.

-i 옵션을 사용하게 되면 필요한 GPU만 선택하여 간략하게 볼 수가 있다. 유용한 옵션 중의 하나이며, GPU를 사용하게 된다면 많이 사용하게 될 것이다.

 

# nvidia-smi -L

-L,   --list-gpus Display a list of GPUs connected to the system.

GPU List를 보여주지만 단순하게 보여주는 것이 아니라 UUID값을 보여주는 옵션이다.

 

이 외에 잘 사용하는 nvidia 옵션

# nvidia-smi -r

-r,   --gpu-reset 

GPU H/W 상태를 재설정하는 리셋 옵션이다.

 

# nvidia-smi -e 0 or 1

-e,   --ecc-config

0은 Disabled, 1은 Enabled이다. 반드시 리부팅 후 적용이 된다.

 

그 외에 요즘 가장 많이 사용되며, 알아야 할 옵션 MIG는 아래 포스팅에서 확인하면 된다. 이로써 NVIDIA 확인 방법 및 옵션 사용 방법에 대해 알아보았다.

 

2020/12/02 - [linux] - NVIDIA A100 MIG

2020/12/02 - [linux] - MIG GPU INSTANCE 구성

2020/12/17 - [슈퍼마이크로서버] - 4029GP-TRT2 (4U 8 GPU 서버) 상세정보

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기