Return to search

A Regression Approach to Execution Time Estimation for Programs Running on Multicore Systems

Execution time estimation plays an important role in computer system design. It is particularly critical in real-time system design, where to meet a deadline can be as important as to ensure the logical correctness of a program. To accurately estimate the execution time of a program can be extremely challenging, since the execution time of a program varies with inputs, the underlying computer architectures, and run-time dynamics, among other factors. The problem becomes even more challenging as computing systems moving from single core to multi-core platforms, with more hardware resources shared by multiple processing cores.
The goal of this research is to investigate the relationship between the execution time of a program and the underlying architecture features (e.g. cache size, associativity, memory latency), as well as its run-time characteristics (e.g. cache miss ratios), and based on which, to estimate its execution time on a multi-core platform based on a regression approach. We developed our test platform based on GEM5, an open-source multi-core cycle-accurate simulation tool set. Our experimental results show clearly the strong relationship of the program execution time to architecture features and run-time characteristics. Moreover, we developed different execution time estimation algorithms using the regression approach for different programs with different software characteristics to improve the estimation accuracy.

Identiferoai:union.ndltd.org:fiu.edu/oai:digitalcommons.fiu.edu:etd-2204
Date21 March 2014
CreatorsAlshamlan, Mohammad
PublisherFIU Digital Commons
Source SetsFlorida International University
Detected LanguageEnglish
Typetext
Formatapplication/pdf
SourceFIU Electronic Theses and Dissertations

Page generated in 0.0022 seconds