Roman Leshchinskiy:
Bas van Dijk wrote:
A bit offtopic but slightly related:
I just added a GSoC project proposal about adding a nVidia CUDA
backend to Data Parallel Haskell:
http://hackage.haskell.org/trac/summer-of-code/ticket/1537
It would be great if this physics engine or matrix library could run
on a CUDA enabled nVidia "graphics" card!
As Don said, we're working on that. However, this is a lot more work
than just a summer project. The reason is that you can't run
arbitrary NDP computations on the GPU, just a fairly restricted
subset. This means that you need to decide what to put on the GPU
during code generation which, in turn, means a significant amount of
compiler hacking. It's really more than enough work for a PhD thesis.
To elaborate on that, our current, more moderate goal is to implement
a sort of embedded, array DSL into Haskell/GHC, so that all array DSL
code is compiled down to CUDA and linked into the rest of the Haskell
application using the FFI. This requires the design of the array DSL
(partially done), a small addition to GHC (not done), and a compiler
from GHC Core to CUDA (partially done). All this is part of a PhD
project, and we hope to have something to show later this year.
Step 2, then, is to implement a backend to DPH using that array DSL.
Doing that efficiently is going to be another significant project
(much more than can be achieved in a GSoC project).
Manuel
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe