nvidia에서 제공하는 GPU Driver를 각 서비의 OS맞게 설치했다면, nvidia-smi
명령어를 통해 서버에 있는 GPU의 현재 모든 상태를 모니터링 할 수 있습니다.
nvidia-smi
를 통해 확인할 수 있는 정보Drive Version
: 현재 설치되어 있는 드라이브 버전을 확인할 수 있습니다.CUDA Version
: GPU 드라이버 설치 당시 초기에 설치된 CUDA 버전으로, GPU 드라이버와 CUDA를 별도로 설치했다면, 현재 설치되어 있는 CUDA 버전과는 다를 수 있습니다(nvcc -V
명령어를 사용하여 cuda toolkit 설치 시 설치된 CUDA 버전을 확인할 수 있습니다)GPU/Fan
Name/Temp
nvidia-smi -q
명령어를 사용하여 Product Name
에서 모델 풀 네임을 확인할 수 있습니다.Perf(Performance)
: GPU의 성능을 나타내는 값으로, P0-P12까지 존재하며 P0에 가까울수록 성능이 좋습니다.Persistence-M/Pwr:Usage/Cap
Bus-Id
: 서버 제조사의 메인보드마다 가지고 있는 PCI slot에 부여된 BUS-Id입니다.Disp.A/Memory-Usage
Volatile GPU-Util
: 1/6초 동안 사용된 GPU의 활용률로, 값이 높을 수록 GPU를 제대로 활용하고 있음을 말합니다.Uncorr.ECC/Compute M./MIG M.
Processes
: GPU가 작업을 시작하기 전에는 "No running process found"가 뜨며, GPU가 작업을 시작하면 사진에서와 같이 PID, Process name, GPU Memory/Usage등이 뜨게 됩니다.nvidia-smi
에 다양한 옵션을 추가하여 사용하게 됩니다. 본 게시글에서는 두 가지 정도 소개드리고자 합니다nvidia-smi
에서 짤리거나, 표시되지 않은 정보들을 여기서 더 자세하게 확인할 수 있습니다.grep
을 사용하면 됩니다. 1대의 서버에 총 4개의 RTX 2080Ti GPU가 있는 것을 확인할 수 있습니다.