GCC 컴파일러의 최신 업데이트는 AMD의 Zen 5 아키텍처에 대한 중요한 조정을 포함하고 있으며, 특히 gather 명령어의 성능을 다루고 있습니다. 조정 결과, 이전에 Zen 4에서 비활성화되었던 gather 명령어가 Zen 5에서 성능이 향상되었지만 여전히 복잡한 상황을 나타냅니다. 벤치마크 결과에 따르면, parest 벤치마크에서 5-10%의 성능 손실이 발생하고, TSVC의 희소 점곱(sparse dot products)에서는 30%의 손실이 나타났습니다. 흥미롭게도, 마이크로벤치마크 테스트에서는 gather 명령어의 성능 영향이 인덱스의 분포에 따라 달라진다는 것을 보여줍니다: 순차 인덱스에서는 성능이 저조하고, 무작위 인덱스에서는 중립적이며, 특정 보폭(4, 8)에서는 더 나은 결과를 낼 수 있습니다. 이러한 복잡성으로 인해 신뢰할 수 있는 휴리스틱이 확립될 때까지 gather 명령어를 기본적으로 비활성화하기로 결정했습니다. 이 기사에서는 진행 중인 문제를 강조하는 GCC 버그 보고서도 언급하며, 컴파일러 성능과 기능에 영향을 미칠 수 있는 LLVM 19의 출시도 예정되어 있음을 알립니다.
전반적으로, GCC 컴파일러의 Zen 5 조정은 AMD가 성능을 최적화하고 아키텍처 전반에 걸쳐 일관성을 유지하기 위한 지속적인 노력을 반영하고 있으며, 특히 이전 Zen 버전과의 관계에서 그러합니다.
* 이 글은
phoronix.com의 기사를 요약한 것입니다. 전체 기사의 내용은
이곳에서 확인하실 수 있습니다.