Selected References on Efficient Profiling Systems

 

  1. Profiling Applications
    1. Program Analysis (offline)

o       Peter F. Sweeney, Matthias Hauswirth, Brendon Cahoon, Perry Cheng, Amer Diwan, David Grove, Michael Hind, Using Hardware Performance Monitors to Understand the Behavior of Java Applications , VM 04

o       Matthias Hauswirth, Peter F. Sweeney, Amer Diwan, Michael Hind , Vertical Profiling: Understanding the Behavior of Object Oriented Applications, OOPSLA 04

o       Lieven Eeckhout, Andy Georges, and Koen De Bosschere, How Java Programs Interact with Virtual Machines at the Microarchitectural Level, OOPSLA 03

o       Shai rubin, Ras Bodik, Trishul Chilimbi, An Efficient Profile-Analysis Framework for Data-Layout Optimizations, PLDI 02

    1. Adaptive online optimization

o       Matthew Arnold, Michael Hind, Barbara G. Ryder , Online Feedback Directed Optimization of Java, OOPSLA 02

o       Mustafa M. Tikir, Jeffrey K. Hollingsworth, Using Hardware Counters to Automatically Improve Memory Performance, SC 04

o       Trishul M. Chilimbi, and Martin Hirzel, Dynamic Hot Data Stream Prefetching for General-Purpose Programs, PLDI02

o       Howard Chen, Wei-Chung Hsu, Jiwei Lu, Pen-Chung Yew, Dong-Yuan Chen, Dynamic trace selection using performance monitoring hardware sampling, CGO 03

o       Thomas Kistler, Michael Franz, Continuous Program Optimization: A Case Study, TOPLAS 03

o       Matthew Arnold, Stephen J. Fink, David Grove, Michael Hind, Peter F. Sweeney, A survey of Adaptive Optimization in Virtual Machines, IBM TR 03

o       Xiaolan Zhang, Zheng Wang, Nicholas Gloy, J. Bradley Chen, Michael D. Smith, System Support for Automatic Profiling and Optimization, SOSP 97

    1. Bug isolation and debugging

o       Ben Liblit, Alex Aiken, Alice X. Zheng, Michael I. Jordan, Bug Isolation via Remote Program Sampling, PLDI 03

  1. Sampling schemes
    1. Random/periodic

o       John Whaley, A Portable Sampling Based Profiler for Java Virtual Machines,  Java Grande 00

    1. Arnolds Framework

o       Matthew Arnold, Barbara G. Ryder, A Framework for Reducing the Cost of Instrumented Code, PLDI 01

    1. Variable Burst length

o       M. Hirzel and T. Chilimbi, Bursty Tracing: A Framework for Low-Overhead Temporal Profiling. FDDO 04

    1. Adaptive bursty

o       Matthias Hauswirth and Trishul M. Chilimbi, Low-Overhead Memory Leak Detection Using Adaptive Statistical Profiling, ASPLOS 04

    1. Stride-enabled periodic

o       Matthew Arnold, David Grove, Collecting and Exploiting High Accuracy Call Graph Profiles in Virtual Machines, CGO 05

    1. Software Tomorgraphy

o       Alessandro Orso, Donglin Liang, Mary Jean Harrold, Richard Lipton, Gamma System: Continuous Evolution of Software after Deployment, STA02

 

  1. Hardware Profiling Systems
    1. Hardware Performance Monitors

o       M. Burrows, U. Erlingson, S-T. A. Leung, M. T. Vandevoorde, C. A. Waldspurger, K. Walker, W. E. Weihl, Efficient and Flexible Value Sampling, ASPLOS 00

o       Marty Itzkowitz, Brian J. N., Wylie Christopher, Nicolai Kosche, Memory Profiling using Hardware Counters, SC 03

o       Jennifer M. Anderson, Lance M. Berc, Jeffrey Dean, Sanjay Ghemawat, Monika R. Henzinger, Shun-Tak A. Leung, Richard L. Sites, Mark T. Vandevoorde, Carl A. Waldspurger, William E. Weihl, Continuous profiling: where have all the cycles gone?, SOSP 97

    1. Specialized profiling add-ons

o       Matthew Merten, A Hardware-Driven Profiling Scheme for Identifying Program Hot Spots to support Runtime Optimization, ISCA 99

o       Ann Gordon-Ross, Frank Vahid, Frequent Loop Detection Using Efficient Non-Intrusive On-Chip Hardware, CASES 03

o       Jeffrey Dean, James E. Hicks, Carl A. Waldspurger, William E. Weihl, George Chrysos, ProfileMe: Hardware Support for Instruction Level Profiling on Out of Order Processors, Micro 97

o       Timothy Heil, James E. Smith, Relational Profiling: Enabling Thread-Level Parallelism in Virtual Machines,  MICRO 00

o       S. Subramanya Sastry, Rastislav Bodík, James E. Smith, Rapid Profiling via Stratified Sampling, ISCA 01

o       Roman Lysecky, Susan Cotterell, Frank Vahid, A Fast On-Chip Profiler Memory, DAC 02

    1. Profiling Co-Processor

o       Craig B. Zilles, Gurindar S. Sohi, A programmable Co-processor for Profiling, HPCA 01

  1. Software Profiling and Instrumentation Systems

o       Omri Traub, Stuart Schechter, Michael D. Smith, Ephemeral Instrumentation for Lightweight Program Profiling, TR Harvard 00

o       Bryan R. Buck, Jeffrey K. Hollingsworth, An API for Runtime Code Patching, HPCA 04

o       Mikhail Dmitriev, Profiling Java Applications Using Code Hot swapping and Dynamic Call Graph Revelation, WOSP 04

o       Qiang Wu, Artem Pyatakov, Alexey Spiridonov, Easwaran Raman, Douglas W. Clark, David I. August, Exposing Memory Access Regularities Using Object-Relative Memory Profiling, CGO 04

o       Evelyn Duesterwald, Vasanth Bala, Software Profiling for Hot Path Prediction: Less is More, ASPLOS 00

o       Bruno De Bus, Dominique Chanet, Bjorn De Sutter, Ludo Van Put, Koen De Bosschere, The design and implementation of FIT: a flexible instrumentation toolkit, PASTE 04

o       Jeffrey K. Hollingsworth, Barton P. Miller, Marcelo Goncalves, Oscar Naim, Zhichen Xu, Ling Zheng, MDL: A Language and Compiler for Dynamic Program Instrumentation,  PACT 97

  1. Hybrid Profiling Approach

o       Priya Nagapurka and Chandra Krintz, Phase-Aware Remote Profiling, CGO 05

o       Hussam Mousa and Chandra Krintz, Hybrid Profiling Support, PACT 05

  1. Other
    1. Evaluating profiles

o       T. Kistler and M. Franz, Computing the Similarity of Profiling Data, Profiling & Feedback. Directed Opt. 98

o       Geoff Langdale, Thomas Gross, Evaluating the Relationship Between the Usefulness and Accuracy of Profiles, WDDD 03

o       David W. Wall, Predicting Program Behavior Using Real or Estimated Profiles, PLDI 91

    1. General

o       Marc L. Corliss, E Christopher Lewis and Amir Roth, DISE: A programmable Macro Engine for Customizing Applications, ISCA 03

o       Timothy Sherwood, Erez Perelman, Greg Hamerly, Suleyman Sair, and Brad Calder, Discovering and Exploiting Program Phases, IEEE MICRO 03

o       Michael D. Smith, Overcoming the Challenges to Feedback-Directed Optimization, FDDO 02