giaf/blasfeo
Basic linear algebra subroutines for embedded optimization
해결하는 문제
BLASFEO는 프로세서 캐시에 맞는 작은 행렬에 특별히 최적화된 고성능 기본 선형 대수 루틴을 제공합니다. 이는 임베디드 최적화 응용 프로그램에서 흔히 사용되는 행렬을 다룰 때 일반적으로 발생하는 표준 BLAS 라이브러리의 성능 오버헤드를 해결합니다.
작동 방식
이 라이브러리는 호환성을 위해 표준 BLAS API와 작은 규모 연산의 오버헤드를 최소화하기 위해 설계된 전용 BLASFEO API를 두 가지 별개의 API로 제공합니다. 캐시 효율을 향상시키기 위해 고유한 "패널 메이저" 행렬 형식을 사용하며, 다양한 x86 및 ARM 아키텍처에 맞춘 타겟 맞춤형 어셈블리 구현도 포함합니다. 사용자는 필요에 따라 고성능, 참조, 또는 외부 래퍼 구현 중 하나를 선택할 수 있습니다.
대상 사용자
Intel, AMD, ARM(Apple M1, Cortex 시리즈 등)을 포함한 다양한 하드웨어 타겟에서 작은 행렬에 대한 빠른 선형 대수 연산이 필요한 임베디드 최적화 응용 프로그램 개발자들을 위한 것입니다.
주요 특징
- 캐시 최적화: 일반적으로 각 차원이 수백 정도까지의 행렬에 특화되어 있습니다.
- 광범위한 하드웨어 지원: AVX-512, AVX2, SSE, ARM NEON 등 다양한 아키텍처에 최적화되어 있습니다.
- 유연한 형식: 표준 열 우선 형식과 더불어 고속을 위한 고유의 패널 메이저 형식도 지원합니다.
- 비破壊 API: BLASFEO API는 출력을 위한 추가 인자를 포함하여 입력 데이터를 수정하지 않습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트