Boost logo

Ublas :

Subject: Re: [ublas] Bindings with ACML MSVC example project? I have linking problems.
From: Rutger ter Borg (rutger_at_[hidden])
Date: 2012-07-01 07:26:19


Op 30-6-2012 20:54, George Slavov schreef:
> Thanks for your response Thomas. I really should have mentioned my build
> environment. I'm on Windows 7, 64-bit as you guessed, using MSVC 2010
> and Acml 5.1.0. I was really hoping the integer 8 macro will do the
> trick, but it didn't seem to change anything. I really want to use
> 64-bit versions of things because I'll be using pretty large data sets,
> so I'm not sure I even want to get the 32-bit version of Acml working.
>
> I traced the ublas bindings call I have
>
> boost::numeric::bindings::blas::gemv(1.0f,A,x,0,blasResult);
>
> all the way to the Acml call
>
> BLAS_SGEMV( &blas_option< Trans >::value, &m, &n, &alpha, a, &lda, x,
> &incx, &beta, y, &incy );
>
> and my debugger shows the first parameter (blas_option< Trans >::value)
> contains 'N' as a char, so that looks right. But something here confuses
> me. Acml.h shows the signature of sgemv is
>
> extern void sgemv(char transa, int m, int n, float alpha, float *a, int
> lda, float *x, int incx, float beta, float *y, int incy);
>
> Note the first param is not a pointer to a char, but the char itself. So
> what's with all the reference operators in the ublas bindings code?
>

It's generating a call to the Fortran library; Fortran needs references.
Apparently you're binding against ACML's C-library? If so, does it help
to define BOOST_NUMERIC_BINDINGS_BLAS_CLAS?

Cheers,

Rutger