llama.cpp 프로젝트는 Metal 백엔드의 텐서 API 행렬 곱셈 커널의 치명적인 버그를 해결한 빌드 b10545를 출시했습니다. 이 업데이트는 K 차원이 32의 배수가 아닌 텐서를 처리할 때 정의되지 않은 동작과 손상된 결과를 방지합니다.
- matmul2d 연산은 이제 정적 타일 크기 대신 K에 dynamic_extent를 사용합니다.
- 각 반복마다 연산자 텐서 뷰는 남은 유효한 K 범위로 클램프됩니다.
- 이 변경은 이전에 NaN 값이나 데이터 손상을 초래했던 바운드 밖 읽기를 제거합니다.
- 정렬되지 않은 K 경로를 테스트하고 수정을 검증하기 위해 테스트 케이스가 추가되었습니다.
이 수정은 Apple Silicon 장치에서 정렬되지 않은 행렬 차원을 가진 모델에 대한 수치적 안정성을 보장하여 추론 중 침묵 오류를 방지합니다.