kokkos/kokkos-kernels
Kokkos C++ Performance Portability Programming Ecosystem: Math Kernels - Provides BLAS, Sparse BLAS and Graph Kernels
해결하는 문제
Kokkos Kernels는 선형 대수 및 그래프 연산을 위한 고성능이고 포터블한 수학 커널 세트를 제공합니다. 예를 들어 희소 행렬 곱셈과 같은 복잡한 계산 커널을 특정 장치마다 코드를 다시 작성하지 않고도 다양한 하드웨어 아키텍처에서 효율적으로 실행할 수 있도록 합니다.
작동 방식
Kokkos의 공유 메모리 병렬 프로그래밍 모델을 기반으로 하며, '로컬' 계산 커널을 구현합니다. 즉, 단일 MPI 프로세스 내에서 또는 MPI 없이도 작동합니다. 공개 인터페이스와 내부 구현을 분리함으로써 템플릿 매개변수의 완전 특수화를 사용할 수 있습니다. 이 접근 방식은 특정 데이터 유형에 대해 커널을 미리 컴파일함으로써 빌드 시간을 단축하고 컴파일러 최적화를 향상시킵니다.
대상 사용자
Tpetra와 같은 병렬 선형 대수 라이브러리 개발자 또는 공유 메모리 시스템에서 고성능 수학 연산이 필요한 애플리케이션 개발자에게 적합합니다.
주요 특징
- 선형 대수 지원: 내적, 노름, AXPY 유사 벡터 업데이트, 희소 행렬-벡터/행렬-행렬 곱셈 포함.
- 그래프 연산: 그래프 색칠 및 색칠된 가우스-자이델용 커널 제공.
- 성능 포터블리티: Kokkos를 활용해 다양한 하드웨어 백엔드에서 효율적으로 실행되도록 보장.
- 유연한 통합: 독립적인 라이브러리로 사용하거나, 더 큰 병렬 프레임워크의 구성 요소로 활용 가능.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트