# GPU 모니터 & 검증기
> 전문가급 GPU 모니터링 및 검증 도구
Source: https://help.computelabs.ai/ko/docs/gpu-monitor
Language: ko

> **최신 버전**: 3.1.9

GPU 모니터 & 검증기는 프로덕션 환경에서 NVIDIA 및 AMD GPU의 최적 성능과 상태를 보장하는 전문가급 도구입니다.

## 개요

GPU 모니터 & 검증기는 다음을 제공합니다:

- **멀티 벤더 지원**: NVIDIA (CUDA) 및 AMD (ROCm) GPU
- **향상된 멀티 GPU 지원**: 여러 GPU가 있는 시스템을 위한 개선된 인증 및 검증
- 실시간 성능 모니터링
- 제조사 사양 대비 하드웨어 검증
- PyTorch 스트레스 테스트를 통한 포괄적인 벤치마킹
- 자동화된 이상 징후 탐지
- 지속적인 상태 모니터링
- 성능 저하 탐지
- 열 관리 검증
- 메모리 무결성 확인
- 벤더 독립적인 통합 인터페이스

### 버전 3.1.9의 새로운 기능

- **드라이버 독립적 설치**: 패키지가 더 이상 기존 NVIDIA/AMD 드라이버와 충돌하지 않음
- **동적 PyTorch 감지**: CUDA/ROCm 버전을 자동으로 감지하고 호환 가능한 PyTorch를 설치
- **CUDA 13.0 지원**: CUDA 13.0을 포함한 최신 NVIDIA 드라이버에 대한 완전한 지원
- **권한 문제 해결**: 설치 중 venv 권한 오류 해결
- **향상된 오류 가시성**: 더 쉬운 문제 해결을 위해 설치 오류가 이제 올바르게 표시됨

## 시스템 요구사항

### 운영체제
- Ubuntu 22.04 LTS (Jammy) 이상
- Ubuntu 24.04 LTS (Noble)
- Ubuntu 24.10 (Oracular)
- Debian 11 (Bullseye) 이상
- Debian 12 (Bookworm)

### 하드웨어 요구사항
- **NVIDIA GPU**: Compute Capability 7.0+ (V100, T4, A100, H100, RTX 시리즈)
- **AMD GPU**: ROCm 호환 (MI100, MI200, MI300 시리즈, Radeon Pro VII, W7900)
- 2MB 여유 디스크 공간 (종속성 제외)

### 소프트웨어 요구사항
- Python 3.10 이상
- 초기 설정을 위한 인터넷 연결
- **NVIDIA의 경우**: 모든 NVIDIA 드라이버 버전 (패키지는 드라이버 독립적)
- **AMD의 경우**: 모든 ROCm 버전 (패키지는 드라이버 독립적)
- **참고**: 패키지는 GPU 드라이버를 설치하거나 수정하지 않습니다

## 설치

### 옵션 1: Ubuntu PPA (Ubuntu에 권장)

```bash
# PPA 저장소 추가 (비대화식)
sudo add-apt-repository ppa:cl-ax/gpu-validator -y
sudo apt update

# GPU Agent 설치 (비대화식)
sudo apt install cl-gpu-agent -y
```

### 옵션 2: APT 저장소 (Debian/Ubuntu)

```bash
# 저장소 추가
echo 'deb [trusted=yes] https://storage.googleapis.com/gpu_validator/apt-repo stable main' | \
  sudo tee /etc/apt/sources.list.d/computelabs-gpu-agent.list

# 패키지 목록 업데이트
sudo apt update

# GPU Agent 설치
sudo apt install cl-gpu-agent
```

### 옵션 3: 수동 설치

요구사항을 충족하지 않거나 사용자 지정 구성이 필요한 시스템의 경우:

```bash
# 저장소 복제
git clone https://github.com/compute-labs-dev/gpu_validator_monitor.git
cd gpu_validator_monitor

# 설치 스크립트 실행
sudo ./scripts/install.sh
```

## 작동 모드

GPU 검증기는 네 가지 주요 작동 모드를 지원합니다:

### 1. 검증 모드

```bash
cl-gpu-agent --mode validate
```

수행 작업:
- 하드웨어 사양 확인
- 메모리 무결성 테스트
- CUDA 기능 검사
- 드라이버 호환성 검증

