Task Parallel Programming on the HammerBlade Manycore

dc.contributor.advisorOskin, Mark
dc.contributor.authorRuttenberg, Max
dc.date.accessioned2025-10-02T16:07:28Z
dc.date.issued2025-10-02
dc.date.submitted2025
dc.descriptionThesis (Ph.D.)--University of Washington, 2025
dc.description.abstractManycore architectures integrate hundreds of cores on a single chip by using simple cores and simple memory systems usually based on software-managed scratchpad memories (SPMs). However, such architectures are notoriously challenging to program, since the programmers need to manually manage all aspects of data movement and synchronization for both correctness and performance. This manycore programmability challenge is one of the key barriers to achieving the promise of manycore architectures. Single program multiple data the de-facto standard parallel programming paradigm for manycore processors, not because the programming model is simple, but because its overheads are low. By contrast, the dynamic task parallel programming model has enjoyed considerable success in addressing the programmability challenge of multi-core processors with tens of complex cores and robust and coherent cache memory hierarchy. In this thesis, I focus on the HammerBlade manycore, and demonstrate that a work-stealing runtime is not just feasible on manycore architectures with SPMs, but such a runtime can also significantly improve the performance of irregular workloads when executing on these architectures. I also explore optimizations to leverage unused SPM space. This runtime framework achieves as much as 1.2–28.5× speedup on select workloads, and only induces minimal overheads. I show this runtime remains scalable up to a thousand-core system. Loss of locality can be mitigated by embedding locality-aware semantics to the scheduler scheduling while adding a minimum burden on the programmer.
dc.embargo.lift2026-10-02T16:07:28Z
dc.embargo.termsRestrict to UW for 1 year -- then make Open Access
dc.format.mimetypeapplication/pdf
dc.identifier.otherRuttenberg_washington_0250E_28876.pdf
dc.identifier.urihttps://hdl.handle.net/1773/53974
dc.language.isoen_US
dc.rightsnone
dc.subjectComputer Architecture
dc.subjectMany-core
dc.subjectParallel Computing
dc.subjectSoftware Engineering
dc.subjectComputer science
dc.subjectComputer engineering
dc.subject.otherComputer science and engineering
dc.titleTask Parallel Programming on the HammerBlade Manycore
dc.typeThesis

Files