Trace Based Performance Characterization and Optimization

dc.contributor.advisorVincent Freeh, Committee Memberen_US
dc.contributor.advisorYan Solihin, Committee Memberen_US
dc.contributor.advisorTao Xie, Committee Memberen_US
dc.contributor.advisorFrank Mueller, Committee Chairen_US
dc.contributor.authorMarathe, Jaydeep Prakashen_US
dc.date.accessioned2010-04-02T19:19:47Z
dc.date.available2010-04-02T19:19:47Z
dc.date.issued2007-06-20en_US
dc.degree.disciplineComputer Scienceen_US
dc.degree.leveldissertationen_US
dc.degree.namePhDen_US
dc.description.abstractProcessor speeds have increased dramatically in the recent past, but improvement in memory access latencies has not kept pace. As a result, programs that do not make efficient use of the processor caches tend to become increasing memory-bound and do not experience speedups with increasing processor frequency. In this thesis, we present tools to characterize and optimize the memory access patterns of software programs. Our tools use the program's memory access trace as a primary input for analysis. Our efforts encompass two broad areas --- performance analysis and performance optimization. With performance analysis, our focus is on automating the analysis process as far as possible and on presenting the user with a rich set of metrics, both for single-threaded and multi-threaded programs. With performance optimization, we go one step further and perform automatic transformations based on observed program behavior. We make the following contributions in this thesis. First, we explore different tracing strategies --- software tracing with dynamic binary instrumentation, hardware-based tracing exploiting support found in contemporary microprocessors and a hybrid scheme that leverages hardware support with certain software modifications. Second, we present a range of performance analysis and optimization tools based on these trace inputs and additional auxiliary instrumentation. Our first tool, METRIC, characterizes the memory performance of single-threaded programs. Our second tool, ccSIM extends METRIC to characterize the coherence behavior of multithreaded OpenMP benchmarks. Our third tool extends ccSIM to work with hardware-generated and hybrid trace inputs. These three tools represent our performance analysis efforts. We also explore automated performance optimization with our remaining tools. Our fourth tool uses hardware-generated traces for automatic page placement in cache coherent non-uniform memory architectures (ccNUMA). Finally, our fifth tool explores a novel trace-driven instruction-level software data prefetching strategy. Overall, we demonstrate that memory traces represent a rich source of information about a program's behavior and can be effectively used for a wide range of performance analysis and optimization strategies.en_US
dc.identifier.otheretd-05302007-123108en_US
dc.identifier.urihttp://www.lib.ncsu.edu/resolver/1840.16/5777
dc.rightsI hereby certify that, if appropriate, I have obtained and attached hereto a written permission statement from the owner(s) of each third party copyrighted matter to be included in my thesis, dis sertation, or project report, allowing distribution as specified below. I certify that the version I submitted is the same as that approved by my advisory committee. I hereby grant to NC State University or its agents the non-exclusive license to archive and make accessible, under the conditions specified below, my thesis, dissertation, or project report in whole or in part in all forms of media, now or hereafter known. I retain all other ownership rights to the copyright of the thesis, dissertation or project report. I also retain the right to use in future works (such as articles or books) all or part of this thesis, dissertation, or project report.en_US
dc.subjectperformance characerizationen_US
dc.subjectperformance optimizationen_US
dc.subjecthardware tracingen_US
dc.subjectbinary rewritingen_US
dc.subjectmemory tracesen_US
dc.subjectitaniumen_US
dc.subjectperformance monitoring uniten_US
dc.subjectprefetchingen_US
dc.subjectccNUMAen_US
dc.subjectpage placementen_US
dc.subjectcoherenceen_US
dc.titleTrace Based Performance Characterization and Optimizationen_US

Files

Original bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
etd.pdf
Size:
1.3 MB
Format:
Adobe Portable Document Format

Collections