Results 1  10
of
11
Automatic Accurate CostBound Analysis for HighLevel Languages
, 2001
"... This paper describes a languagebased approach for automatic and accurate costbound analysis. The approach consists of transformations for building costbound functions in the presence of partially known input structures, symbolic evaluation of the costbound function based on input size parameter ..."
Abstract

Cited by 15 (4 self)
 Add to MetaCart
This paper describes a languagebased approach for automatic and accurate costbound analysis. The approach consists of transformations for building costbound functions in the presence of partially known input structures, symbolic evaluation of the costbound function based on input size parameters, and optimizations to make the overall analysis ecient as well as accurate, all at the sourcelanguage level. The calculated cost bounds are expressed in terms of primitive cost parameters. These parameters can be obtained based on the language implementation or be measured conservatively or approximately, yielding accurate, conservative, or approximate time or space bounds. We have implemented this approach and performed a number of experiments for analyzing Scheme programs. The results helped conrm the accuracy of the analysis.
RealTime Properties of Indirect Recursive Porcedures
, 1996
"... The purpose of this paper is to show that indirect recursive procedures can be used for implementing realtime applications without harm, if a few conditions are met. These conditions ensure that upper bounds for space and time requirements can be derived at compile time. Moreover they are simpl ..."
Abstract

Cited by 7 (1 self)
 Add to MetaCart
The purpose of this paper is to show that indirect recursive procedures can be used for implementing realtime applications without harm, if a few conditions are met. These conditions ensure that upper bounds for space and time requirements can be derived at compile time. Moreover they are simple enough such that many important recursive algorithms can be implemented. In addition
Symbolic Cache Analysis for RealTime Systems
, 1999
"... Caches impose a major problem for predicting execution times of realtime systems since the cache behavior depends on the history of previous memory references. Too pessimistic assumptions on cache hits can result in worstcase execution time estimates that are prohibitive for realtime systems. ..."
Abstract

Cited by 7 (4 self)
 Add to MetaCart
Caches impose a major problem for predicting execution times of realtime systems since the cache behavior depends on the history of previous memory references. Too pessimistic assumptions on cache hits can result in worstcase execution time estimates that are prohibitive for realtime systems.
Interprocedural Symbolic Evaluation of Ada Programs with Aliases
 In Proc. of the AdaEurope International Conference on Reliable Software Technologies
, 1999
"... Symbolic Evaluation is a technique aimed at determining dynamic properties of programs. We extend our intraprocedural dataflow framework introduced in [3] to support interprocedural symbolic evaluation. Our dataflow framework utilizes a novel approach based on an array algebra to handle aliases ..."
Abstract

Cited by 6 (5 self)
 Add to MetaCart
Symbolic Evaluation is a technique aimed at determining dynamic properties of programs. We extend our intraprocedural dataflow framework introduced in [3] to support interprocedural symbolic evaluation. Our dataflow framework utilizes a novel approach based on an array algebra to handle aliases induced by procedure calls. It serves as as a basis for static program analysis (e.g. reaching definitions, alias analysis, worstcase performance estimations, cache analysis). Examples for reaching definitions as well as alias analysis are presented.
Symbolic Reaching Definitions Analysis of Ada Programs
 Proceedings of AdaEurope'98
, 1998
"... A dataflow framework for symbolic reaching definitions analysis is presented. It produces a more accurate solution of the reaching definitions problem than can be achieved with "classic" dataflow analysis. ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
A dataflow framework for symbolic reaching definitions analysis is presented. It produces a more accurate solution of the reaching definitions problem than can be achieved with "classic" dataflow analysis.
A New EliminationBased Data Flow Analysis Framework using Annotated Decomposition Trees
 IN PROC. ETAPS 2007, LNCS
