15가지가 넘는 숫자 타입을 지원하는 SIMD 가속 거리·내적·행렬 연산 커널로, Python, Rust, C/C++, JS, Swift, Go 바인딩을 제공합니다.
OpenMathLib/OpenBLAS
GPU를 제외한 다양한 CPU 아키텍처에 최적화된 오픈소스 BLAS 및 LAPACK 선형대수 라이브러리입니다.
대체할 수 있는 제품:Intel MKL
- 스타
- 7,669
- 포크
- 1,751
- 열린 이슈
- 163
- 마지막 커밋
- 5시간 전
어떤 프로젝트인가요?
OpenBLAS는 수치 계산 소프트웨어에서 벡터와 행렬 연산에 사용하는 표준 저수준 구성 요소인 BLAS(Basic Linear Algebra Subprograms) 루틴을 구현한 라이브러리입니다. BSD 라이선스의 GotoBLAS2 1.13을 기반으로 하며, 상위 수준 선형대수 패키지인 LAPACK과 LAPACKE C 인터페이스도 함께 제공합니다.
이 라이브러리는 Sandy Bridge부터 Sapphire Rapids까지의 Intel x86-64 세대, AMD Zen, Neoverse 및 Cortex-A 계열과 같은 ARM64 코어, POWER, IBM Z, RISC-V 벡터 확장, LoongArch 등 다양한 프로세서에 최적화된 커널을 제공합니다. DYNAMIC_ARCH 빌드를 사용하면 하나의 라이브러리에 여러 타깃을 포함하고 실행 시 적합한 커널을 선택할 수 있습니다. 빌드는 make 또는 CMake로 진행하며 크로스 컴파일도 지원합니다.
OpenBLAS는 GNU/Linux, Windows(MinGW 또는 Visual Studio), macOS 및 여러 BSD 변형에서 실행되며 WebAssembly에서도 사용할 수 있습니다. 스레드 수는 환경 변수나 런타임 함수로 제어할 수 있습니다.
핵심 기능
- 01BLAS를 구현하고 LAPACKE C 인터페이스와 함께 LAPACK을 제공합니다.
- 02다양한 x86, ARM64, POWER, IBM Z, RISC-V 및 LoongArch CPU에 최적화된 커널을 제공합니다.
- 03DYNAMIC_ARCH 빌드는 여러 CPU 타깃을 포함하고 실행 시 커널을 선택합니다.
- 04크로스 컴파일을 포함해 make 및 CMake 빌드를 지원합니다.
- 05환경 변수나 런타임 함수로 스레드 수를 설정할 수 있습니다.
- 06Windows 바이너리 패키지와 다양한 패키지 관리자를 통해 사용할 수 있습니다.
활용 사례
- 과학 계산 및 수치 라이브러리에서 행렬과 벡터 연산을 가속합니다.
- R, NumPy, SciPy 또는 기타 수치 계산 스택의 BLAS/LAPACK 백엔드로 사용합니다.
- 다양한 아키텍처의 임베디드 또는 서버 CPU에서 고성능 선형대수 코드를 빌드합니다.
- WebAssembly 빌드를 통해 브라우저에서 수치 계산 작업을 실행합니다.
빠른 시작
- 1
GitHub에서 소스 코드를 가져옵니다(기본 브랜치는 develop입니다).
- 2
make로 라이브러리를 빌드합니다(CPU는 자동으로 감지됩니다).
make - 3
원하는 디렉터리에 설치합니다.
make install PREFIX=your_installation_directory
사용 전 알아둘 점
- GPU는 지원하지 않습니다.
- 소스에서 빌드하려면 C 컴파일러가 필요하며, 일부 CPU 대상은 아직 초기 단계로 지원됩니다.
토픽
자주 묻는 질문
- OpenBLAS은(는) 무엇인가요?
- GPU를 제외한 다양한 CPU 아키텍처에 최적화된 오픈소스 BLAS 및 LAPACK 선형대수 라이브러리입니다. OpenBLAS는 수치 계산 소프트웨어에서 벡터와 행렬 연산에 사용하는 표준 저수준 구성 요소인 BLAS(Basic Linear Algebra Subprograms) 루틴을 구현한 라이브러리입니다. BSD 라이선스의 GotoBLAS2 1.13을 기반으로 하며, 상위 수준 선형대수 패키지인 LAPACK과 LAPACKE C 인터페이스도 함께 제공합니다.
- OpenBLAS은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- OpenBLAS은(는) BSD-3-Clause 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- OpenBLAS은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. OpenBLAS의 마지막 커밋은 2026년 11월 7일입니다.
- OpenBLAS은(는) 어디에 사용할 수 있나요?
- 과학 계산 및 수치 라이브러리에서 행렬과 벡터 연산을 가속합니다. R, NumPy, SciPy 또는 기타 수치 계산 스택의 BLAS/LAPACK 백엔드로 사용합니다. 다양한 아키텍처의 임베디드 또는 서버 CPU에서 고성능 선형대수 코드를 빌드합니다. WebAssembly 빌드를 통해 브라우저에서 수치 계산 작업을 실행합니다.
- OpenBLAS는 어떻게 설치하나요?
- GitHub에서 소스 코드를 가져옵니다(기본 브랜치는 develop입니다). make로 라이브러리를 빌드합니다(CPU는 자동으로 감지됩니다).: make 원하는 디렉터리에 설치합니다.: make install PREFIX=your_installation_directory
- OpenBLAS은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/OpenMathLib/OpenBLAS
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
빠른 N차원 배열 객체를 중심으로 한 과학 컴퓨팅용 핵심 Python 패키지입니다.
NVIDIA GPU 또는 멀티스레드 CPU에서 실행되는 NumPy 스타일 텐서 표현식과 선택적 커널 퓨전을 지원하는 C++20 헤더 전용 라이브러리입니다.
NVIDIA GPU에서 고성능 GEMM 및 관련 선형대수 커널을 작성하기 위한 CUDA C++ 템플릿 라이브러리이자 Python DSL입니다.
브라우저와 Node.js에서 사용할 수 있는 JavaScript 및 TypeScript용 수치·과학 컴퓨팅 표준 라이브러리입니다.
NumPy 배열 수식을 청크 단위로 계산해 메모리 사용량을 줄이고 여러 코어를 활용하는 고속 표현식 평가기입니다.