Improving the Efficiency of Parallel Applications on Multithreaded and Multicore Systems

dc.contributor.authorCurtis-Maury, Matthewen
dc.contributor.committeechairNikolopoulos, Dimitrios S.en
dc.contributor.committeememberFeng, Wu-chunen
dc.contributor.committeememberCameron, Kirk W.en
dc.contributor.committeememberde Supinski, Bronis R.en
dc.contributor.committeememberRibbens, Calvin J.en
dc.contributor.departmentComputer Scienceen
dc.date.accessioned2014-03-14T20:09:06Zen
dc.date.adate2008-04-15en
dc.date.available2014-03-14T20:09:06Zen
dc.date.issued2008-03-19en
dc.date.rdate2008-04-15en
dc.date.sdate2008-04-08en
dc.description.abstractThe scalability of parallel applications executing on multithreaded and multicore multiprocessors is often quite limited due to large degrees of contention over shared resources on these systems. In fact, negative scalability frequently occurs such that a non-negligable performance loss is observed through the use of more processors and cores. In this dissertation, we present a prediction model for identifying efficient operating points of concurrency in multithreaded scientific applications in terms of both performance as a primary objective and power secondarily. We also present a runtime system that uses live analysis of hardware event rates through the prediction model to optimize applications dynamically. We discuss a dynamic, phase-aware performance prediction model (DPAPP), which combines statistical learning techniques, including multivariate linear regression and artificial neural networks, with runtime analysis of data collected from hardware event counters to locate optimal operating points of concurrency. We find that the scalability model achieves accuracy approaching 95%, sufficiently accurate to identify improved concurrency levels and thread placements from within real parallel scientific applications. Using DPAPP, we develop a prediction-driven runtime optimization scheme, called ACTOR, which throttles concurrency so that power consumption can be reduced and performance can be set at the knee of the scalability curve of each parallel execution phase in an application. ACTOR successfully identifies and exploits program phases where limited scalability results in a performance loss through the use of more processing elements, providing simultaneous reductions in execution time by 5%-18% and power consumption by 0%-11% across a variety of parallel applications and architectures. Further, we extend DPAPP and ACTOR to include support for runtime adaptation of DVFS, allowing for the synergistic exploitation of concurrency throttling and DVFS from within a single, autonomically-acting library, providing improved energy-efficiency compared to either approach in isolation.en
dc.description.degreePh. D.en
dc.identifier.otheretd-04082008-164938en
dc.identifier.sourceurlhttp://scholar.lib.vt.edu/theses/available/etd-04082008-164938/en
dc.identifier.urihttp://hdl.handle.net/10919/26697en
dc.publisherVirginia Techen
dc.relation.haspartdissertation.pdfen
dc.rightsIn Copyrighten
dc.rights.urihttp://rightsstatements.org/vocab/InC/1.0/en
dc.subjectpower-aware computingen
dc.subjecthigh-performance computingen
dc.subjectperformance predictionen
dc.subjectmulticore processorsen
dc.subjectruntime adaptationen
dc.subjectconcurrency throttlingen
dc.titleImproving the Efficiency of Parallel Applications on Multithreaded and Multicore Systemsen
dc.typeDissertationen
thesis.degree.disciplineComputer Scienceen
thesis.degree.grantorVirginia Polytechnic Institute and State Universityen
thesis.degree.leveldoctoralen
thesis.degree.namePh. D.en

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
dissertation.pdf
Size:
1.59 MB
Format:
Adobe Portable Document Format