Programming languages for high-performance parallel computing

Decanato - Facoltà di scienze informatiche

Data d'inizio: 16 Giugno 2010

Data di fine: 17 Giugno 2010

The Faculty of Informatics is pleased to announce a seminar given by Nate Nystrom

DATE: Wednesday, June 16th 2010
PLACE: USI Università della Svizzera italiana, room SI-008, Informatics building (Via G. Buffi 13)
TIME: 09.30

Power issues are driving the shift to parallel architectures in mainstream computing.  Yet, writing software for these architectures remains a difficult problem.  In this talk, I will describe some of my work on languages for parallel computing.  In the first part of the talk, I'll discuss work on X10, a concurrent OO language for high-performance computing developed at IBM Research.  X10 supports lightweight concurrency and distribution.  X10 includes novel features to rule out common errors in concurrent programs.

In the second part of the talk, I'll discuss Firepile, a library for programming graphics processing units (GPUs) in the Scala programming language.  GPUs are increasingly being used for high-performance parallel applications; yet, programming GPUs remains difficult: the programming model is unfamiliar and achieving good performance requires knowledge of subtle details of the GPU architecture.  Firepile simplifies GPU programming by moving much of the complexity into the library, allowing the programmer to focus on the problem at hand.  In this talk, I will describe our work on Firepile and present some preliminary results.

X10 is joint work with Vijay Saraswat, Olivier Tardieu, Igor Peshansky, Jens Palsberg, Christian Grothoff, with contributions from many others at IBM Research and elsewhere.  Firepile is joint work with Derek White, Kishen Das, and Ram Bhandage.

Nate Nystrom is an Assistant Professor in the Computer Science and Engineering Department at the University of Texas at Arlington.  Prior to joining UTA, he was a postdoctoral researcher at IBM Watson Research Center in Hawthorne, NY.  Nate received his Ph.D. in Computer Science from Cornell University in 2007. He also holds B.S. and M.S. degrees in Computer Science from Purdue University and an M.S. in Computer Science from Cornell.  His research interests include programming languages, compilers, tools, and methodologies for constructing safe, secure, and efficient systems.

HOST: Prof. Mauro Pezzè