CPU Bound vs I/O Bound
항목 CPU Bound I/O Bound
| 프로세스 상태 | R | D |
| CPU 사용률 | 높음 | 낮음 |
| iowait (wa) | 낮음 | 높음 |
| 해결 방향 | CPU 증설 / 알고리즘 최적화 | 디스크 캐싱 / 비동기 I/O |
vmstat r / b
- r : CPU 사용 중이거나 대기 중인 프로세스 수 (R 상태)
- r > 코어 수 → CPU 병목
- b : I/O 완료를 기다리는 프로세스 수 (D 상태)
- b > 0 지속 + wa 높음 → I/O 병목
- b 튀어도 wa = 0 이면 캐시에서 해소된 것 → 정상
진단 흐름
uptime / top → load average 높음 인지
vmstat 1 → r, b, wa 확인으로 원인 구분
├── r 높음 + wa 낮음 → CPU Bound → top -o %CPU
└── b 높음 + wa 높음 → I/O Bound → iostat -x 1
핵심: load average만으로는 원인을 알 수 없다. wa 값이 CPU/I/O 구분의 핵심 지표.