Developer Reference for Intel® oneAPI Math Kernel Library for C
p?swap
Swaps two distributed vectors.
Syntax
void psswap ( const MKL_INT*n , float*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx , float*y , const MKL_INT*iy , const MKL_INT*jy , const MKL_INT*descy , const MKL_INT*incy );
void pdswap ( const MKL_INT*n , double*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx , double*y , const MKL_INT*iy , const MKL_INT*jy , const MKL_INT*descy , const MKL_INT*incy );
void pcswap ( const MKL_INT*n , MKL_Complex8*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx , MKL_Complex8*y , const MKL_INT*iy , const MKL_INT*jy , const MKL_INT*descy , const MKL_INT*incy );
void pzswap ( const MKL_INT*n , MKL_Complex16*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx , MKL_Complex16*y , const MKL_INT*iy , const MKL_INT*jy , const MKL_INT*descy , const MKL_INT*incy );
Include Files
mkl_pblas.h
Description
Given two distributed vectors sub(x) and sub(y) , the p?swap routines return vectors sub(y) and sub(x) swapped, each replacing the other.
Here 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 pdswap COMPLEX for pcswap DOUBLE COMPLEX for pzswap 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 pdswap COMPLEX for pcswap DOUBLE COMPLEX for pzswap 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
- x
-
Overwritten by distributed vector sub(y) .
- y
-
Overwritten by distributed vector sub(x) .