RADV 드라이버, Radeon GPU를 위한 Vulkan의 오픈 소스 구현체가 VK_KHR_shader_fma 확장에 대한 지원을 추가했습니다. 이 확장은 올바른 반올림을 갖춘 FMA(fused multiply-add) 연산을 가능하게 하여, 계산 부하를 증가시키지 않으면서 계산에 더 높은 정밀도를 제공합니다. 이는 모든 소수점이 중요한 머신 러닝 및 과학 컴퓨팅에 있어 중요한 진전입니다.
성능 저하 없는 수학적 정밀도 🎯
VK_KHR_shader_fma 확장은 곱셈과 덧셈을 정확한 반올림으로 단일 연산에 통합하는 FMA 명령어를 활성화합니다. 이는 분리된 연산에서 일반적으로 발생하는 누적 오류를 방지합니다. RADV는 이미 Radeon용으로 이를 구현했으며, NVIDIA용 드라이버인 NVK도 이를 활성화하여 해당 GPU에서 OpenCL 성능을 향상시켰습니다. 두 가지 개선 사항 모두 Mesa 26.2와 함께 제공되어, AI 및 과학 시뮬레이션 개발자가 하드웨어를 건드리지 않고도 계산을 미세 조정할 수 있게 해줍니다.
이제 당신의 소수점에도 권리가 있습니다 😄
드디어 부동 소수점 숫자가 차별받는 느낌에서 벗어나게 됩니다. FMA를 사용하면 각 곱셈과 덧셈이 잘 어울리며, 양자 물리 시뮬레이션을 망치는 중간 반올림이 없습니다. 그리고 NVK도 이 파티에 합류하는 것은 마치 Linux와 NVIDIA가 같은 식탁을 공유하는 것을 보는 것과 같습니다. 물론 기적을 기대하지는 마세요. 코드가 이미 엉망이라면 FMA도 구할 수 없습니다. 하지만 적어도 이제 오류는 드라이버 탓이 아니라 당신 탓이 될 것입니다.