DS-5 Tutorials

In this section you can find links to step-by-step tutorials that will help you get you set up with Arm DS-5 Development Studio in almost no time.

The tutorials are split into categories associated to the product functionality, and serve as practical hands-on guide to complement the comprehensive product documentation.

Get Started

Using DS-5, write your first "Hello World" C program for Arm with these tutorials, covering Arm Compiler for bare-metal and GCC for Linux. We have also included a short guide for installation and licensing.

Getting Started with Arm DS-5
Linux application debugging using Arm DS-5
Debugging on bare-metal targets using DS-5 and GCC compiler


Get set up with DS-5 by following our licensing tutorials. These guides walk you through generating your license to renewing your support and maintenance entitlement, so that you can focus on getting the most out of DS-5 knowing that our experts are always on hand.

Renewing your support and maintenance entitlement
Installing floating licenses for DS-5
Installing node-locked licenses for DS-5
Upgrading from RVDS to DS-5

Project Management and Code Editing

Get to know the Eclipse environment on which Arm DS-5 Development Studio is based. This tutorial guides you through importing the range of example projects that are packaged with DS-5, so that you can get a FVP model or development board up and running easily.

Importing the DS-5 Example Projects
Building bare-metal applications in DS-5 using GCC compiler
Adding New Compiler Toolchains to DS-5
Using Subversion with Eclipse for DS-5
Using Git with Eclipse for DS-5

Arm Compiler 5

Understanding the Arm Compiler (armcc) is essential to producing efficient C code, as its host of optimization techniques such as common subexpression elimination, NEON autovectorization and instruction scheduling are tied fundamentally into the Arm architecture. Knowing when to use optimization levels -O0, -O1, -O2 and -O3 can improve your code for either execution time or code size. Follow the tutorials from the basics of compiling “Hello World”, to understanding advanced features and get the most out of your processor.

Building "Hello World" using the Arm Compiler
Beyond "Hello World": Advanced Arm Compiler 5 Features
Arm Compiler optimization
Accessing memory-mapped peripherals
Targeting processors, floating-point units, and NEON 
Using inline assembly to improve code efficiency

Arm Compiler 6

Arm Compiler 6 is Arm's LLVM-based next-generation toolchain. Learn how to use it for code generation when working with bare-metal embedded systems, based on the Armv8 architecture.

Arm Compiler 6: Bare-metal Hello World C using the Armv8 model
Migrating Projects from Arm Compiler 5 to Arm Compiler 6

Profiling and System Optimization

Streamline is a great tool for inspecting overall system performance and drilling down into processes or individual lines of code which are causing bottlenecks and hotspots. These tutorials show you how to open the sample report, get Streamline working on Android devices and more generally to optimize applications on Linux systems.

Android Performance Analysis (Streamline) Tutorial
Analyzing the Example Streamline Report
Linux Performance Analysis (Streamline) Tutorial
Using Streamline to Optimize Applications for Mali GPUs
Using DS-5 and Streamline with Linux on Armv8-based platforms
Using the Performance Monitoring Unit (PMU) Event Counters in DS-5