Skip navigation
Please use this identifier to cite or link to this item: http://arks.princeton.edu/ark:/88435/dsp018k71nm05g
Full metadata record
DC FieldValueLanguage
dc.contributor.advisorAugust, David I-
dc.contributor.authorFix, Jordan Samuel-
dc.contributor.otherComputer Science Department-
dc.date.accessioned2020-08-10T15:40:28Z-
dc.date.available2020-08-10T15:40:28Z-
dc.date.issued2020-
dc.identifier.urihttp://arks.princeton.edu/ark:/88435/dsp018k71nm05g-
dc.description.abstractSpeculation with transactional memory systems helps programmers and compilers produce profitable thread-level parallel programs. Prior work shows that supporting transactions that can span multiple threads, rather than requiring transactions be contained within a single thread, enables new types of speculative parallelization techniques for both programmers and parallelizing compilers. Unfortunately, software support for multi-threaded transactions (MTXs) comes with significant additional inter-thread communication overhead for speculation validation. This overhead can make otherwise good parallelization unprofitable for programs with sizeable read and write sets. Some programs using these prior software MTXs overcame this problem through significant efforts by expert programmers to minimize these sets and optimize communication, capabilities which compiler technology has been unable to achieve to date. Instead, this dissertation makes speculative parallelization less laborious and more feasible through low-overhead speculation validation, presenting the first complete design, implementation, and evaluation of hardware MTXs. Even with maximal speculation validation of every load and store inside transactions of tens to hundreds of millions of instructions, profitable parallelization of complex programs can be achieved. Across 8 benchmarks, this system achieves a geomean speedup of 104% over sequential execution on a multicore machine with 4 cores, with modest increases in power and energy consumption. This work could be used as a building block to enable more realistic automatic parallelization of complex programs, by providing low-overhead, long-running, resilient transactions that support a diverse set of parallel paradigm options.-
dc.language.isoen-
dc.publisherPrinceton, NJ : Princeton University-
dc.relation.isformatofThe Mudd Manuscript Library retains one bound copy of each dissertation. Search for these copies in the library's main catalog: <a href=http://catalog.princeton.edu> catalog.princeton.edu </a>-
dc.subjecthardware transactional memory-
dc.subjectmultithreaded transactions-
dc.subjectpipelined parallelism-
dc.subjectthread-level speculation-
dc.subject.classificationComputer science-
dc.titleHARDWARE MULTITHREADED TRANSACTIONS: ENABLING SPECULATIVE MULTITHREADED PIPELINE PARALLELIZATION FOR COMPLEX PROGRAMS-
dc.typeAcademic dissertations (Ph.D.)-
Appears in Collections:Computer Science

Files in This Item:
File Description SizeFormat 
Fix_princeton_0181D_13221.pdf1.93 MBAdobe PDFView/Download


Items in Dataspace are protected by copyright, with all rights reserved, unless otherwise indicated.