Developer Reference for Intel® oneAPI Math Kernel Library for C
p?dot
Computes the dot product of two distributed real vectors.
Syntax
void psdot ( const MKL_INT*n , float*dot , const float*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx , const float*y , const MKL_INT*iy , const MKL_INT*jy , const MKL_INT*descy , const MKL_INT*incy );
void pddot ( const MKL_INT*n , double*dot , const double*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx , const double*y , const MKL_INT*iy , const MKL_INT*jy , const MKL_INT*descy , const MKL_INT*incy );
Include Files
mkl_pblas.h
Description
The ?dot functions compute the dot product dot of two distributed real vectors defined as
dot = sub( x )’*sub( y )
where sub(x) and sub(y) are n -element distributed vectors.
sub(x) denotes X(ix, jx:jx+n-1) if incx=m_x , and X(ix: ix+n-1, jx) if incx= 1 ;
sub(y) denotes Y(iy, jy:jy+n-1) if incy=m_y , and Y(iy: iy+n-1, jy) if incy= 1 .
Input Parameters
n
(global) The length of distributed vectors, n ≥ 0.
x
(local)
DOUBLE PRECISION for pddot Array, size (jx-1)*m_x + ix+(n-1)*abs(incx)) . This array contains the entries of the distributed vector sub(x) .
ix , jx
(global) The row and column indices in the distributed matrix X indicating the first row and the first column of the submatrix sub(X) , respectively.
descx
(global and local) array of dimension 9. The array descriptor of the distributed matrix X .
incx
(global) Specifies the increment for the elements of sub(x) . Only two values are supported, namely 1 and m_x . incx must not be zero.
y
(local)
DOUBLE PRECISION for pddot Array, size (jy-1)*m_y + iy+(n-1)*abs(incy)) . This array contains the entries of the distributed vector sub(y) .
iy , jy
(global) The row and column indices in the distributed matrix Y indicating the first row and the first column of the submatrix sub(Y) , respectively.
descy
(global and local) array of dimension 9. The array descriptor of the distributed matrix Y .
incy
(global) Specifies the increment for the elements of sub(y) . Only two values are supported, namely 1 and m_y . incy must not be zero.
Output Parameters
dot
(local)
DOUBLE PRECISION for pddot Dot product of sub(x) and sub(y) only in their scope.