안녕하세요! 리눅스 사용자이자 GPU 활용에 관심이 많은 분들을 위한 흥미로운 내용을 소개해 드리려고 합니다. 오늘은 NVIDIA GPU 모니터링 도구로 큰 인기를 끌고 있는 nvtop
과 함께, 그보다 더 많은 기능을 제공하는 nvitop
에 대해 알아보겠습니다.
대부분의 분들이 nvidia-smi를 통해 GPU 상태를 확인해 오셨을 텐데요, nvtop
과 nvitop
은 nvidia-smi를 넘어서는 다양한 기능과 직관적인 UI를 제공하는 툴입니다. 저도 지금까지 nvidia-smi
를 사용해왔지만, 최근 들어서 대세(?)라는 nvtop
과 nvitop
을 사용해보려고 하고 있습니다!! 🤗
그럼 이 두 가지 도구를 비교하며 자세히 살펴보겠습니다!
nvtop은 NVIDIA GPU를 실시간으로 모니터링할 수 있는 대화형 도구입니다. htop과 유사한 방식으로, 터미널에서 직관적인 그래픽 UI를 제공하여 GPU의 상태를 한눈에 파악할 수 있습니다. 여러 GPU 환경에서도 각각의 GPU 사용률, 메모리 상태, 프로세스 등을 동시에 모니터링할 수 있는 강력한 기능을 가지고 있습니다.
nvitop은 nvtop
과 유사하게 NVIDIA GPU 모니터링을 위한 대화형 도구입니다. 다만, nvitop은 nvtop보다 더 많은 기능을 제공하며, GPU 모니터링과 관련된 다양한 정보를 실시간으로 확인할 수 있습니다. 특히 프로세스 관리와 GPU 정보 표시 측면에서 더 세밀한 옵션을 제공합니다.
nvitop은 nvidia-smi의 정보 제공 능력, gpustat의 컬러링, 그리고 nvtop의 대화형 모니터링 기능을 결합한 원스톱 솔루션이라고 할 수 있습니다. 실시간 GPU 사용 정보를 제공할 뿐 아니라, 트리 뷰로 프로세스 구조를 확인하거나, 특정 GPU의 상태만 모니터링하는 등의 고급 기능도 갖추고 있습니다.
리눅스 배포판에 따라 설치 방법이 조금 다르지만, 일반적으로 Ubuntu/Debian 계열에서는 패키지 관리자를 통해 쉽게 설치할 수 있습니다.
sudo apt install nvtop
다른 배포판에서는 소스를 직접 빌드해야 할 수 있습니다. 이 경우 다음 명령어를 사용하여 설치할 수 있습니다:
sudo apt install cmake libncurses5-dev libncursesw5-dev git
git clone https://github.com/Syllo/nvtop.git
mkdir -p nvtop/build && cd nvtop/build
cmake ..
make
sudo make install
nvitop은 pip를 통해 설치할 수 있습니다. Python 환경에서 설치가 매우 간단하며, 다음 명령어를 사용하세요:
pip install --upgrade nvitop
또한, conda 환경에서도 설치할 수 있으며, 가상 환경에 설치하는 것을 추천드립니다.
conda install -c conda-forge nvitop
nvtop
이 명령어로 nvtop을 실행하면 GPU 사용률, 메모리 사용량, 실행 중인 프로세스, 온도, 전력 소비량 등을 실시간으로 볼 수 있습니다. 또한, 다양한 단축키를 통해 모니터링 환경을 쉽게 조정할 수 있습니다.
F2
: 설정 창 열기 (Setup Window)F12
: 설정 저장q
또는 Esc
: 종료h
: 도움말 표시nvitop
기본적으로 nvitop
명령어로 GPU 상태를 모니터링할 수 있으며, 다양한 옵션을 통해 더 세밀한 정보를 볼 수 있습니다. 예를 들어, 특정 GPU만 모니터링하거나, 트리 구조로 프로세스를 확인할 수 있습니다.
nvitop -1 -o 0 1 # GPU 0과 1만 표시
nvitop -t # 트리 뷰 활성화
nvitop은 Python API도 제공하여, 사용자가 원하는 방식으로 GPU 모니터링 데이터를 활용할 수 있습니다.
특징 | nvtop | nvitop |
---|---|---|
설치 방법 | 패키지 관리자 또는 소스 빌드 | pip 또는 conda 설치 |
사용자 인터페이스 | 직관적인 그래픽 UI | 풍부한 정보와 다양한 옵션을 제공하는 UI |
프로세스 관리 | GPU 자원 사용 프로세스 정보 제공 | 트리 뷰, 환경 변수 조회, 프로세스 필터링 등 |
실시간 업데이트 | 실시간 업데이트 가능 | 실시간 업데이트 + 더 많은 세부 정보 제공 |
다중 GPU 지원 | 지원 | 지원 |
nvtop
과 nvitop
은 모두 NVIDIA GPU 모니터링에 매우 유용한 도구입니다.
두 도구 모두 직관적인 UI를 제공하고, 실시간으로 GPU 사용량을 모니터링할 수 있으며, 여러 GPU 환경에서도 유용하게 사용할 수 있습니다.
자신의 필요에 따라 nvtop 또는 nvitop을 선택해 GPU 상태를 모니터링해보세요!
좋은 글 감사드립니다!