### 2. 벤치마크 모드

```bash
cl-gpu-agent --mode benchmark
```

테스트 항목:
- 메모리 대역폭
- CUDA 코어 성능
- Tensor 코어 성능
- PCIe 처리량
- 전력 효율성

### 3. 모니터 모드 (기본 서비스)

```bash
# 모니터링 서비스 시작
sudo systemctl start cl-gpu-agent

# 자동 시작 활성화
sudo systemctl enable cl-gpu-agent
```

추적 항목:
- 실시간 온도
- 전력 소비
- 메모리 사용량
- GPU 사용률
- 오류율
- 성능 메트릭

### 4. 탐지 모드

```bash
cl-gpu-agent --mode detect
```

탐지 및 표시 항목:
- 사용 가능한 GPU
- GPU 모델 및 사양
- 드라이버 버전
- CUDA/ROCm 기능

## 사용법

### 서비스 관리

```bash
# 서비스 상태 확인
sudo systemctl status cl-gpu-agent

# 서비스 시작
sudo systemctl start cl-gpu-agent

# 서비스 중지
sudo systemctl stop cl-gpu-agent

# 자동 시작 활성화
sudo systemctl enable cl-gpu-agent

# 실시간 로그 보기
journalctl -u cl-gpu-agent -f
```

### 직접 명령 사용

```bash
# 도움말 및 사용 가능한 옵션 표시
cl-gpu-agent --help

# 포괄적인 검증 실행
cl-gpu-agent --mode validate

# 성능 벤치마크 실행
cl-gpu-agent --mode benchmark

# 모니터링 실행 (포그라운드)
cl-gpu-agent --mode monitor
```

## 결과 이해하기

검증기는 세 가지 주요 메트릭을 제공합니다:

1. **검증 상태**: 하드웨어 사양에 대한 통과/실패
2. **성능 점수**: 참조 벤치마크와 비교
3. **상태 지표**: 온도/전력 추세

NVIDIA GPU의 성공 출력 예시:
```
GPU 0 (NVIDIA H100 80GB HBM3):
- 검증: 통과
- 메모리 대역폭: 3.1 TB/s
- 온도: 42°C (최대: 85°C)
- 전력 소비: 119W/700W
- CUDA 코어: 100% 작동
- 메모리 테스트: 통과
- 드라이버 상태: 최적
```

## 지원되는 GPU 모델

### NVIDIA GPU
- **데이터 센터**: H100, H200
- **RTX 40 시리즈**: RTX 4090, 4080
- **RTX 50 시리즈**: RTX 5090, 5080

### AMD GPU
- **테스트 및 검증됨**: MI300X
- 기타 ROCm 지원 GPU는 작동할 수 있지만 테스트되지 않음

## 문제 해결

### 일반적인 문제

#### 설치 중 권한 거부
설치 중 `[Errno 13] Permission denied`가 표시되는 경우:

```bash
# 이전 설치 제거
sudo rm -rf /opt/cl-gpu-agent

# 재설치
sudo apt install --reinstall cl-gpu-agent
```

#### NVIDIA 드라이버 버전 불일치
v3.1.3+ 버전부터 패키지는 더 이상 GPU 드라이버를 설치하거나 수정하지 않습니다. 드라이버 문제가 있는 경우:

```bash
# 현재 드라이버 확인
nvidia-smi

# 패키지가 기존 드라이버를 감지하고 사용합니다
# 드라이버 변경이 이루어지지 않습니다
```

#### CUDA 13.0 이상 지원
CUDA 13.0 이상(드라이버 580.x 등)이 있는 경우:
- 패키지가 자동으로 감지합니다
- PyTorch는 CUDA 12.4 지원과 함께 설치됩니다 (역호환)
- CUDA 13.0 드라이버는 PyTorch cu124와 완벽하게 작동합니다

#### 패키지 버전이 업데이트되지 않음
apt가 최신 버전을 가져오지 않는 경우:

```bash
# 캐시 지우기 및 강제 업데이트
sudo apt clean
sudo apt update

# 사용 가능한 버전 확인
apt policy cl-gpu-agent

# 강제 재설치
sudo apt install --reinstall cl-gpu-agent
```
