본문 바로가기
IT생활

멀티 소켓 EPYC 시스템에서 PCIe 레인이 불리해지는 이유

by 우물 밖 개구리. 2025. 2. 17.
반응형

멀티 소켓 EPYC 시스템에서 PCIe 레인이 불리해지는 이유

AMD EPYC 프로세서는 단일 소켓(1P)과 듀얼 소켓(2P) 시스템에서 PCIe 레인 구조가 달라지기 때문에, 멀티 소켓을 사용하면 오히려 PCIe 레인이 불리해질 수 있다.


1️⃣ EPYC의 PCIe 레인 구성 (1P vs 2P 비교)

✅ 단일 소켓 (1P) 시스템

  • 최신 EPYC 9004 시리즈 (Genoa, Bergamo) 기준으로 PCIe 5.0 레인 128개 제공
  • 모든 PCIe 레인이 CPU 하나에서 직접 연결됨
  • 최상의 대역폭과 지연시간을 제공

❌ 듀얼 소켓 (2P) 시스템

  • EPYC 2P 시스템에서는 각 CPU당 128개의 PCIe 레인을 갖지만, 일부가 소켓 간 연결(인터커넥트)로 사용됨
  • Infinity Fabric을 통한 연결로 인해 사용 가능한 PCIe 레인이 줄어듦
  • 예를 들어, 각 CPU당 64개씩, 총 128개 PCIe 레인이 남게 되는 경우도 있음
  • 소켓 간 통신 오버헤드 증가 (NUMA 영향으로 성능 손실 발생 가능)

📌 즉, 단일 소켓에서는 모든 PCIe 레인을 직접 사용할 수 있지만, 듀얼 소켓에서는 일부 레인이 CPU 간 통신을 위해 소모되므로 불리해진다.


2️⃣ 멀티 소켓에서 PCIe가 불리해지는 이유

  1. Infinity Fabric 인터커넥트로 인해 사용 가능한 PCIe 레인 감소
    • EPYC의 소켓 간 통신(Inter-Socket Communication)을 위해 PCIe 레인의 일부를 사용
    • 이 때문에 듀얼 소켓 시스템에서는 실질적으로 사용할 수 있는 PCIe 레인이 줄어듦
  2. NUMA 아키텍처로 인해 PCIe 장치 간 성능 차이 발생
    • PCIe 장치가 CPU 0에 연결되면, CPU 1에서 접근할 때 추가적인 지연시간 발생
    • 단일 소켓에서는 모든 PCIe 장치가 같은 NUMA 노드에 연결되므로 이런 문제가 없음
  3. 멀티 소켓 시스템은 단일 소켓보다 플랫폼 비용이 높고 복잡
    • 듀얼 소켓 메인보드는 일반적으로 PCIe 슬롯 구성이 더 제한적
    • 단일 소켓 메인보드는 더 많은 PCIe 슬롯을 제공하는 경우가 많음

3️⃣ 언제 멀티 소켓을 선택해야 할까?

멀티 소켓은 일반적으로 고성능 병렬 연산(HPC), 데이터베이스 서버, 대형 가상화 환경에서 필요하다. 하지만 PCIe 장치(예: GPU, SSD)를 많이 사용하는 환경에서는 오히려 단일 소켓이 유리할 수 있다.

멀티 소켓이 필요한 경우:

  • CPU 코어 수가 중요한 워크로드 (예: 대규모 가상화, HPC, AI/ML)
  • RAM 용량이 중요한 워크로드 (NUMA 최적화 가능)

단일 소켓이 더 유리한 경우:

  • PCIe 대역폭이 중요한 환경 (예: GPU 서버, 고속 NVMe 스토리지 서버)
  • 단일 NUMA 노드에서 최상의 성능을 원하는 경우

📌 결론: EPYC 멀티 소켓을 선택할 때 PCIe 레인 손실을 고려해야 함

  • EPYC 1P (단일 소켓) 시스템이 PCIe 활용에 더 유리
  • EPYC 2P (듀얼 소켓) 시스템은 CPU 간 통신을 위해 PCIe 레인이 일부 소모되므로 불리
  • NUMA 구조 때문에 PCIe 장치 성능 차이가 발생할 수 있음
  • PCIe 장치를 많이 활용하는 서버(GPU 서버, 스토리지 서버)라면 단일 소켓이 더 적합

📌 결론적으로, EPYC의 멀티 소켓을 고려할 때는 "코어 수 vs PCIe 레인" 트레이드오프를 잘 따져봐야 한다.

반응형