TOPIC 1: OPTIMIZE WITH INTRINSICS

Optimize Performance in C/C++ with Arm Intrinsics

Neon and SVE2 Intrinsics are a set of C/C++ functions whose precise implementation is known to the Arm compiler and GCC. They eliminate the need to write in assembly to optimize performance-intensive pieces of code, for the underlying architecture.

 

Video Tutorial on How to Use Neon Intrinsics

  • This is a hands-on video tutorial, showcasing the steps to take to get started using Neon Intrinsics on Android.

Learning Path on Getting Started with Neon Intrinsics

  • This is a hands-on written tutorial for beginners, with a step-by-step guide to what a developer needs to do to use Neon Intrinsics on Android.

Get Started with Scalable Vector Extension 2 (SVE2) Intrinsics on Android

  • This is a hands-on Learning Path tutorial, that walks you through how an app calculating the fused multiply-add (FMA) is implemented using SVE2 Intrinsics on Android NDK.

Optimizing C/C++ Code with Neon Intrinsics Developer Guide

  • This developer guide uses several examples to showcase and explain the use of Intrinsics.

Case Studies, Examples and More Documentation

  • Several intermediate-to-advanced case studies, as well as other documentation detailing how to use Arm Neon and SVE2 architecture Intrinsics for C/C++.
TOPIC 2: OPTIMIZE WITH ADPF

Optimize Thermal and CPU Performance with Android Dynamic Performance Framework (ADPF)

ADPF optimizes the dynamic thermal and CPU management features on Android. ADPF is a set of APIs that interact more directly with power and thermal systems of Android devices.

 

Using ADPF for Unity Based Game Apps

Live Presentation from Arm & Google

  • The Android Game Development Kit (AGDK) includes ADPF. This presentation covers an overview of AGDK and goes into a deep dive on how ADPF works.

ADPF Developer Guide

  • This developer guide covers the main ADPF features and how to use them.
TOPIC 3: SECURE WITH MTE

Improve the Code Quality and Stability with the Memory Tagging Extension (MTE)

MTE is an Armv9 CPU feature, which mitigates memory-related vulnerabilities to improve the security of connected devices.

 

Hands-on Learning Path: Using MTE on Pixel 8

  • Getting Started tutorial, with a step-by-step showcase on how to enable and use MTE on Pixel 8.

Video Tutorial: Using MTE on Pixel 8

  • The video introduces MTE, how it works and the importance of it. Afterwards, it showcases live the steps you need to do to enable MTE, as well as covers the background.

MTE User Guide

  • An in-depth user guide on the background information, as well as how to use MTE, how but reports are provided, how to debug with Android Studio and how to integrate MTE with memory management systems.

Join the Arm Developer Program

 

Arm Developer Program logo

 

Join the Arm Developer Program to build your future on Arm. Get fresh insights directly from Arm experts,
connect with like-minded peers for advice, or build on your expertise and become an Arm Ambassador.

Join Now
Arm Developer Program

Community Support

Learn from the Community

Talk directly to Arm Experts like Roberto Lopez Mendez and the broader Arm community in Discord channel today.

Roberto Lopez Mendez

Roberto is the tech lead of the Arm Developer Advocacy team, charged with showing developers and partners how to make the most of new Arm technologies.

Tell Us What We Are Missing

Think we are missing some resources? Have some examples to share from your experience? Let us know directly via the link below.