nvidia-healthmon은 운영 중인 서버에서 실행할 때 몇 가지 주의사항이 있습니다.
단순히 상태를 조회하는 nvidia-smi와 달리, 실제 진단 로직을 수행하기 때문입니다.
1. 소요 시간
보통 수초에서 수분 내외로 끝납니다.
- 단순 점검: 수초 내에 완료됩니다. (소프트웨어 설정, 드라이버 상태 등)
- 전체 진단: 하드웨어 및 데이터 무결성 검사가 포함될 경우 시스템 사양에 따라 1~2분 이상 소요될 수 있습니다.
- 특이사항: 문제가 발견되어 타임아웃이 발생하거나 로그를 생성할 때는 시간이 더 길어질 수 있습니다.
2. 운영 중 부하 및 영향 (매우 중요)
결론부터 말씀드리면, **"서비스 중인 GPU에서는 실행하지 않는 것이 원칙"**입니다.
- CUDA 컨텍스트 생성: nvidia-healthmon은 실행 시 대상 GPU에 CUDA 컨텍스트를 직접 생성합니다.
- 배타적 모드(Exclusive Mode) 충돌: 만약 GPU가 Compute Exclusive 모드로 설정되어 있다면, 이미 돌아가고 있는 다른 작업(AI 모델 추론, 학습 등) 때문에 nvidia-healthmon이 실행되지 않거나 반대로 기존 작업이 방해받을 수 있습니다.
- 성능 저하: 진단 과정에서 PCIe 대역폭 점검이나 연산 테스트가 포함될 경우, 운영 중인 서비스의 성능(Latency)에 즉각적인 영향을 줍니다.
- 정확도 감소: 다른 프로세스가 GPU를 점유하고 있으면 대역폭 측정 등이 정확하지 않아 멀쩡한 하드웨어를 'Fail'로 오진할 가능성이 있습니다.
3. 권장 실행 타이밍
XID 43 에러가 발생했다면 이미 해당 GPU의 작업은 정상적으로 수행되지 않고 있을 확률이 높습니다. 이럴 때는 다음과 같이 조치하세요.
- 작업 중단: 해당 GPU(0번)를 사용하는 모든 프로세스를 종료하거나 다른 GPU로 넘깁니다. (Drain)
- 단독 실행: 0번 GPU가 비어있는 상태에서 nvidia-healthmon -i 0을 실행합니다.
- 결과 확인: 여기서 Fail이 나오면 하드웨어 장애로 확정하고 장비를 교체하거나 수리해야 합니다.
[!CAUTION] 라이브 서비스 중인 GPU에 무턱대고 돌리면 서비스 응답 속도가 튀거나 프로세스가 죽을 수 있으니, 반드시 트래픽을 차단하거나 해당 카드를 Idle 상태로 만든 뒤 돌리시는 것을 추천합니다.
==============================
이 도구는 보통 NVIDIA 드라이버나 CUDA 툴킷과 함께 설치되지만, 최신 버전(드라이버 500대 이후)에서는 **DCGM(Data Center GPU Manager)**으로 통합되거나 별도 패키지로 제공되는 경우가 많습니다.
Ubuntu에서 확인하고 실행하는 방법은 다음과 같습니다.
1. 파일 위치 확인하기
보통 /usr/bin 또는 /usr/local/cuda/bin에 위치합니다. 어디 있는지 모를 때는 아래 명령어로 검색하세요.
which nvidia-healthmon
# 또는 시스템 전체에서 찾기
find /usr -name nvidia-healthmon 2>/dev/null
- 일반적인 경로: /usr/bin/nvidia-healthmon
- 만약 검색 결과가 없다면: 패키지가 설치되지 않은 것입니다. nvidia-diagnostic-suite 또는 nvidia-healthmon 패키지를 설치해야 합니다.
2. 실행 방법 (권한 필요)
진단 도구는 하드웨어 로우 레벨에 접근하기 때문에 반드시 **root 권한(sudo)**이 필요합니다.
기본 실행 (전체 GPU 진단)
sudo nvidia-healthmon
특정 GPU(0번)만 진단 (XID 43 발생 시 권장)
sudo nvidia-healthmon -i 0
상세 로그 생성 (문제 분석용)
진단 결과를 파일로 저장하여 나중에 기술 지원을 받을 때 유용합니다.
sudo nvidia-healthmon -v -l health_log.txt
3. 실행 결과 해석
실행 후 화면에 각 항목별로 결과가 출력됩니다.
- PASS: 해당 항목에 하드웨어적 결함이 발견되지 않음.
- FAIL: 하드웨어 불량 또는 심각한 설정 오류. (XID 43과 함께 FAIL이 뜨면 교체 검토 필요)
- WARNING: 즉각적인 장애는 아니나 점검이 필요한 상태 (예: 오래된 펌웨어).
⚠️ 중요: 만약 파일이 없다면?
최근 Ubuntu 서버 환경에서는 nvidia-healthmon 대신 DCGM을 사용하는 것이 표준입니다. 만약 파일이 없다면 아래 명령어로 최신 진단 도구를 써보세요.
# DCGM 진단 도구 실행 (설치되어 있는 경우)
dcgmi diag -r 1
'[GPUaaS] > GPUmgt' 카테고리의 다른 글
| [분산 학습] 운영 관점에서 NaN vs Inf 차이 !! (0) | 2026.02.21 |
|---|---|
| [분산 학습] NaN 반드시 알아야 하는 개념 !! (0) | 2026.02.21 |
| [Not a Number] NaN이란 무엇인가? (0) | 2026.02.21 |
| [GPU] 스크립트 사용 프로세스 확인 및 삭제 방법!! (0) | 2026.02.19 |
| nvidia-smi (System Management Interface) VS nvidia-healthmon (Tesla Health Monitor) !! (0) | 2026.02.19 |
| Ceph vs Lustre 차이 !! (0) | 2026.02.18 |
| [Ceph] 대용량 분산 스토리지 시스템 !! (1) | 2026.02.18 |
| [ECC ON] 체크 스크립트 !! (0) | 2026.02.18 |
댓글