Software for Machine Learning on Arm

There are many ways to deploy neural networks on mobile and embedded platforms, from a full framework to low-level primitives that enable you to implement your architecture directly. Get started quickly and easily on Arm hardware.

  • Arm NN

    Arm's inference engine, designed to run networks trained on popular frameworks – such as TensorFlow and Caffe – optimally on Arm IP.

    Learn more
  • Compute Library

    Arm's optimized low-level functions for computer vision and machine learning, focusing on CNNs for 32-bit float and 8-bit integer across a wide array of Arm CPUs and GPUs.

    Learn more
  • CMSIS-NN

    Arm's library of efficient neural network kernels for Arm Cortex-M CPUs.

    Learn more

Frameworks supported by Arm

Arm supports a wide array of machine learning frameworks. If you have requirements that aren't yet supported by our fully optimized stack, you can choose from a range of frameworks and libraries:

  • TensorFlow

    Type: Framework

    Google framework with optimized 32-bit and 8-bit NEON routines for Arm CPUs.
    Includes an OpenCL backend supporting Arm Mali GPU via SYCL.

    TensorFlow Arm setup guide

    Learn more
  • PyTorch

    Type: Framework

    Facebook framework with optimized routines for Arm CPUs with NEON.

    Learn more
  • MxNet

    Type: Framework

    Apache framework with optimized routines for Arm CPUs.
    Open AI version optimized with the Arm Compute Library for CPUs and GPUs.

    MxNet GitHub

    Learn more

  • Microsoft Cognitive Toolkit (CNTK)

    Type: Framework

    Microsoft framework with optimized routines for Arm CPUs with NEON.

    Learn more

  • Caffe

    Type: Framework

    Berkley Vision and Learning Centre framework with several options for running on Arm.
    CaffeOnACL is a version optimized with the Arm Compute Library for CPUs and GPUs.

    CaffeOnACL GitHub

    Learn more
  • Caffe2

    Type: Framework

    Facebook framework with optimized routines for Arm CPUs with NEON.

    Learn more

  • Keras

    Type: API

    A high-level neural networks API, written in Python and capable of running on top of several framework backends including TensorFlow and CNTK.

    Learn more
  • PlaidML

    Type: Keras backend

    Vertex.ai OpenCL framework compatible with Keras API with support for Arm Mali GPU.

    Learn more

Arm libraries and SDKs

Arm provides software products to maximize your Machine Learning applications' performance and minimize time-to-market:

  • Keil MDK

    Arm Development Studio gives you a core set of tools for efficient and reliable application development.

    Learn more

DSP extensions for Arm

  • DSP extensions for Cortex-M

    Cortex-M processors with DSP provide a high level of signal processing and integer performance, while maintaining the energy-efficiency and ease-of-use hallmarks of the Cortex-M family.

    Learn more

  • DSP extensions for Cortex-R

    This instruction set for Cortex-R processors includes enhanced DSP instructions that improve execution performance for arithmetic operations.

    Learn more

Architecture

  • DynamIQ

    DynamIQ technology redefines the multi-core microarchitecture for the industry and is the foundation for future Arm Cortex-A processors.

    Learn more

  • Neon

    Arm Neontechnology is an advanced SIMD architecture that is great for many applications such as image processing, computer vision, and machine learning.

    Learn more

  • Scalable Vector Extension (SVE)

    SVE is the next-generation SIMD instruction set for the Arm architecture.

    Learn more

  • Helium

    Arm Helium Technology is the M-Profile Vector Extension (MVE) for the Arm Cortex-M processor series. Helium is an extension of the Armv8.1-M architecture and delivers a significant performance uplift for machine learning and digital signal processing applications for small, embedded devices.

    Learn more

Tools

Training

Arm training is written and delivered by the world's most experienced Arm technology trainers.

Is your preferred framework or library missing from this list? Email ml@arm.com and let us know!

How-to guides

Learn to develop machine learning applications using Arm-based products and tools with our how-to guides. 

View

Webinars

Discover tips and techniques for your Arm-based machine learning projects with our growing bank of webinars.

View

White papers

To learn more about machine learning on Arm, see our range of available white papers and research papers.

View