Easy PRAM-based High-performance parallel Programming

dc.contributor.advisorBarua, Rajeeven_US
dc.contributor.authorGhanim, Fadyen_US
dc.contributor.departmentElectrical Engineeringen_US
dc.contributor.publisherDigital Repository at the University of Marylanden_US
dc.contributor.publisherUniversity of Maryland (College Park, Md.)en_US
dc.date.accessioned2017-01-25T06:36:33Z
dc.date.available2017-01-25T06:36:33Z
dc.date.issued2016en_US
dc.description.abstractParallel machines have become more widely used. Unfortunately parallel programming technologies have advanced at a much slower pace except for regular programs. For irregular programs, this advancement is inhibited by high synchronization costs, non-loop parallelism, non-array data structures, recursively expressed parallelism and parallelism that is too fine-grained to be exploitable. This work introduced ICE, a new parallel programming language that is easy-to-program, since: (i) ICE is a synchronous, lock-step language; (ii) for a PRAM algorithm its ICE program amounts to directly transcribing it; and (iii) the PRAM algorithmic theory offers unique wealth of parallel algorithms and techniques. This work suggests that ICE be a part of an ecosystem consisting of the XMT architecture, the PRAM algorithmic model, and ICE itself, that together deliver on the twin goal of easy programming and efficient parallelization of irregular programs. The XMT architecture, developed at UMD, can exploit fine-grained parallelism in irregular programs. This work also presents the ICE compiler which translates the ICE language into the multithreaded XMTC language; the significance of this is that multi-threading is a feature shared by practically all current scalable parallel programming languages. As one indication of ease of programming, it was observed a reduction in code size in 11 out of 16 benchmarks vs. XMTC. For these programs, the average reduction in number of lines of code was 35.53% when compared to hand optimized XMTC The remaining 4 benchmarks had the same code size. The ICE compiler achieved comparable run-time to XMTC with a 0.48% average gain for ICE across all benchmarks.en_US
dc.identifierhttps://doi.org/10.13016/M2TG0X
dc.identifier.urihttp://hdl.handle.net/1903/19069
dc.language.isoenen_US
dc.subject.pqcontrolledComputer engineeringen_US
dc.subject.pqcontrolledComputer scienceen_US
dc.subject.pquncontrolledEase-of-Programmingen_US
dc.subject.pquncontrolledFine-grained Parallelismen_US
dc.subject.pquncontrolledICE Languageen_US
dc.subject.pquncontrolledIrrigular Programsen_US
dc.subject.pquncontrolledNested Parallelismen_US
dc.subject.pquncontrolledPRAMen_US
dc.titleEasy PRAM-based High-performance parallel Programmingen_US
dc.typeDissertationen_US

Files

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