gpus: jcuda vs opencl/javacl

244 views
Skip to first unread message

David Hall

unread,
Oct 17, 2012, 3:46:58 AM10/17/12
to scala-...@googlegroups.com
Hi everyone,

I'm recently needing to investigate GPGPU computation for various
research projects, so I was going to start building things out a
little.

The first big question, though, is should we go the CUDA route, or the
OpenCL route?

Cuda is more feature complete, and has a powerful BLAS and even sparse
blas libraries, with Java wrappers already.

OpenCL of course works on more things, and the maintainer of JavaCL is
a big supporter of Scala. If we went this route, we'd need to probably
outsource a lot of the computation to another library. The best
candidate I can find is ViennaCL.

Thoughts? Any strong preferences? I have nvidia gpus in all my machines, so...

-- David

Eric Christiansen

unread,
Oct 17, 2012, 5:02:53 PM10/17/12
to scala-...@googlegroups.com
I really like that OpenCL is an open standard.


-- David

--
You received this message because you are subscribed to the Google Groups "Scala Breeze" group.
To post to this group, send email to scala-...@googlegroups.com.
To unsubscribe from this group, send email to scala-breeze...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



Donnchadh Ó Donnabháin

unread,
Oct 17, 2012, 5:33:45 PM10/17/12
to scala-...@googlegroups.com
+1 for OpenCL, also for its openness.

Donnchadh

On 17 October 2012 22:02, Eric Christiansen

David Hall

unread,
Oct 17, 2012, 6:18:17 PM10/17/12
to scala-...@googlegroups.com
I certainly agree that OpenCL would be better given infinite time.
It's just a question of tradeoffs. It's very easy to write a
cuda-based library: you just have to wrap jcublas and jcusparse.
Writing an OpenCL involves dealing with ViennaCL, or actually
implementing things...

I'd like to write an OpenCL library, but I worry about time overhead.

-- David

Bryan Taylor

unread,
Jan 23, 2013, 2:29:43 PM1/23/13
to scala-...@googlegroups.com
I don't know if you've made progress on this in the last 4 months, but I'd like to chime in with +1 for OpenCL.  Apple committed to OpenCL for Mac GPUs starting with Snow Leopard. So I see CUDA as an excluding choice and OpenCL as an inclusive choice. I'm a Mac user, and with Snow Leopard, apple ships with an OpenCL implementation out of the box.

You mentioned JavaCL and it's sister ScalaCL. Maybe I'm missing something, but why could you not simply change your BLAS implementation to javacl-blas?

David Hall

unread,
Jan 23, 2013, 2:31:35 PM1/23/13
to scala-...@googlegroups.com
I've made no progress, but settled on OpenCL. I've done some work on
GPU-izing my parser, but it's very preliminary still.
> --
> You received this message because you are subscribed to the Google Groups
> "Scala Breeze" group.
> To post to this group, send email to scala-...@googlegroups.com.
> To unsubscribe from this group, send email to
> scala-breeze...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/scala-breeze/-/gaF5jxk6WwYJ.

Mageswaran D

unread,
Sep 7, 2015, 4:03:01 PM9/7/15
to Scala Breeze
Hi David,

Any updates on the progress? (Scala + OpenCL)

David Hall

unread,
Sep 7, 2015, 4:09:41 PM9/7/15
to scala-...@googlegroups.com
I released an OpenCL-based parser that probably won't be of any use unless you want to parse a lot of English text. https://github.com/dlwh/puck

I also started work on a CUDA-based library built on Breeze, but haven't worked on it in the last year or so: https://github.com/dlwh/gust

To unsubscribe from this group and stop receiving emails from it, send an email to scala-breeze...@googlegroups.com.

To post to this group, send email to scala-...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages