Files in this item



application/pdfECE499-Sp2013-wetherbee.pdf (301kB)
(no description provided)PDF


Title:GoPar: Automated Loop Parallelization of Go Programs
Author(s):Wetherbee, Ian
Contributor(s):Hwu, Wen-Mei W.
Go language
loop parallelization compiler techniques
Abstract:Parallel computation hardware has achieved widespread consumer adoption, but software developers still need to manually exploit parallelism. Popular parallelization techniques require developers to make one or more program modifications, including source annotations, separate parallel kernel languages, manual data marshalling code, and framework-specific data containers. This additional burden forms a barrier to widespread adoption of parallel programming, and makes programs more verbose and difficult to analyze and modify. To solve these problems, this thesis introduces GoPar, an automatic loop-parallelizing compiler for the Go language that targets multicore CPUs. It aims to require no extra work from the developer to exploit parallelism and supports transforming many of Go's language features that enable compact and expressive code. GoPar is based on a new multi-pass compiler architecture containing analysis and transformation passes for detecting parallelizable loops and outputting transformed code. GoPar removes the developer barrier to exploiting parallel hardware without sacrificing maintainable code.
Issue Date:2013-05
Publication Status:unpublished
Peer Reviewed:not peer reviewed
Date Available in IDEALS:2014-03-19

This item appears in the following Collection(s)

Item Statistics