On Mon, Jul 19, 2010 at 1:01 AM, Rutger ter Borg <rutger@terborg.net> 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