5568

Nikola: embedding compiled GPU functions in Haskell

Geoffrey Mainland, Greg Morrisett
Harvard School of Engineering and Applied Sciences
Proceedings of the third ACM Haskell symposium on Haskell, Haskell ’10, 2010
BibTeX

Download Download (PDF)   View View   Source Source   Source codes Source codes

Package:

1875

views

We 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.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2025 hgpu.org

All rights belong to the respective authors

Contact us:

contact@hpgu.org