728x90
— 32.0 GT/s가 아닌 장치를 어떻게 판단하고, 어디까지가 정상인가
1️⃣ 왜 PCIe 링크 속도가 중요한가?
최근 AI/HPC 서버는 GPU와 CPU 간의 데이터 전송 속도가 병목이 되지 않도록
PCI Express (PCIe) Gen5 인터페이스를 적극적으로 사용합니다.
PCIe의 전송속도는 세대(Generation)에 따라 다릅니다.
| 세대 | 전송속도 (GT/s) | 대략적인 대역폭 (x16 기준, 양방향) | 주요 용도 |
| Gen1 | 2.5 GT/s | 약 8 GB/s | BMC, 저속 컨트롤러 |
| Gen2 | 5.0 GT/s | 약 16 GB/s | USB, SATA, 관리용 |
| Gen3 | 8.0 GT/s | 약 32 GB/s | 일반 SSD, 10G NIC |
| Gen4 | 16.0 GT/s | 약 64 GB/s | NVMe, 100G NIC |
| Gen5 | 32.0 GT/s | 약 128 GB/s | GPU, AI 가속기 |
즉, GPU처럼 데이터 전송량이 큰 장치는 반드시 Gen5(32.0 GT/s) 로 동작해야
병목 없이 성능을 발휘할 수 있습니다.
2️⃣ lspci로 확인하기
GPU 서버에서는 다음 명령으로 PCIe 링크 상태를 조회할 수 있습니다.
lspci | grep -i nvidia
cat /sys/bus/pci/devices/0000:17:00.0/current_link_speed
cat /sys/bus/pci/devices/0000:17:00.0/current_link_width
출력 예시:
32.0 GT/s PCIe
x16
이 값이 32.0 GT/s + x16 이라면 정상적인 Gen5 풀레인 동작입니다.
3️⃣ 그런데 2.5 GT/s 장치도 있다?
PCIe 링크를 전부 조회하면 다음과 같이 다양한 속도가 섞여 나옵니다.
32.0 GT/s PCIe
16.0 GT/s PCIe
8.0 GT/s PCIe
2.5 GT/s PCIe
처음 보면 “Gen1 장치가 고장난 건가?” 하고 놀라기 쉽지만,
실제로는 서버 내 모든 PCIe 장치가 표시된 결과입니다.
4️⃣ 서버 내부의 PCIe 트리 구조
PCIe는 단순한 ‘슬롯 나열’이 아니라 다음과 같은 계층 구조(Tree) 로 되어 있습니다.
CPU (Root Complex)
├── PCIe Switch (Upstream Port)
│ ├── GPU0 (x16, 32.0 GT/s)
│ ├── GPU1 (x16, 32.0 GT/s)
│ ├── GPU2 (x16, 32.0 GT/s)
│ └── GPU3 (x16, 32.0 GT/s)
├── BMC Controller (x1, 2.5 GT/s)
├── SATA Controller (x4, 5.0 GT/s)
└── NIC (x16, 16.0 GT/s)
즉,
- GPU나 NIC 같은 고속 장치는 Gen5~4 로 동작해야 하고,
- BMC, USB, 센서 등은 Gen1~2 로 충분합니다.

5️⃣ 어떤 장치가 Gen5가 “필수”인가?
| 장치 유형 | 예시 디바이스 | 필요 세대 | 이유 |
| GPU / AI 가속기 | NVIDIA H100 PCIe, AMD MI300X | Gen5 (32.0 GT/s) | 연산량이 많아 대역폭 필수 |
| NVMe SSD | Samsung PM9A3, Kioxia CM7 | Gen4 (16.0 GT/s) | I/O 대역폭 확보 |
| 고속 NIC | Mellanox ConnectX-6/7 (200/400G) | Gen4~5 | RDMA, AI 데이터 전송용 |
| PCIe Switch (Upstream) | Broadcom PEX88096 | Gen5 | GPU 간 데이터 중계 |
| NVLink Bridge / Retimer | NVIDIA NVSwitch, Astera Labs ARIES | Gen5 | GPU ↔ GPU 통신 |
| BMC / 관리용 칩 | ASPEED AST2600 | Gen1 (2.5 GT/s) | 관리용 저속 통신 |
| USB / SATA 컨트롤러 | Intel, ASMedia | Gen2~3 | 고속 불필요 |
➡️ 요약하면
GPU, NVMe, NIC, PCIe Switch 포트만 Gen5(또는 최소 Gen4) 확인이 필요하고,
그 외는 느려도 정상입니다.
6️⃣ Gen5 속도가 안 잡히는 경우 (트러블슈팅)
| 증상 | 가능한 원인 |
| GPU가 Gen5 대신 Gen4로 표시 | 슬롯 신호 품질 저하 / 케이블 불량 / 라이저 접촉 문제 |
| 모든 GPU가 Gen4로 동작 | BIOS가 Gen4로 강제 설정됨 |
| 간헐적으로 속도가 바뀜 | 리타이머 발열 / PCIe re-train 불안정 |
| Link error 메시지 존재 | 물리 계층(AER) 오류, 전원 노이즈 |
확인 명령
lspci -vvv -s 17:00.0 | grep -E "LnkCap|LnkSta"
dmesg | grep -iE "pcie|aer|error"
7️⃣ 핵심 정리 요약
| 구분 | 필요 속도 | 정상 범위 | 비고 |
| GPU | 32.0 GT/s (Gen5) | ✅ OK | 아니면 물리적 문제 가능 |
| NVMe SSD | 16.0 GT/s (Gen4) | ✅ OK | Gen3면 성능 절반 |
| NIC | 16.0~32.0 GT/s | ✅ OK | RDMA, 대역폭 확인 |
| BMC / USB / 기타 | 2.5~8.0 GT/s | ✅ OK | 무시 가능 |
💬 결론
✅ “32.0 GT/s”는 Gen5 GPU 슬롯의 건강 지표다.
⚙️ Gen5가 필요한 장치가 낮은 세대로 협상된다면,
케이블·라이저·리타이머·BIOS 설정을 우선 점검해야 한다.
💡 반대로 BMC나 컨트롤러가 2.5 GT/s여도 정상이다 —
그건 단순히 “관리용 저속 링크”일 뿐이다.
📚 참고 명령 요약
# GPU 링크 속도/폭 확인
lspci | grep -i nvidia
cat /sys/bus/pci/devices/0000:17:00.0/{current_link_speed,current_link_width}
# 모든 PCIe 장치 속도 일괄 확인
for dev in /sys/bus/pci/devices/0000:*/current_link_speed; do
echo -n "${dev%/current_link_speed}: "
cat $dev
done | grep -i pcie
✍️ 요약
“Gen5는 데이터, Gen1은 관리.
즉, GPU·NIC·NVMe만 Gen5로 달리고,
나머지는 느려도 괜찮다.”
728x90