AVX-VNNI를 사용한 바이트 행렬 곱셈 최적화

2025-01-10
AVX-VNNI를 사용한 바이트 행렬 곱셈 최적화

이 글에서는 AVX-VNNI 명령어 세트를 사용하여 바이트 행렬 곱셈을 최적화하는 방법을 살펴봅니다. 저자는 먼저 단순한 구현부터 시작하여 gemmology 및 xsimd 라이브러리를 사용하여 전치 및 사용자 정의 레이아웃을 사용한 최적화된 버전을 만듭니다. 벤치마크 결과는 사용자 정의 레이아웃이 최상의 성능을 달성하고 vpdpbusd 명령어를 활용하여 효율성을 크게 향상시킨다는 것을 보여줍니다. 이 글에서는 gemmology 라이브러리의 maddw 함수의 자세한 구현 및 아키텍처 변형에 대해서도 자세히 설명합니다.

개발 행렬 곱셈