github.devotd.
NewInference & serving

arm-software/computelibrary — Low-level ML functions for Arm CPU·Mali GPU

Introduces computelibrary, a collection of low-level machine learning functions optimized for Arm CPUs and Mali GPUs, along with its latest release v53.3.1.

Repositoryarm-software/computelibrary ↗

Introduces computelibrary, a collection of low-level machine learning functions optimized for Arm CPUs and Mali GPUs, along with its latest release v53.3.1.

GitHub description: The Compute Library is a set of computer vision and machine learning functions optimised for both Arm CPUs and GPUs using SIMD technologies.

stars
★ 3.2K
Forks
822
Language
C++
Latest release
v53.3.1
Read original source ↗View on GitHub ↗

arm-software/computelibrary is a collection of low-level computer vision and machine learning functions targeting Arm CPUs and Arm GPUs. It is written in C++ and contains functions optimized for the Arm Cortex-A, Arm Neoverse, and Arm Mali GPU architectures using SIMD operations. The repository's latest release is v53.3.1.

This repository is not a framework for designing models, but a collection of the low-level functions where the actual computation happens underneath. It provides more than 100 machine learning functions for both CPU and GPU along with several convolution algorithms, and supports the FP32, FP16, INT8, UINT8, and BFLOAT16 data types. Being able to pick functions separately per precision widens the options in environments where memory and compute requirements differ. It also provides build options that can be configured per architecture and an OpenCL tuner. The README states that the project is released under the MIT license. The repository, started in March 2017, has collected 3196 stars.

Still, there are points that need checking. It is not possible to know what v53.3.1 changed, because the provided release information contains no changelog. Since the optimizations presuppose Arm Cortex-A, Arm Neoverse, and Arm Mali GPU, it is not possible to know what results would be obtained on other CPU or GPU environments. The claim of an MIT license appears in the README, but the license field in the repository information is empty, so the actual terms of application must be confirmed in the original source. No performance figures or comparison targets are given, so it is premature to judge how fast it is on real workloads. It is a repository worth checking first if you deal with Arm hardware, but it is hard to regard it as a general-purpose acceleration library.