A cycle-accurate profiling tool

碩士 === 臺灣大學 === 電子工程學研究所 === 96 === GProf is a common profiling tool which I usually used to observe the bottleneck within a program. I can improve a program’s performance after checking which routine dominates overall execution time. However, I need another profiling tool for simulated ARM platform...

Full description

Bibliographic Details
Main Authors: Lin-Wei Tsao, 曹霖維
Other Authors: 楊佳玲
Format: Others
Language:en_US
Published: 2007
Online Access:http://ndltd.ncl.edu.tw/handle/57737877943702280606
Description
Summary:碩士 === 臺灣大學 === 電子工程學研究所 === 96 === GProf is a common profiling tool which I usually used to observe the bottleneck within a program. I can improve a program’s performance after checking which routine dominates overall execution time. However, I need another profiling tool for simulated ARM platform, which does a cycle-accurate simulation. Also, I need the information of each routine’s execution cycles. Therefore, GProf does not meet our requirement. Because it only sample a running program for a period of time. It’s meaningless to have GProf runs on the simulation platform, too. Thus, in order to do functional profiling in the ARM platform, I develop a function profiling tool based on Sim Power Analyzer. I do profiling a program without modifying any part of its binary file. The challenge is to judge whether the subroutine starts or not. Besides, I provide graphical user interface to present profiling result to make observing these results easier. With our tool, I can not only generate call graph to inspect how much cycles are spent in each routine and it’s children, but also observe total execution cycles and percentage over total execution time of each routine. In this way, I can find out which routine is the bottleneck and implement it as hardware to gain performance improvement and lower energy consumption.