Skip to main content
Article thumbnail
Location of Repository

Program Performance Spectrum

By Sudiptachattopadhyay Leekeechong Abhikroychoudhury


Real-time and embedded applications often need to satisfy several non-functional properties such as timing. Consequently, performance validation is a crucial stage before the deployment of real-time and embedded software. Cache memories are often used to bridge the performance gap between a processor and memory subsystems. As a result, the analysis of caches plays a key role in theperformancevalidationofreal-time,embeddedsoftware.Inthis paper, we propose a novel approach to compute the cache performance signature of an entire program. Our technique is based on exploring the input domain through different path programs. Two pathsbelongtothesamepathprogramiftheyfollowthesamesetof control flow edges but may vary in the iterations of loops encountered.Ourexperimentswithseveralsubjectprogramsshowthatthe different paths grouped into a path program have very similar and oftenexactly same cache performance. Ourpathprogram explorationcanbe viewed aspartitioningthe input domain of the program. Each partition is associated with its cache performance and a symbolic formula capturing the set of program inputs which constitutes the partition. We show that such a partitioning technique has wide spread usages in performance prediction, testing, debugging anddesign space exploration

Topics: General Terms Design, Performance, Verification Keywords Cache Memories, Performance testing, Path Exploration, Symbolic Execution
Year: 2013
OAI identifier: oai:CiteSeerX.psu:
Provided by: CiteSeerX
Download PDF:
Sorry, we are unable to provide the full text but you may find it at the following location(s):
  • (external link)
  • (external link)
  • Suggested articles

    To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.