Copenhagen Programming Language Seminar

Joint HIPERFIT and COPLAS talk:

Nikola: Embedding Compiled GPU Functions in Haskell

Geoffrey Mainland
Microsoft Research, Cambridge, England

Monday, May 14th, 2012, 14:15 - 15:00
DIKU, Universitetsparken 1, Room TBA (see info screen in lobby)


I will describe Nikola, a first-order language of array computations embedded in Haskell that compiles to GPUs via CUDA using a new set of type-directed techniques to support re-usable computations. Nikola automatically handles a range of low-level details for Haskell programmers, such as marshaling data to/from the GPU, size inference for buffers, memory management, and automatic loop parallelization. Additionally, Nikola supports both compile-time and run-time code generation, making it possible for programmers to choose when and where to specialize embedded programs.

Bio: Geoffrey Mainland obtained an A.B. in Physics and, in 2011, a Ph.D. in computer science from Harvard University under the supervision of Greg Morrisett and Matt Welsh. He is presently a post doc with the Programming Principles and Tools group at Microsoft Research Cambridge. His research focuses on tools and techniques for building correct systems from resource-constrained components.

Scientific host: Ken Friis Larsen Administrative host:Jette Møller. All are welcome.
The Copenhagen Programming Language Seminar (COPLAS) is a collaboration between DIKU, DTU, ITU, and RUC.
COPLAS is part of the FIRST Research School.
To receive information about COPLAS talks by email, send a message to prog-lang-request@mail.it-c.dk with the word 'subscribe' as subject or in the body.

For more information about COPLAS, see http://www.coplas.org