Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Andrew E. Ayers is active.

Publication


Featured researches published by Andrew E. Ayers.


programming language design and implementation | 2005

TraceBack: first fault diagnosis by reconstruction of distributed control flow

Andrew E. Ayers; Richard Schooler; Chris Metcalf; Anant Agarwal; Junghwan Rhee; Emmett Witchel

Faults that occur in production systems are the most important faults to fix, but most production systems lack the debugging facilities present in development environments. TraceBack provides debugging information for production systems by providing execution history data about program problems (such as crashes, hangs, and exceptions). TraceBack supports features commonly found in production environments such as multiple threads, dynamically loaded modules, multiple source languages (e.g., Java applications running with JNI modules written in C++), and distributed execution across multiple computers. TraceBack supports first fault diagnosis-discovering what went wrong the first time a fault is encountered. The user can see how the program reached the fault state without having to re-run the computation; in effect enabling a limited form of a debugger in production code.TraceBack uses static, binary program analysis to inject low-overhead runtime instrumentation at control-flow block granularity. Post-facto reconstruction of the records written by the instrumentation code produces a source-statement trace for user diagnosis. The trace shows the dynamic instruction sequence leading up to the fault state, even when the program took exceptions or terminated abruptly (e.g., kill -9).We have implemented TraceBack on a variety of architectures and operating systems, and present examples from a variety of platforms. Performance overhead is variable, from 5% for Apache running SPECweb99, to 16%-25% for the Java SPECJbb benchmark, to 60% average for SPECint2000. We show examples of TraceBacks cross-language and cross-machine abilities, and report its use in diagnosing problems in production software.


Archive | 2004

Method for determining the degree to which changed code has been exercised

Emmett Witchel; Christopher D. Metcalf; Andrew E. Ayers


Archive | 1999

Method for back tracing program execution

Andrew E. Ayers; Anant Agarwal; Richard Schooler


Archive | 2003

Software development infrastructure

Vinod K. Grover; Charles L. Mitchell; David Mitford Gillies; Mark Leslie Roberts; Mark Ronald Plesko; David Tarditi; Andrew James Edwards; Julian Burger; Andrew E. Ayers; Akella V. S. Sastry


Archive | 2003

Description language for an extensible compiler and tools infrastructure

Julian Burger; David Tarditi; Charles L. Mitchell; Andrew E. Ayers; Vinod K. Grover


Archive | 2008

CONCURRENT CODE GENERATION

Andrew E. Ayers; John Lin; Patrick W. Sathyanathan


Archive | 2008

Annotating exception information in a computer program

Christopher M. McKinsey; Marko Radmilac; Charles L. Mitchell; Andrew E. Ayers; Louis Lafreniere


Archive | 2004

Beschreibungssprache für eine erweiterbare Compiler- und Werkzeug-Infrastruktur

Andrew E. Ayers; Julian Burger; Vinod K. Grover; Charles L. Mitchell; David Tarditi


Archive | 2004

Infrastruktur für die Software-Entwicklung

Akella V. S. Sastry; Andrew E. Ayers; Andrew James Edwards; Charles L. Mitchell; David Mitford Gillies; David Tarditi; Julian Burger; Mark Leslie Roberts; Mark Ronald Plesko; Vinod K. Grover


Archive | 2000

Method for determining the degree to which code has been changed

Emmett Witchel; Christopher D. Metcalf; Andrew E. Ayers

Collaboration


Dive into the Andrew E. Ayers's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Emmett Witchel

University of Texas at Austin

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Anant Agarwal

Massachusetts Institute of Technology

View shared research outputs
Researchain Logo
Decentralizing Knowledge