Reconstructing Critical Paths from Execution Traces

We consider the problem of constructing critical paths from incomplete information. In general, a directed acyclic graph of tasks with their execution times (i.e., a task graph) is necessary to extract critical paths. We assume, however, that only the set of tasks, and their start and end times are known, e.g., an execution trace in the form of a Gantt chart. This information can be extracted from real machines or from the output of analysis tools, whereas extraction of the exact task graph often is problematic due to imperative modeling formalisms and complicated platform semantics (resource allocation, varying execution speeds). We show that, based on start and end times only, an over- approximation of the critical paths of an unknown task graph can be extracted nevertheless. Furthermore, this approach is generalized to deal with "noisy" execution traces of real machines in which control overhead is present. Finally, we discuss various methods to deal with false positives, and apply our approach to a complex industrial case study.

[1]  Sander Stuijk,et al.  Automated bottleneck-driven design-space exploration of media processing systems , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[2]  K. G. Lockyer An introduction to critical path analysis , 1965 .

[3]  Michael Pinedo,et al.  Scheduling: Theory, Algorithms, and Systems , 1994 .

[4]  M. Schulz,et al.  Extracting Critical Path Graphs from MPI Applications , 2005, 2005 IEEE International Conference on Cluster Computing.

[5]  Boudewijn F. van Dongen,et al.  Discovering Workflow Performance Models from Timed Logs , 2002, EDCIS.

[6]  F. Lootsma Fuzzy Logic for Planning and Decision Making , 1997 .

[7]  Jerome D. Wiest Some Properties of Schedules for Large Projects with Limited Resources , 1964 .

[8]  James E. Kelley,et al.  Critical-path planning and scheduling , 1899, IRE-AIEE-ACM '59 (Eastern).

[9]  Kleanthis Sirakoulis,et al.  The effectiveness of resource levelling tools for Resource Constraint Project Scheduling Problem , 2009 .

[10]  Jan Madsen,et al.  Critical path driven cosynthesis for heterogeneous target architectures , 1997, CODES.

[11]  Niraj K. Jha,et al.  Static and dynamic variable voltage scheduling algorithms for real-time heterogeneous distributed embedded systems , 2002, Proceedings of ASP-DAC/VLSI Design 2002. 7th Asia and South Pacific Design Automation Conference and 15h International Conference on VLSI Design.

[12]  Twan Basten,et al.  Model-Driven Design-Space Exploration for Embedded Systems: The Octopus Toolset , 2010, ISoLA.

[13]  Jeffrey K. Hollingsworth An online computation of critical path profiling , 1996, SPDT '96.

[14]  Daniel Gajski,et al.  Hypertool: A Programming Aid for Message-Passing Systems , 1990, IEEE Trans. Parallel Distributed Syst..

[15]  Henry Wallace Clark,et al.  The Gantt Chart , 1947 .

[16]  Wallace Clark,et al.  The Gantt chart : a working tool of management , 2022 .

[17]  U Dave,et al.  Critical Chain , 1998, J. Oper. Res. Soc..

[18]  Boudewijn F. van Dongen,et al.  Workflow mining: A survey of issues and approaches , 2003, Data Knowl. Eng..

[19]  Barton P. Miller,et al.  Critical path analysis for the execution of parallel and distributed programs , 1988, [1988] Proceedings. The 8th International Conference on Distributed.

[20]  Paul Barford,et al.  Critical path analysis of TCP transactions , 2000, SIGCOMM.