Peter P. Puschner
Vienna University of Technology
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Peter P. Puschner.
ACM Transactions in Embedded Computing Systems | 2008
Reinhard Wilhelm; Jakob Engblom; Andreas Ermedahl; Niklas Holsti; Stephan Thesing; David B. Whalley; Guillem Bernat; Christian Ferdinand; Reinhold Heckmann; Tulika Mitra; Frank Mueller; Isabelle Puaut; Peter P. Puschner; Jan Staschulat; Per Stenström
The determination of upper bounds on execution times, commonly called worst-case execution times (WCETs), is a necessary step in the development and validation process for hard real-time systems. This problem is hard if the underlying processor architecture has components, such as caches, pipelines, branch prediction, and other speculative components. This article describes different approaches to this problem and surveys several commercially available tools1 and research prototypes.
Real-time Systems | 1989
Peter P. Puschner; Christian Koza
In real-time systems, the timing behavior is an important property of each task. It has to be guaranteed that the execution of a task does not take longer than the specified amount of time. Thus, a knowledge about the maximum execution time of programs is of utmost importance.This paper discusses the problems for the calculation of the maximum execution time (MAXT... MAximum eXecution Time). It shows the preconditions which have to be met before the MAXT of a task can be calculated. Rules for the MAXT calculation are described. Triggered by the observation that in most cases the calculated MAXT far exceeds the actual execution time, new language constructs are introduced. These constructs allow programmers to put into their programs more information about the behavior of the algorithms implemented and help to improve the self checking property of programs. As a consequence, the quality of MAXT calculations is improved significantly. In a realistic example, an improvement fator of 11 has been achieved.
Real-time Systems | 1997
Peter P. Puschner; Anton V. Schedl
The knowledge of program execution times is crucial for the development and the verification of real-time software. Therefore, there is a need for methods and tools to predict the timing behavior of pieces of program code and entire programs.This paper presents a novel method for the analysis of program execution times. The computation of MAximum eXecution Times (MAXTs) is mapped onto a graph-theoretical problem that is a generalization of the computation of a maximum cost circulation in a directed graph. Programs are represented by T-graphs, timing graphs, which are similar to flow graphs. These graphs reflect the structure and the timing behavior of the code. Relative capacity constraints, a generalization of capacity constraints that bound the flow in the edges, express user-supplied information about infeasible paths. To compute MAXTs, T-graphs are searched for those execution paths which correspond to a maximum cost circulation. The search problem is transformed into an integer linear programming problem. The solution of the linear programming problem yields the MAXT.The special merits of the presented method are threefold: It uses a concise notation to characterize the static structure of a program and its possible execution paths. Furthermore, the notation allows for a description of the feasible paths through the program code that characterizes the behavior of the code sufficiently to compute the exact maximum execution time of the program – not just a bound thereof. Finally, linear program solving does not only yield maximum execution times, but also produces detailed information about the execution time and the number of executions of every single program construct in the worst case. This knowledge is valuable for a more comprehensive analysis of the timing of a program.
worst case execution time analysis | 2000
Peter P. Puschner; Alan Burns
A development process for safety-critical real-time computer systems has to emphasize the importance of time. On the one hand, such a development process has to be based on hardware and software technology that supports predictability in the time domain. On the other hand, the development process has to provide tools for assessing and verifying the correctness of the timing of both the hardware and the software components of the real-time systems being developed. Together with schedulability analysis, Worst-case execution time analysis (WCET analysis) forms the basis for establishing confidence into the timely operation of a real-time system. WCET analysis does so by computing (upper) bounds for the execution times of the tasks in the system. These bounds are needed for allocating the correct CPU time to the tasks of an application. They form the inputs for schedulability tools, which test whether a given task set is schedulable (and will thus meet the timing requirements of the application) on a given target system. While schedulability analysis is one of the traditional fields of investigation in real-time systems research, WCET analysis caught the attention of the research community only about ten years ago (Kligerman and Stoyenko, 1986; Mok et al., 1989; Puschner and Koza, 1989; Shaw, 1989). In the last decade, however, more and more research groups started to put a focus on WCET analysis. As a result, substantial progress has been made in this area in a relatively short time. After ten years of research in the field, it is appropriate to have a special issue on WCET analysis. It is the goal of this special issue to review the achievements in WCET analysis and to report about the recent advances in this field. In the following section we will define the problem area of WCET analysis and thus clarify the issue WCET analysis is dealing with— still many people mix up execution-time analysis and response-time analysis. We will then summarize the subproblems of WCET analysis and provide an overview of previous contributions to the state of the art in this field. At the end of the introduction we will give an overview to the research papers that have been selected for this special issue.
real time systems symposium | 1998
Peter P. Puschner; Roman Nossal
Analytically derived worst case execution time (WCET) bounds are prone to errors, because they often rely on information provided by the user. The paper presents a method for testing the results of static WCET analysis. The proposed test method is a blackbox test method that uses a genetic algorithm (GA) for test case generation. Important properties of the method are: (a) that it requires minimal information about possible impact data from the user and (b) that the GA guides data generation into directions that have a good chance to yield the real WCET of the program under test. Experimental results show that GA based testing produces results of high quality.
workshop on object-oriented real-time dependable systems | 2002
Peter P. Puschner; Alan Burns
The Worst-Case Execution-Time Analysis (WCET Analysis) of program code for modern processors is a highly complex tasks: First, it involves path analysis, to identify and describe the possible execution paths through the code. Second, it models the worst-case timing of possible paths on the target hardware, where the characterization of the timing of sophisticated hardware features (e.g., instruction pipelines, caches, parallel execution units) and their interferences are non-trivial. This paper presents a programming paradigm that takes the complexity from WCET analysis. Program code written according to this paradigm only has a single execution path. Writing single-path code makes path analysis and thus WCET analysis trivial. The WCET of the single path is obtained by executing the code (necessarily on that single path) and logging the duration of this execution. To demonstrate that the single-path approach provides a universal solution to the WCET-analysis problem, the paper shows how every, WCET-analyzable piece of code can be translated into single-path code.
design, automation, and test in europe | 2005
Ingomar Wenzel; Bernhard Rieder; Raimund Kirner; Peter P. Puschner
We present a new measurement-based worst-case execution time (WCET) analysis method. Exhaustive end-to-end measurements are computationally intractable in most cases. Therefore, we propose to measure execution times of subparts of the application. We use heuristic methods and model checking to generate test data, forcing the execution of selected paths to perform run-time measurements. The measured times are used to calculate the WCET in a final computation step. As we operate on the source code level, our approach is platform independent except for the run-time measurements performed on the target host. We show the feasibility of the required steps and explain our approach by means of a case study.
embedded software | 2015
Martin Schoeberl; Sahar Abbaspour; Benny Akesson; Neil C. Audsley; Raffaele Capasso; Jamie Garside; Kees Goossens; Sven Goossens; Scott Hansen; Reinhold Heckmann; Stefan Hepp; Benedikt Huber; Alexander Jordan; Evangelia Kasapaki; Jens Knoop; Yonghui Li; Daniel Prokesch; Wolfgang Puffitsch; Peter P. Puschner; André Rocha; Cláudio Silva; Jens Sparsø; Alessandro Tocchi
Real-time systems need time-predictable platforms to allow static analysis of the worst-case execution time (WCET). Standard multi-core processors are optimized for the average case and are hardly analyzable. Within the T-CREST project we propose novel solutions for time-predictable multi-core architectures that are optimized for the WCET instead of the average-case execution time. The resulting time-predictable resources (processors, interconnect, memory arbiter, and memory controller) and tools (compiler, WCET analysis) are designed to ease WCET analysis and to optimize WCET performance. Compared to other processors the WCET performance is outstanding.The T-CREST platform is evaluated with two industrial use cases. An application from the avionic domain demonstrates that tasks executing on different cores do not interfere with respect to their WCET. A signal processing application from the railway domain shows that the WCET can be reduced for computation-intensive tasks when distributing the tasks on several cores and using the network-on-chip for communication. With three cores the WCET is improved by a factor of 1.8 and with 15 cores by a factor of 5.7.The T-CREST project is the result of a collaborative research and development project executed by eight partners from academia and industry. The European Commission funded T-CREST.
international symposium on object component service oriented real time distributed computing | 2001
Peter P. Puschner; Andy J. Wellings
The paper defines a simple subset of tasking and object oriented features of the Real-Time Specification for Java that support high-integrity real time applications. The subset has been chosen to facilitate the development of efficient applications whose temporal behavior needs to be exactly predictable.
leveraging applications of formal methods | 2008
Ingomar Wenzel; Raimund Kirner; Bernhard Rieder; Peter P. Puschner
In this paper we present a measurement-based worst-case execution time (WCET) analysis method. Exhaustive end-to-end execution-time measurements are computationally intractable in most cases. Therefore, we propose to measure execution times of subparts of the application code and then compose these times into a safe WCET bound.