GenE: A Benchmark Generator for WCET Analysis

The fact that many benchmarks for evaluating worst-case execution time (WCET) analysis tools are based on real-world applications greatly increases the value of their results. However, at the same time, the complexity of these programs makes it difficult, sometimes even impossible, to obtain all corresponding flow facts (i.e., loop bounds, infeasible paths, and input values triggering the WCET), which are essential for a comprehensive evaluation. In this paper, we address this problem by presenting GenE, a benchmark generator that in addition to source code also provides the flow facts of the benchmarks created. To generate a new benchmark, the tool combines code patterns that are commonly found in real-time applications and are challenging for WCET analyzers. By keeping track of how patterns are put together, GenE is able to determine the flow facts of the resulting benchmark based on the known flow facts of the patterns used. Using this information, it is straightforward to synthesize the accurate WCET, which can then serve as a baseline for the evaluation of WCET analyzers.

[1]  Meeta Sharma Gupta,et al.  Systematic Energy Characterization of CMP/SMT Processor Systems via Automated Micro-Benchmarks , 2012, 2012 45th Annual IEEE/ACM International Symposium on Microarchitecture.

[2]  Jens Knoop,et al.  r-TuBound: Loop Bounds for WCET Analysis (Tool Paper) , 2012, LPAR.

[3]  Arnaud Gotlieb TCAS software verification using constraint programming , 2012, Knowl. Eng. Rev..

[4]  Niklas Holsti,et al.  USING A WORST-CASE EXECUTION TIME TOOL FOR REAL-TIME VERIFICATION OF THE DEBIE SOFTWARE , 2000 .

[5]  Pascal Sainrat,et al.  Static Loop Bound Analysis of C Programs Based on Flow Analysis and Abstract Interpretation , 2008, 2008 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[6]  Benedikt Huber,et al.  Combined WCET analysis of bitcode and machine code using control-flow relation graphs , 2013, LCTES.

[7]  William Fornaciari,et al.  Software energy estimation based on statistical characterization of intermediate compilation code , 2011, IEEE/ACM International Symposium on Low Power Electronics and Design.

[8]  Joxan Jaffar,et al.  Symbolic simulation on complicated loops for WCET Path Analysis , 2011, 2011 Proceedings of the Ninth ACM International Conference on Embedded Software (EMSOFT).

[9]  Raimund Kirner,et al.  WCET Analysis: The Annotation Language Challenge , 2007, WCET.

[10]  Armelle Bonenfant,et al.  oRange : A Tool For Static Loop Bound Analysis , 2008 .

[11]  Benedikt Huber,et al.  The T-CREST approach of compiler and WCET-analysis integration , 2013, 16th IEEE International Symposium on Object/component/service-oriented Real-time distributed Computing (ISORC 2013).

[12]  Gerard J. M. Smit,et al.  A mathematical approach towards hardware design , 2010, Dynamically Reconfigurable Architectures.

[13]  Jens Knoop,et al.  WCET squeezing: on-demand feasibility refinement for proven precise WCET-bounds , 2013, RTNS '13.

[14]  Armelle Bonenfant,et al.  FFX: a portable WCET annotation language , 2012, RTNS '12.

[15]  Jozo J. Dujmovic Automatic generation of benchmark and test workloads , 2010, WOSP/SIPEW '10.

[16]  Jan Gustafsson,et al.  The Mälardalen WCET Benchmarks: Past, Present And Future , 2010, WCET.

[17]  Xuejun Yang,et al.  Finding and understanding bugs in C compilers , 2011, PLDI '11.

[18]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[19]  Tobias Distler,et al.  Worst-Case Energy Consumption Analysis for Energy-Constrained Embedded Systems , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[20]  Pascal Sainrat,et al.  PapaBench: a Free Real-Time Benchmark , 2006, WCET.

[21]  Kerstin Eder,et al.  Static energy consumption analysis of LLVM IR programs , 2014, ArXiv.

[22]  H. Rice Classes of recursively enumerable sets and their decision problems , 1953 .

[23]  Vikram S. Adve,et al.  LLVM: a compilation framework for lifelong program analysis & transformation , 2004, International Symposium on Code Generation and Optimization, 2004. CGO 2004..

[24]  Simon J. Hollis,et al.  BEEBS: Open Benchmarks for Energy Measurements on Embedded Platforms , 2013, ArXiv.

[25]  Pascal Sainrat,et al.  OTAWA: An Open Toolbox for Adaptive WCET Analysis , 2010, SEUS.

[26]  Gernot Heiser,et al.  Trickle: Automated infeasible path detection using all minimal unsatisfiable subsets , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).