Berkeley Lab Scientific Computing Seminar

Date:
Friday, March 10, 2006
Time:
1:00pm-2:00pm
Location:
Building 50A Room 5132
Seminar Speaker:
Tim Sherwood
Department of Computer Science
UC Santa Barbara
http://www.cs.ucsb.edu/~sherwood/
Title:
Describing and Exploiting Program Phases
Abstract:
Understanding program behavior is at the foundation of computer system design and optimization. We have now reached a point where there is no shortage of tools for gathering data from an executing program, whether it is from hardware counters, dynamic instrumentation, or application level hooks. This data could in theory be used to estimate performance across architectures, optimize software routines, and guide run-time techniques in hardware or software. However, taking this data and extracting useful information is no easy task due both to the complexity of the systems and the shear volume of data. Most modern applications exhibit complex interactions between the hardware and software and tend to have behaviors which vary drastically over time (over many different time scales, from nanoseconds to months). Phase analysis is a set of automated techniques, based on ideas from machine learning, that allows the time varying behavior of a program to be summarized, visualized, and optimized. Many different attributes of an executing program can be modeled and predicted by just looking at phase behavior, and we can use it to guide run-time optimizations and reduce architectural simulation error by several orders of magnitude. In this talk, I will describe the concepts behind program phase analysis, describe how it can be performed efficiently in software and hardware, and outline our recent extensions which can extract a hierarchy of correlations from streams of profile data.
Sponsor of Seminar:
David Skinner
Scientific Computing

Contact Esmond G. Ng EGNg@lbl.gov