|
Ublas : |
Subject: Re: [ublas] cublas bindings
From: Andrey Asadchev (asadchev_at_[hidden])
Date: 2010-07-19 02:10:10
On Mon, Jul 19, 2010 at 1:01 AM, Rutger ter Borg <rutger_at_[hidden]> wrote:
> Andrey Asadchev wrote:
>
> > hello
> >
> > I just started working on cublas bindings for ublas using
> > numeric::bindings
> >
> > Here is my project page:
> >
>
> http://code.google.com/p/asadchev/source/browse/#svn/trunk/projects/boost/numeric/bindings/cublas
> >
> > can you give me some feedback if you are willing?
> > also, if you would like to collaborate, that would be great
> >
> > Thank you
>
> Hello Andrey,
>
> that's interesting. In what terms is it different from the current BLAS
> bindings, where CUBLAS support is built-in? CUBLAS bindings are generated
> from C-header files from NVidia. To enable, define
> BOOST_NUMERIC_BINDINGS_BLAS_CUBLAS. Having said that, CUBLAS support is
> untested and we're still looking for matrix and vector structures that live
> on the GPU.
>
> Further questions and/or comments are welcome.
>
> Cheers,
>
> Rutger
>
>
>
thank you
I was not aware off existing bindings.
I will definitely take a look at them.
I am trying to make implementation little bit more like expressions, rather
than fortran counterpart:
Here is an example:
cublas::matrix<double> A;
cublas::matrix<double> B;
B = cublas::matrix<double>(5,5);
A = B; // device to device copy
ublas::matrix<double> h(cublas::host(B)); // device to host copy
ublas::matrix<double, ublas::column_major> f;
cublas::host(f) = A; // device to host copy
cublas::matrix<double> C = cublas::gemm(A, B);
B += cublas::gemm(A, C);
cublas::gemm(3.0, B, C, 6.0, A); // fortran style dgemm