, 2007
"... We introduce a new framework for eliminationbased data flow analysis. We present a simple algorithm and a delayed algorithm that exhibit a worstcase complexity of O(n 2) and Õ(m). The algorithms use a new compact data structure for representing reducible flow graphs called Annotated Decomposition ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
We introduce a new framework for eliminationbased data flow analysis. We present a simple algorithm and a delayed algorithm that exhibit a worstcase complexity of O(n 2) and Õ(m). The algorithms use a new compact data structure for representing reducible flow graphs called Annotated Decomposition Trees. This data structure extends a binary tree to represent flowgraph information, dominance relation of flowgraphs, and the topological order of nodes. The construction of the annotated decomposition trees runs in O(n + m). Experiments were conducted with reducible flowgraphs of the SPEC2000 benchmark suite.
AVERAGE CASE ANALYSIS OF DJ GRAPHS
"... Abstract. Sreedhar et al. [SGL98, Sre95] have presented an eliminationbased algorithm to solve data flow problems. A thorough analysis of the algorithm shows that the worstcase performance is at least quadratic in the number of nodes of the underlying graph. In contrast, Sreedhar reports a linear t ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
Abstract. Sreedhar et al. [SGL98, Sre95] have presented an eliminationbased algorithm to solve data flow problems. A thorough analysis of the algorithm shows that the worstcase performance is at least quadratic in the number of nodes of the underlying graph. In contrast, Sreedhar reports a linear time behavior based on some practical applications. In this paper we prove that for gotofree programs, the average case behavior is indeed linear. As a byproduct our result also applies to the average size of the socalled dominance frontier. A thorough average case analysis based on a graph grammar is performed by studying properties of the jedges in DJ graphs. It appears that this is the first time that a graph grammar is used in order to analyze an algorithm. The average linear time of the algorithm is obtained by classic techniques in the analysis of algorithms and data structures such as singularity analysis of generating functions and transfer lemmas. 1.
Symbolic Analysis of Imperative Programming Languages
 In Proceedings of the 7th Joint Modular Languages Conference, Springer LNCS
, 2006
"... Abstract. We present a generic symbolic analysis framework for imperative programming languages. Our framework is capable of computing all valid variable bindings of a program at given program points. This information is invaluable for domainspecific static program analyses such as memory leak dete ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Abstract. We present a generic symbolic analysis framework for imperative programming languages. Our framework is capable of computing all valid variable bindings of a program at given program points. This information is invaluable for domainspecific static program analyses such as memory leak detection, program parallelisation, and the detection of superfluous bound checks, variable aliases and task deadlocks. We employ path expression algebra to model the control flow information of programs. A homomorphism maps path expressions into the symbolic domain. At the center of the symbolic domain is a compact algebraic structure called supercontext. A supercontext contains the complete control and data flow analysis information valid at a given program point. Our approach to compute supercontexts is based purely on algebra and is fully automated. This novel representation of program semantics closes the gap between program analysis and computer algebra systems, which makes supercontexts an ideal intermediate representation for all domainspecific static program analyses. Our approach is more general than existing methods because it can derive solutions for arbitrary (even intraloop) nodes of reducible and irreducible control flow graphs. We prove the correctness of our symbolic analysis method. Our experimental results show that the problem sizes arising from realworld applications such as the SPEC95 benchmark suite are tractable for our symbolic analysis framework. 1
doi:10.1093/comjnl/bxm058 Automated WorstCase Execution Time Analysis Based on Program Modes
"... A program mode is a regular trajectory of the execution of a program that is determined by the values of its input variables. By exploiting program modes, we may make worstcase execution time (WCET) analysis more precise. This paper presents a novel method to automatically find program modes and ca ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
A program mode is a regular trajectory of the execution of a program that is determined by the values of its input variables. By exploiting program modes, we may make worstcase execution time (WCET) analysis more precise. This paper presents a novel method to automatically find program modes and calculate the WCET estimates of programs. First, the modes of a program will be identified automatically by moderelevant program slicing, and the precondition will be calculated for each mode using a pathwise test data generation method. Then, for each feasible mode, we show how to calculate its WCET estimate for modern reduced instruction set computer (RISC) processors with caches and pipelines and for traditional complex instruction set computer (CISC) processors. We also present a method to obtain the symbolic expression for each mode for CISC processors. The experimental results show the effectiveness of the method.
AVERAGE CASE ANALYSIS OF SOME ELIMINATIONBASED DATAFLOW ANALYSIS ALGORITHMS
, 2008
"... The average case of some eliminationbased dataflow analysis algorithms is analyzed in a mathematical way. Besides this allows for comparing the timing behavior of the algorithms, it also provides insights into how relevant the underlying statistics are when compared to practical settings. ..."
Abstract
 Add to MetaCart
The average case of some eliminationbased dataflow analysis algorithms is analyzed in a mathematical way. Besides this allows for comparing the timing behavior of the algorithms, it also provides insights into how relevant the underlying statistics are when compared to practical settings.