ARM introduces Symbian toolset
Symbian developers will be able to get greater insight into the way their code runs on ARM processors thanks to a toolset upgrade.
The microprocessor core developer has released a profiling tool for code running on its cores under the Symbian mobile-phone operating system. The company claims the tool will enable engineers to develop more power-efficient software.
ARM already offers profiling facilities within its RealView development tool suite - what's new here is support for the Symbian operating system.
Elan Lennard, product marketing manager for profiling tools at ARM, says that one of the most important features of the profiler is its ability to handle arbitrarily long streams of trace data, so that developers can analyse the behaviour of their code over hours or even days of operation. Some profilers are limited by the size of the trace buffer on the capture device, making it more difficult to see how the code will work in real situations.
"Because the trace data is on their host PCs, developers can store as much trace as their PC will hold," she said. The company tested the feature by tracing the operation of a port of the Doom PC game on a Symbian system for 142 days, before giving up.
The profiler can also watch for hotspots in code, looking for code blocks or individual instructions that are used a lot, which demand a lot of memory or which involve a lot of memory accesses. Adjusting code that uses a lot of memory accesses can reduce device power consumption.
Profile information can also be used to drive the compiler, for example to have it swap calculated values for intrinsics, or to unroll heavily used loops into streams of instructions that avoid the overhead of conditional branches.
The tool also offers various ways of looking at the code, including a code coverage view that can be used to show what proportion of the code's instructions have been exercised during a test. The tool enables developers to build up code coverage statistic by running a series of test and summing the results, rather than requiring all the testing be done by a single piece of code. This enables developers to right small test routines to add critical code coverage.
The Symbian version of RealView brings the same analysis capabilities to the mobile operating system. Developers can look at how system resources are being used, and the operation of shared libraries, even without access to the source code.
Developers wanting to work with RealView for Symbian will either need to embed a trace macrocell in their chip designs, use emulators or work with the instruction-accurate models of the hardware that ARM can provide.