Next Generation Performance Monitoring

As we reach the limits of single-core computing, we are promised more and more cores in our systems. Modern architectures include many performance counters per core, but few or no inter-core counters. In fact, performance counters were not originally designed to be exploited by users as they now are...

Full description

Bibliographic Details
Other Authors: West, Paul E. (Paul Edwin), 1982- (authoraut)
Format: Others
Language:English
English
Published: Florida State University
Subjects:
Online Access:http://purl.flvc.org/fsu/fd/FSU_migr_etd-1150
id ndltd-fsu.edu-oai-fsu.digital.flvc.org-fsu_175712
record_format oai_dc
spelling ndltd-fsu.edu-oai-fsu.digital.flvc.org-fsu_1757122020-06-05T03:07:14Z Next Generation Performance Monitoring West, Paul E. (Paul Edwin), 1982- (authoraut) Tyson, Gary (professor directing dissertation) Gerber, Larry (university representative) Whalley, David (committee member) Wang, Andy (committee member) Department of Computer Science (degree granting department) Florida State University (degree granting institution) Text text Florida State University Florida State University English eng 1 online resource computer application/pdf As we reach the limits of single-core computing, we are promised more and more cores in our systems. Modern architectures include many performance counters per core, but few or no inter-core counters. In fact, performance counters were not originally designed to be exploited by users as they now are, but used simply as aids for hardware debugging and testing during system creation. As such, they tend to be an "afterthought" in the design, with no standardization across or within platforms. Nonetheless, given access to these counters, researchers are using them to great advantage. Furthermore, evaluating counters for multicore systems has become a complex and resource-consuming task. This dissertation explores a Performance Monitoring System consisting of a specialized CPU core designed to allow efficient collection and evaluation of performance data for both static and dynamic optimizations. A synthesizable hardware implementation is created and compared to modern day processors. Furthermore, each component and the ISA of the system is thoroughly explored. This system provides a transparent mechanism to dynamically change how architectural features inform the operating system of process behavior, and assist in profiling and debugging. For instance, a piece of hardware watching snoop packets can determine when a write-update cache coherence protocol would be helpful or detrimental to the currently running program. The Performance Monitoring System is designed to let the hardware feed performance statistics back to the software, allowing dynamic architectural adjustments at runtime. SPLASH2 benchmarks are evaluated for cache coherency policy and task scheduling. Using these two examples, this dissertation shows how the Performance Monitoring System is programmed to find performance improvements. A 16% average performance improvement was found for cache coherency and 17% improvement was found for task scheduling. A Dissertation Submitted to the Department of Computer Science in Partial FulfiLlment of the Requirements for the Degree of Doctor of Philosophy. Summer Semester, 2010. June 18, 2010. Performance Monitoring, Computer Architecture, Computer Science, Event Based, Processor Design Includes bibliographical references. Gary Tyson, Professor Directing Dissertation; Larry Gerber, University Representative; David Whalley, Committee Member; Andy Wang, Committee Member. Computer science FSU_migr_etd-1150 http://purl.flvc.org/fsu/fd/FSU_migr_etd-1150 This Item is protected by copyright and/or related rights. You are free to use this Item in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you need to obtain permission from the rights-holder(s). The copyright in theses and dissertations completed at Florida State University is held by the students who author them. http://diginole.lib.fsu.edu/islandora/object/fsu%3A175712/datastream/TN/view/Next%20Generation%20Performance%20Monitoring.jpg
collection NDLTD
language English
English
format Others
sources NDLTD
topic Computer science
spellingShingle Computer science
Next Generation Performance Monitoring
description As we reach the limits of single-core computing, we are promised more and more cores in our systems. Modern architectures include many performance counters per core, but few or no inter-core counters. In fact, performance counters were not originally designed to be exploited by users as they now are, but used simply as aids for hardware debugging and testing during system creation. As such, they tend to be an "afterthought" in the design, with no standardization across or within platforms. Nonetheless, given access to these counters, researchers are using them to great advantage. Furthermore, evaluating counters for multicore systems has become a complex and resource-consuming task. This dissertation explores a Performance Monitoring System consisting of a specialized CPU core designed to allow efficient collection and evaluation of performance data for both static and dynamic optimizations. A synthesizable hardware implementation is created and compared to modern day processors. Furthermore, each component and the ISA of the system is thoroughly explored. This system provides a transparent mechanism to dynamically change how architectural features inform the operating system of process behavior, and assist in profiling and debugging. For instance, a piece of hardware watching snoop packets can determine when a write-update cache coherence protocol would be helpful or detrimental to the currently running program. The Performance Monitoring System is designed to let the hardware feed performance statistics back to the software, allowing dynamic architectural adjustments at runtime. SPLASH2 benchmarks are evaluated for cache coherency policy and task scheduling. Using these two examples, this dissertation shows how the Performance Monitoring System is programmed to find performance improvements. A 16% average performance improvement was found for cache coherency and 17% improvement was found for task scheduling. === A Dissertation Submitted to the Department of Computer Science in Partial FulfiLlment of the Requirements for the Degree of Doctor of Philosophy. === Summer Semester, 2010. === June 18, 2010. === Performance Monitoring, Computer Architecture, Computer Science, Event Based, Processor Design === Includes bibliographical references. === Gary Tyson, Professor Directing Dissertation; Larry Gerber, University Representative; David Whalley, Committee Member; Andy Wang, Committee Member.
author2 West, Paul E. (Paul Edwin), 1982- (authoraut)
author_facet West, Paul E. (Paul Edwin), 1982- (authoraut)
title Next Generation Performance Monitoring
title_short Next Generation Performance Monitoring
title_full Next Generation Performance Monitoring
title_fullStr Next Generation Performance Monitoring
title_full_unstemmed Next Generation Performance Monitoring
title_sort next generation performance monitoring
publisher Florida State University
url http://purl.flvc.org/fsu/fd/FSU_migr_etd-1150
_version_ 1719317702931120128