[talks] P Prabhu preFPO

Melissa M. Lawson mml at CS.Princeton.EDU
Wed Sep 12 16:27:47 EDT 2012

Prakash Prabhu will present his preFPO on Tuesday September 18 at 11AM in 
Room 402. The members of his committee are: David August, advisor; David 
Walker and JP Singh, readers; Margaret Martonosi and Kai Li, nonreaders. 
Everyone is invited to attend his talk. His abstract follows below. 

Semantic Language Extensions for Implicit Parallel Programming 

Several emerging fields of science of engineering are increasingly 
characterized by computationally intensive programs that generate 
exponential amounts of data. Without parallelization, such programs do 
not benefit from the increasing core counts available in today’s chip 
multiprocessors. However, it is widely perceived that writing correct 
and well performing parallel programs is an extremely hard problem. In 
order to understand the challenges faced by scientific programmers in 
effectively leveraging parallel computation, this dissertation 
presents an in-depth field study of the practice of computational 

Based on the results of the field study, two new implicit parallel 
programming (IPP) solutions are proposed. IPP solutions offer the best 
of both automatic and explicit parallelization. With IPP, artificial 
constraints imposed by sequential models for automatic parallelization 
are overcome by use of semantic programming extensions that do not 
sacrifice the ease of sequential programming. These extensions are 
exploited by transformation tools to synthesize a correct parallel 
program without requiring enormous manual programming effort 
associated with explicit parallelization. 

The first IPP solution, Commutative Set, generalizes existing notions 
of semantic commutativity. It allows a programmer to expressively 
relax execution orders prohibited under a sequential programming model 
and enables multiple parallelism forms without additional parallelism 
constructs. The second IPP solution, WeakC, provides language 
extensions to weaken semantics of sequential data structures, and 
dynamically optimizes a parallel configuration of these data 
structures via a combined compiler-runtime system. 

Both Commutative Set and WeakC have been implemented within the 
clang/LLVM compiler framework, and are evaluated on several real-world 
applications running on real hardware, including some that are 
actively used by several scientists in their day-to-day research. 
Based on experimental results, this dissertation demonstrates the 
effectiveness of the proposed techniques. 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/talks/attachments/20120912/36495704/attachment.html>

More information about the talks mailing list