DocumentCode :
679457
Title :
Static Analysis Driven Cache Performance Testing
Author :
Banerjee, Adrish ; Chattopadhyay, Subrata ; Roychoudhury, Abhik
Author_Institution :
Nat. Univ. of Singapore, Singapore, Singapore
fYear :
2013
fDate :
3-6 Dec. 2013
Firstpage :
319
Lastpage :
329
Abstract :
Real-time, embedded software are constrained by several non-functional requirements, such as timing. With the ever increasing performance gap between the processor and the main memory, the performance of memory subsystems often pose a significant bottleneck in achieving the desired performance for a real-time, embedded software. Cache memory plays a key role in reducing the performance gap between a processor and main memory. Therefore, analyzing the cache behaviour of a program is critical for validating the performance of an embedded software. In this paper, we propose a novel approach to automatically generate test inputs that expose the cache performance issues to the developer. Each such test scenario points to the specific parts of a program that exhibit anomalous cache behaviour along with a set of test inputs that lead to such undesirable cache behaviour. We build a framework that leverages the concepts of both static cache analysis and dynamic test generation to systematically compute the cache-performance stressing test inputs. Our framework computes a test-suite which does not contain any false positives. This means that each element in the test-suite points to a real cache performance issue. Moreover, our test generation framework provides an assurance of the test coverage via a well-formed coverage metric. We have implemented our entire framework using Chronos worst case execution time (WCET) analyzer and LLVM compiler infrastructure. Several experiments suggest that our test generation framework quickly converges towards generating cache-performance stressing test cases. We also show the application of our generated test-suite in design space exploration and cache performance optimization.
Keywords :
cache storage; embedded systems; program compilers; program diagnostics; software performance evaluation; Chronos worst case execution time; LLVM compiler infrastructure; WCET analyzer; anomalous cache behaviour; cache performance optimization; cache-performance stressing test cases; coverage metric; design space exploration; dynamic test generation; real-time embedded software; static cache analysis; test coverage; test-suite; Abstracts; Cache memory; Embedded software; Instruments; Performance analysis; Testing; Cache performance; Performance testing; Test generation;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Real-Time Systems Symposium (RTSS), 2013 IEEE 34th
Conference_Location :
Vancouver, BC
ISSN :
1052-8725
Type :
conf
DOI :
10.1109/RTSS.2013.39
Filename :
6728886
Link To Document :
بازگشت