Login

Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.

ARM Embedded Software Optimization

ARM Training Course

Details on this training course are provided below. Please contact Support for information about booking any of ARM's training courses.



Summary:

The embedded software optimization course focuses on the Cortex-A family of 32-bit application processors from ARM. The first 2 days are split between practicals (which make up for at least 50% of the time) and technical presentations. The final day focuses on vectorizing code using the Advance SIMD (NEON) instruction set. The practicals are based on an ARM Linux environment using GCC, the latest debug tools (DS-5) and models (Fast Models) from ARM. Although the practical focuses on a Linux application environment, the theory covers all the topics required to apply the principles to bare-metal applications.

Prerequisites:

  • Knowledge and experience of coding in C and Assembler
  • Familiarity with the ARM Architecture (Instruction Set, MMU, Caches)
  • Experience with GCC and ARM development tools is not required
    (but would be beneficial)

Audience:

Software engineers involved in any development where performance is likely to be a critical issue and who need to learn techniques which will help them get the best out of the tools and platforms available.

Length:

2 days (+ ½ for NEON)

Modules:

  • Benchmarking techniques
  • Processor setup
  • Compiler basics (GCC)
  • Streamline (DS-5 profiler)
  • Compiler optimization
  • Architecture Optimizations
  • System level optimizations
  • Threading (Ptheads basics)
  • NEON Introduction
  • NEON Vectorization

Download PDF Version

[ Go back to Training Course list ]