Visible to Intel only — GUID: GUID-B0029A31-CE24-46EC-A02F-512DCE008772
Visible to Intel only — GUID: GUID-B0029A31-CE24-46EC-A02F-512DCE008772
mkl_?imatcopy_batch_strided
Computes a group of in-place scaled matrix copy or transposition using general matrices.
Syntax
void mkl_simatcopy_batch_strided (const char layout, const char trans, size_t row, size_t col, const float alpha, float * ab, size_t lda, size_t ldb, size_t stride, size_t batch_size);
void mkl_dimatcopy_batch_strided (const char layout, const char trans, size_t row, size_t col, const double alpha, double * ab, size_t lda, size_t ldb, size_t stride, size_t batch_size);
void mkl_cimatcopy_batch_strided (const char layout, const char trans, size_t row, size_t col, MKL_complex8 alpha, MKL_complex8 * ab, size_t lda, size_t ldb, size_t stride, size_t batch_size);
void mkl_zimatcopy_batch_strided (const char layout, const char trans, size_t row, size_t col, MKL_complex16 alpha, MKL_complex16 * ab, size_t lda, size_t ldb, size_t stride, size_t batch_size);
Description
The mkl_?imatcopy_batch_strided routine performs a series of scaled matrix copy or transposition. They are similar to the mkl_?imatcopy routine counterparts, but the mkl_?imatcopy_batch_strided routine performs matrix operations with a group of matrices.
All matrices ab have the same parameters (size, transposition operation…) and are stored at constant stride from each other. The operation is defined as
for i = 0 … batch_size – 1 AB is a matrix at offset i * stride in ab AB = alpha * op(AB) end for
Input Parameters
- layout
-
Specifies whether two-dimensional array storage is row-major (CblasRowMajor) or column-major (CblasColMajor)
- trans
-
Specifies op(AB), the transposition operation applied to the AB matrices.
If trans = 'N' or 'n', op(AB)=AB.
If trans = 'T' or 't', op(AB)=AB'
If trans = 'C' or 'c', op(AB)=conjg(AB')
If trans = 'R' or 'r', op(AB)=conjg(AB)
- row
-
Specifies the number of rows of the matrices AB. The value of row must be at least zero.
- col
-
Specifies the number of columns of the matrices AB. The value of col must be at least zero.
- alpha
-
Specifies the scalar alpha.
- ab
-
Array holding all the input matrix AB. Must be of size at least batch_size * stride.
- lda
-
The leading dimension of the matrix input AB. It must be positive and at least row if column major layout is used or at least col if row major layout is used.
- ldb
-
The leading dimension of the matrix input AB. It must be positive and at least
row if column major layout is used and op(AB) = AB or conjg(AB)
row if row major layout is used and op(AB) = AB' or conjg(AB')
col otherwise
- stride
-
Stride between two consecutive AB matrices, must be at least max(ldb,lda)*max(ka, kb) where
ka is row if column major layout is used or col if row major layout is used
kb is col if column major layout is used and op(AB) = AB or conjg(AB) or row major layout is used and op(AB) = AB' or conjg(AB'); kb is row otherwise.
- batch_size
-
Number of imatcopy computations to perform and AB matrices. Must be at least 0.
Output Parameters
- ab
-
Array holding the batch_size updated matrices AB.