how can i use cblas dgemv in order to multiply different dimension vectors?

108 Views Asked by At

I have a vector sigma[40000] and another one u[200].

I want to use dgemv in order to multiply the first 200 numbers of sigma with u, and then the next 200-400 again with u until I use all of the numbers of sigma.

I have something like this:

for(i=0; i<200; i++)
{
    for(j=0; j<200; j++)
    {
        sum = sum +sigma[i*200 + j]*u[j]
    }

    z=...+sum;
}

I want to make something like this:

cblas_dgemv(CblasRowMajor,CblasNoTrans,1,200,1,u,200,sigma,1,0,return,1)

for(i=0; i<200; i++)
{
    sum=...+return[i];
}

The return value is a vector (return[200]) in which return[0]=sigma[0-199]*u[0-199].

0

There are 0 best solutions below