Real-Time Software Profiler for Embedded Systems
Medhat H. A. Awadalla1, Kareem Ezz El-Deen2
1Medhat Hussein Ahmed Awadalla, Electrical and Computer Engineering Department, SQU, Muscat, Oman.
2Kareem Ezz El-Deen, Department of Computer Science, Faculty of Computers and Information / Organization Name, University of Fayoum, Egypt.
Manuscript received on February 09, 2013. | Revised Manuscript received on February 27, 2013. | Manuscript published on March 05, 2013. | PP: 34-41 | Volume-3 Issue-1, March 2013. | Retrieval Number: A1286033113/2013©BEIESP
Open Access | Ethics and Policies | Cite
© The Authors. Published By: Blue Eyes Intelligence Engineering and Sciences Publication (BEIESP). This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)
Abstract: Embedded systems are a mixture of software running on a microprocessor and application-specific hardware. There are many co-design methodologies that are used to design embedded systems. One of them is Hardware/Software co-design methodology which requires an appropriate profiler to detect the software portions that contribute to a large percentage of program execution and cause performance bottleneck. Detecting these software portions improves the system efficiency where these portions are either reprogrammed to eliminate the performance bottleneck or moved to the hardware domain gaining the advantages of this domain. There are profiling tools used to profile software programs such as GNU Gprof profiler. GNU Gprof integrates an extra code with the software program to be profiled causing inaccurate results and a significant execution time overhead. To address these issues, this paper proposes a software profiler called AddressTracer that is accurately able to evaluate performance matrices of any specific software portion. A set of benchmarks, Dijkstra, Secure Hash Algorithm, and Bitcount are profiled using AddressTracer, Airwolf and GNU software profiling tool (Gprof), for a quantitative comparison. The achieved results show that AddressTracer gives accurate profiling results compared to Gprof and Airwolf profilers. AddressTracer provides up to 50.15% improvement in accuracy of profiling software compared to Gprof and 6.89% compared to Airwolf. Furthermore, AddressTracer is a non-intrusive profiler which does not cause any performance overhead.
Keywords: Embedded Systems, FPGA, profiling tools, Hardware/Software co-design.