Embedded systems are a mixture of software running on a microprocessor and application-specific hardware. Hardware/Software co-design requires an appropriate profiler to detect the functions that contribute to a large percentage of program execution. Software based profiling tools, such as the well-known GNU gprof profiler, integrates an extra code with the software program to be profiled causing a significant performance overhead. To address this issue, this paper proposes a software profiler called AddressTracer. This profiler is an adaptation of a non-intrusive, real time profiler called SnoopP. The AddressTracer is accurately able to evaluate the performance matrices of any specific software function. Two benchmarks, Dijkstra and Secure Hash Algorithm, are profiled using AddressTracer and other software profiling tools, Airwolf, and GNU software profiling tool "gprof, for a quantitative comparison and their performance overhead are studied. The achieved results show that AddressTracer provides accurate profiling results with no performance overhead. Airwolf causes a very low remarkable performance overhead compared with that incurred by gprof.
|Number of pages||18|
|Journal||Journal of Engineering and Applied Science|
|Publication status||Published - Feb 2009|
- Embedded systems
- Hardware/software co-design
- Software profiling
ASJC Scopus subject areas