- NVTop = "Neat Videocard TOP"
- GPU와 가속기를 위한 태스크 모니터
- 여러대의 GPU에 대한 정보를 처리하며, htop과 비슷한 방식으로 정보를 출력
- 현재 지원 벤더 : AMD (Linux amdgpu 드라이버), Apple (제한적인 M1 & M2 지원), Huawei (Ascend), Intel (Linux i915 드라이버), NVIDIA (Linux 전용 드라이버), Qualcomm Adreno (Linux MSM 드라이버)
NVTOP 옵션 및 인터랙티브 명령어
-
인터랙티브 설정 창:
F2
를 눌러 사용자의 필요에 맞게 인터페이스를 특화할 수 있는 설정 유틸리티 제공.
-
환경 설정 저장: 설정 창에서 설정한 환경을
F12
를 눌러 저장하면, 다음 번 nvtop
실행 시 불러옴.
-
NVTOP 매뉴얼 및 명령어 옵션: 매뉴얼 페이지 제공(
man nvtop
), 명령어 도움말은 nvtop -h
또는 nvtop --help
로 확인 가능.
GPU 지원
-
AMD:
amdgpu
드라이버를 통한 AMD GPU 지원. 커널 5.14 이상에서 GPU를 사용하는 프로세스 확인 가능.
-
Intel:
i915
리눅스 드라이버를 통한 Intel GPU 지원. 커널 5.19 이상에서 GPU를 사용하는 프로세스 확인 가능.
-
NVIDIA: NVML 라이브러리를 통한 지원. 케플러 마이크로아키텍처 이전의 GPU는 일부 쿼리를 지원하지 않음.
-
Adreno:
msm
리눅스 드라이버를 통한 Adreno GPU 지원. 커널 6.0 이상에서 GPU를 사용하는 프로세스 확인 가능.
-
Apple: Metal을 사용한 Apple에 대한 초기 지원 포함. Apple 빌드 시에만 지원.
-
Ascend: DCMI API(버전 6.0.0)를 통한 Ascend 지원. 현재 DCMI는 제한된 API만 지원.
빌드
-
필요 라이브러리: ncurses(사용자 인터페이스), NVIDIA(NVML), AMD(libdrm), Intel(i915) 등.
-
빌드 과정:
git clone
으로 소스 코드를 복제하고, cmake
로 빌드 후 make install
로 시스템에 설치.
배포별 설치 과정
-
Ubuntu / Debian:
snap
또는 apt
를 통한 설치 지원. PPA를 통해 최신 버전의 nvtop
설치 가능.
-
Fedora / Red Hat / CentOS: AppImage 또는
dnf
를 통한 설치 지원.
-
OpenSUSE:
zypper
를 통한 설치 지원.
-
Arch Linux:
pacman
을 통해 nvtop
설치.
-
Gentoo:
layman
과 emerge
를 통해 nvtop
설치.
-
AppImage: 독립 실행형 애플리케이션으로 제공. 실행 권한 부여 후 실행.
-
Snap:
snap install
로 설치 후, 프로세스 제어 및 GPU 정보 점검을 위한 권한 부여 필요.
-
Docker: NVIDIA 드라이버 및
nvidia-docker
필요. docker build
와 docker run
으로 실행.
GN⁺의 의견
- NVTOP은 다양한 GPU 벤더를 지원하며, 리눅스 기반 시스템에서 GPU 모니터링을 위한 강력한 도구임.
- 이 도구는 시스템 관리자와 개발자들에게 GPU 사용 현황을 실시간으로 파악할 수 있는 효과적인 방법을 제공함.
- GPU 모니터링은 특히 머신러닝, 데이터 분석, 게임 개발 등 GPU 의존적인 작업을 수행할 때 중요함.
- NVTOP과 유사한 기능을 제공하는 다른 오픈소스 프로젝트로는
gpustat
이 있으며, 사용자는 자신의 필요에 맞는 도구를 선택할 수 있음.
- 오픈소스 프로젝트인 만큼, 커뮤니티의 기여를 통해 지속적인 개선과 새로운 기능 추가가 이루어질 수 있음.