ERC32 Ada Key Characteristics
Introduction
ERC32 Ada has a compact high-performance run-time system that is considerably
smaller and faster than others we have evaluated. For example, we looked at
another GNAT-based compiler using the RTEMS real-time kernel and compared its
performance with ERC32 Ada. The results are summarized in this report.
The information was prepared December 1999 in response to a query from a
customer who is already using the "free" version from ESTEC. It compares
the latest compilation system from ESTEC – erc32ccs Version 2.0.7, dated
November 26, 1999, with ERC32 Ada Version 1.2.
Methods
For code size, we measured program size. That is the size of the linked
executable program, which includes all instructions, read-only data, and static
data. The size does not include the stack or the heap.
We measured the size using the ‘size’ utility, erc-coff-size for ERC32 Ada,
and sparc-rtems-size for erc32ccs.
For execution time we used the ERC32 simulator and the ERC32’s real-time
clock. Both compilation systems initialize the clock to tick at one microsecond,
so we had the capability of measuring quite short periods of time with a
resolution of one microsecond.
The results that show execution time give the raw times, followed by the
times adjusted to account for the differing clock speed: the ERC32 Ada simulator
runs at 10MHz (the speed of the Saab Ericsson DEM32 board), and the ERC32CCS
simulator runs at 14MHz.
Program Size
The program size is the number of bytes of PROM that the program requires.
The size omits the run-time data areas such as the stack, but does include the
code and data needed to initialize the static variable data area.