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
call mkl_simatcopy_batch_strided(layout, trans, row, col, alpha, ab, lda, ldb, stride, batch_size)
call mkl_dimatcopy_batch_strided(layout, trans, row, col, alpha, ab, lda, ldb, stride, batch_size)
call mkl_cimatcopy_batch_strided(layout, trans, row, col, alpha, ab, lda, ldb, stride, batch_size)
call mkl_zimatcopy_batch_strided(layout, trans, row, col, alpha, ab, lda, ldb, stride, 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
-
CHARACTER*1.
Specifies whether two-dimensional array storage is row-major or column-major
- trans
-
CHARACTER*1. 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
-
INTEGER. Specifies the number of rows of the matrices AB. The value of row must be at least zero.
- col
-
INTEGER. Specifies the number of columns of the matrices AB. The value of col must be at least zero.
- alpha
-
REAL for mkl_simatcopy_batch_strided.
DOUBLE PRECISION for mkl_dimatcopy_batch_strided.
COMPLEX for mkl_cimatcopy_batch_strided.
DOUBLE COMPLEX for mkl_zimatcopy_batch_strided.
Specifies the scalar alpha.
- ab
-
REAL for mkl_simatcopy_batch_strided.
DOUBLE PRECISION for mkl_dimatcopy_batch_strided.
COMPLEX for mkl_cimatcopy_batch_strided.
DOUBLE COMPLEX for mkl_zimatcopy_batch_strided.
Array holding all the input matrix AB. Must be of size at least batch_size * stride.
- lda
-
INTEGER. 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
-
INTEGER. 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
-
INTEGER. 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
-
INTEGER. 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.