Portable Programming Models for Heterogeneous Platforms

Colloq: Speaker: 
Deepak Majeti
Colloq: Speaker Institution: 
Rice University
Colloq: Date and Time: 
Thu, 2015-01-29 10:00
Colloq: Location: 
Building 5200, Room 214 (Emory Room)
Colloq: Host: 
Jeffrey S. Vetter
Colloq: Host Email: 
Colloq: Abstract: 
Heterogeneous architectures have become mainstream today and are found in a range of system from mobile devices to supercomputers. However, these architectures with their diverse architectural features pose several programmability challenges including handling data-coherence, managing computation and data communication, and mapping of tasks and data distributions. Consequently, application programmers have to deal with new low-level programming languages that involves non-trivial learning and training. In my talk, I will present two programming models that tackle some of the aforementioned challenges. The first model is the “Concord” programming model which provides a widely used Intel Thread Building Blocks like interface and targets integrated CPU+GPU architectures with semi-coherent caches. This model also supports a wide set of C++ language features. The second model is “Heterogeneous Habanero C (H2C)”, which is an implementation of the Habanero execution model for modern heterogeneous architectures. The novel features of H2C include high-level language constructs that support automatic data layout, task mapping and data distributions. I will conclude the talk with performance evaluations of Concord and H2C, and propose future extensions to these models.
Colloq: Speaker Bio: 
Deepak is a 5th year graduate student at Rice University working with Prof. Vivek Sarkar. As part of his ongoing doctoral thesis, he is developing Heterogeneous Habanero-C (H2C). Deepak’s areas of interest include programming models, compiler and runtime support for modern heterogeneous architectures. He was a major contributor to the Concord project as an intern at Intel Programming Systems Lab. He also worked on porting the Chapel programming language onto the HSA + XTQ architecture as an intern at AMD Research. Apart from research, Deepak loves to play sports which include soccer, badminton, squash and of course cricket.