0
칩셋 레이턴시를 측정해봤더니 — 쓸모는 없지만 재밌는 실험
backend
요약
기사 전체 정리
칩셋 레이턴시를 측정해봤더니 — 쓸모는 없지만 재밌는 실험
왜 칩셋을 벤치마킹하나
마더보드 칩셋은 시간이 지나면서 성능 핵심 역할을 거의 다 잃었음. Athlon 64 시절에 메모리 컨트롤러가 CPU로 들어갔고, Sandy Bridge 때 PCIe 레인도 CPU로 올라옴. 지금 칩셋은 IO 기능을 호스팅하지만 성능 방정식에서는 각주 수준임
유용하진 않지만 재미는 있으니까 해보자는 취지. Vulkan 기반 GPU 벤치마크를 수정해서 호스트 메모리에서 GPU 메모리 접근 레이턴시를 측정함. CPU PCIe 슬롯 vs 사우스브리지 PCIe 슬롯 차이를 보는 거임. 테스트 GPU는 1슬롯짜리 Nvidia T1000
플랫폼별 결과
AMD AM5 (Zen 5):
- CPU PCIe 레인: 약 650ns 기본 레이턴시
- B650 칩셋(PROM21 1개) 경유: 1,221ns (+570ns)
- X670E 칩셋(PROM21 2개) 경유: +921ns — 칩셋 하나 더 거치면 레이턴시가 더 늘어남
- 칩셋 경유 시 GPU 캐시 히트 대역폭이 25 GB/s 수준으로 떨어짐
Intel Arrow Lake (Z890):
- CPU PCIe 레인: 785ns (Zen 5보다 높음)
- PCH 경유: +약 550ns (B650의 PROM21 1개와 비슷)
Intel Skylake (Z170):
- CPU PCIe 레인: 535.59ns — 의외로 가장 낮은 기본 레이턴시
- Z170 PCH 경유: +338ns — 현세대보다 오히려 나음
- PCH 경유 시 캐시 히트 대역폭 51 GB/s 이상
AMD AM3+ (990X, Piledriver):
- 모든 PCIe가 외부 노스브리지를 거치는 옛날 구조인데도 기본 레이턴시가 769.67ns로 선방
- SB950 사우스브리지 경유: +602ns
- 990X 노스브리지의 프로브 처리량이 IO 대역폭(10.5 GB/s)을 포화시키는 데 필요한 것의 10배나 됨
미스터리와 결론
VK_MEMORY_PROPERTY_HOST_COHERENT_BIT설정 시 GPU 캐시 히트에도 대량의 프로브 트래픽이 발생하는데, 프로브가 64바이트 캐시라인이 아니라 512바이트마다 1개씩 발생하는 이상한 현상이 있음. 아직 설명 못 함칩셋 PCIe 레인은 수백 ns의 레이턴시 패널티와 대역폭 제한을 부과함. 하지만 SSD나 네트워크 어댑터는 μs~ms 단위 레이턴시이므로 수백 ns는 의미 없음. 멀티 GPU가 사라진 지금, 칩셋은 저렴한 비용과 더 나은 연결성에 최적화될 거지 레이턴시 최적화는 기대하기 어려움
댓글
댓글
댓글을 불러오는 중...