As far as I know, nobody has tried this before. It looks like cuBLAS does not conform<http://docs.nvidia.com/cuda/cublas/#cublas-level-2-function-reference>to the standard BLAS API, (e.g. their functions, instead of being named something like dgemv() are named cublasDgemv(), and take two extra parameters at the beginning) so you won't be able to just plug the cuBLAS shared library into Julia have have it "work". You will need to write some kind of wrapper library around cuBLAS that does any special initialization/cleanup that cuBLAS needs, as well as mapping "standard" BLAS library names to cuBLAS library names.
A project similar in spirit was the libgfortblas library<https://github.com/JuliaLang/julia/blob/master/deps/gfortblas.c>that Jameson wrote, to map our C calls to the cblas versions of Apple's BLAS libraries. Looking at that could provide some inspiration for this project, as it does pretty much everything I outlined above, except that cuBLAS will (of course) require more work, as you'll need to wrap basically the entire library instead of just a few functions. On Wed, Feb 12, 2014 at 9:53 AM, Pedro Rafael < [email protected]> wrote: > Many thanks Iain Dunning. You have been very enlightening. Can we link the > library cublas Julia? > > cuBLAS: https://developer.nvidia.com/cuBLAS > > > Hugs, > Pedro Rafael. > > > 2014-02-12 14:28 GMT-03:00 Iain Dunning <[email protected]>: > > 1. I think the default is to use OpenBLAS on all platforms, but this can >> be swapped out if you'd like to use a different BLAS implementation. >> 2. I believe it already is. The core language certainly is, the rest is >> just a package ecosystem issue. We have database packages, graphics >> packages, web/internet packages, etc. - a good sign that it is >> "general-purpose". >> 3. I imagine use of the GPU in core Julia is a long way off or ever - but >> I'm sure there will be more and more packages that do clever things in this >> area. There certainly is a lot of interest in this area. We have CUDA and >> OpenCL packages for now, at least. >> >> >> On Wednesday, February 12, 2014 12:16:05 PM UTC-5, Pedro Rafael wrote: >>> >>> [1] The installation of Julia from the compilation of the source code >>> makes use of OpenBlas library? >>> [2] Julia will also be a general-purpose language like Python? >>> [3] The use of GPU in the future will be native? >>> >>> Regards, >>> Pedro Rafael Diniz Marinho. >>> >> >
