TL;DR

  • 듀얼 소켓 NVIDIA Vera의 176개 Olympus 코어·352개 스레드에서 SMT 활성화와 비활성화를 비교해 공간 멀티스레딩의 성능 영향을 측정함.
  • Vera의 공간 멀티스레딩(Spatial Multithreading, SMT)은 실행 유닛을 동적으로 시분할하는 대신 코어 하드웨어 자원을 물리적으로 분할하는 방식임.
  • NVIDIA는 이 SMT 구현이 자원 활용률과 동작 예측 가능성을 높이며, 특히 에이전트형 AI(agentic AI) 작업 부하에 유리하다고 봄.
  • SMT는 기본 활성화 상태이며, 다른 CPU의 SMT처럼 실행 중에도 /sys/devices/system/cpu/smt/control 인터페이스로 비활성화할 수 있음.
  • 수정된 Ubuntu 24.04, Linux 6.17 64K 커널, GCC 15.3 환경에서 다수의 코어와 스레드로 확장되는 벤치마크를 수행하고, 최고 CPU 주파수와 전력 소비도 관찰함.

서론

  • 최근 원격으로 NVIDIA Vera 서버에 접근할 수 있게 되어 성능을 시험함. 서버는 듀얼 소켓 Vera CPU 슈퍼칩으로 176개 Olympus 코어를 제공하며, NVIDIA의 공간 멀티스레딩 구현으로 총 352개 스레드를 지원함.
  • CPU 전력과 주파수 모니터링을 포함해 테스트 범위에 제한이 없었으며, 앞으로 몇 주 동안 NVIDIA Vera 성능의 여러 측면을 다루는 기사를 공개할 예정임. 그중에서도 특히 관심을 둔 주제는 Vera의 공간 멀티스레딩임.
  • 공간 멀티스레딩은 NVIDIA Vera에 새로 도입된 기능이며, AMD와 Intel 프로세서의 동시 멀티스레딩(Simultaneous Multithreading, SMT)과 설계가 다름.
  • Vera SMT는 공유 실행 유닛을 동적으로 시분할하는 대신 코어 하드웨어 자원을 물리적으로 분할함.
  • AMD·Intel 프로세서와 마찬가지로 코어당 두 개의 스레드를 제공함.
  • NVIDIA는 자체 SMT 구현이 자원 활용률을 높이고 동작을 더 예측 가능하게 하며, 특히 에이전트형 AI 작업 부하에 적합하다고 봄. NVIDIA 공간 멀티스레딩의 상세 내용은 NVIDIA 기술 블로그에서 확인할 수 있음.
  • 이번 벤치마크에서는 듀얼 소켓 NVIDIA Vera에서 기본 설정인 SMT 활성화 상태와 SMT 비활성화 상태의 성능을 비교함. SMT는 /sys/devices/system/cpu/smt/control sysfs 인터페이스를 통해 실행 중에도 비활성화할 수 있음.
  • NVIDIA가 수정한 Ubuntu 24.04 환경에서 Linux 6.17 64K 커널과 GCC 15.3 컴파일러를 사용해 다양한 벤치마크를 실행함. 테스트는 많은 코어와 스레드로 확장 가능하고, 적어도 Intel·AMD CPU에서는 일반적으로 SMT의 이점을 얻는 종류로 구성함.
  • SMT 설정에 따른 차이를 측정하는 동시에 공간 멀티스레딩이 최고 CPU 주파수와 전력 소비에 미치는 영향도 모니터링함.