# ARM-software/CMSIS-DSP

CMSIS-DSP embedded compute library for Cortex-M and Cortex-A

Repository: https://github.com/ARM-software/CMSIS-DSP
Canonical: https://ross.abutalabs.com/products/cmsis-dsp
Homepage: https://arm-software.github.io/CMSIS-DSP
Language: C
License: Apache-2.0
License Family: permissive
Topics: cortex-a, cortex-m, dsp, embedded, fft, filter, matrix, ml, numpy, fixed-point-arithmetic
Last push: 2026-08-14T10:34:58+00:00

## Health v2 (maintenance only)
Score: 96/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 97, release rhythm 93, longevity 100
- inputs: {"age_days": 1554, "days_push": 19, "days_rel": 48, "gap_med": 0, "n_releases_24m": 2}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1073, forks 242 (observed 2026-08-28T04:03:28.870821+00:00)

## What it is
CMSIS-DSP is ARM's optimized embedded compute library providing DSP and math kernels for Cortex-M and Cortex-A processors, including FFT, filtering, matrix operations, statistics, and classical ML kernels. It supports multiple datatypes (f64/f32/f16/q31/q15/q7) with vectorized variants for Helium and Neon, plus a NumPy-compatible Python wrapper for prototyping.

## Use cases
- implement FFT on a Cortex-M microcontroller
- run digital filters on embedded ARM hardware
- do matrix math with fixed-point arithmetic on MCU
- deploy classical ML like SVM on embedded devices
- prototype DSP algorithms in Python then port to C
- compute MFCC features on microcontroller
- optimize math kernels with Neon on Cortex-A

## When to choose
- you're developing on ARM Cortex-M or Cortex-A and need optimized math/DSP kernels
- you need fixed-point (q7/q15/q31) or half-float support for resource-constrained MCUs
- you want a Python prototyping path that maps closely to the C API
- you need vectorized performance via Helium or Neon

## When to avoid
- you're targeting non-ARM platforms like x86 or RISC-V
- you need general-purpose desktop/server math libraries like NumPy or Eigen
- you need deep learning inference rather than classical DSP/ML kernels

## Facets
- artifact type: library
- maturity: stable
- function: machine-learning, math, image-processing, audio-processing, sdk
- domain: embedded-systems, machine-learning
- platform: embedded, cpp, python, cross-platform
- tags: dsp, fft, digital-signal-processing, fixed-point-arithmetic, arm-cortex-m, arm-cortex-a, neon, helium, filters, matrix-math, cmsis, microcontrollers, numpy, algorithms, signal-processing

## Member repositories
- ARM-software/CMSIS-DSP (main) score 96

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:28.870821+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:53:34.583630+00:00, confidence not recorded.
  - readme: https://github.com/ARM-software/CMSIS-DSP (fetched 2026-08-28T04:03:28.870821+00:00, sha 6221e6e51d5b)
  - homepage: https://arm-software.github.io/CMSIS-DSP (fetched 2026-08-29T12:55:14.545954+00:00, sha 99f4bd5f1f14)
- Data as of 2026-08-30T08:39:29.467469+00:00.
