MAGMA  2.7.1
Matrix Algebra for GPU and Multicore Architectures
 All Classes Files Functions Friends Groups Pages
copymatrix: GPU => GPU

Macros

#define magma_icopymatrix(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix() for magma_int_t arrays.
 
#define magma_icopymatrix_async(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix_async() for magma_int_t arrays.
 
#define magma_index_copymatrix(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix() for magma_index_t arrays.
 
#define magma_index_copymatrix_async(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix_async() for magma_index_t arrays.
 
#define magma_ccopymatrix(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix() for magmaFloatComplex arrays.
 
#define magma_ccopymatrix_async(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix_async() for magmaFloatComplex arrays.
 
#define magma_dcopymatrix(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix() for double arrays.
 
#define magma_dcopymatrix_async(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix_async() for double arrays.
 
#define magma_scopymatrix(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix() for float arrays.
 
#define magma_scopymatrix_async(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix_async() for float arrays.
 
#define magma_zcopymatrix(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix() for magmaDoubleComplex arrays.
 
#define magma_zcopymatrix_async(m, n, dA_src, ldda, dB_dst, lddb, queue)
 Type-safe version of magma_copymatrix_async() for magmaDoubleComplex arrays.
 
#define magma_copymatrix(m, n, elemSize, dA_src, ldda, dB_dst, lddb, queue)
 Copy all or part of matrix dA_src on GPU device to dB_dst on GPU device. More...
 
#define magma_copymatrix_async(m, n, elemSize, dA_src, ldda, dB_dst, lddb, queue)
 Copy all or part of matrix dA_src on GPU device to dB_dst on GPU device. More...
 

Detailed Description

Macro Definition Documentation

magma_copymatrix (   m,
  n,
  elemSize,
  dA_src,
  ldda,
  dB_dst,
  lddb,
  queue 
)

Copy all or part of matrix dA_src on GPU device to dB_dst on GPU device.

Elements may be arbitrary size. Type-safe versions set elemSize appropriately. With CUDA unified addressing, dA and dB can be on different GPUs.

This version synchronizes the queue after the transfer. See magma_copymatrix_async() for an asynchronous version.

Parameters
[in]mNumber of rows of matrix A. m >= 0.
[in]nNumber of columns of matrix A. n >= 0.
[in]elemSizeSize of each element, e.g., sizeof(double).
[in]dA_srcSource array of dimension (ldda,n).
[in]lddaLeading dimension of matrix A. ldda >= m.
[out]dB_dstDestination array of dimension (lddb,n), on GPU device.
[in]lddbLeading dimension of matrix B. lddb >= m.
[in]queueQueue to execute in.
magma_copymatrix_async (   m,
  n,
  elemSize,
  dA_src,
  ldda,
  dB_dst,
  lddb,
  queue 
)

Copy all or part of matrix dA_src on GPU device to dB_dst on GPU device.

Elements may be arbitrary size. Type-safe versions set elemSize appropriately. With CUDA unified addressing, dA and dB can be on different GPUs.

This version is asynchronous: it may return before the transfer finishes. See magma_copyvector() for a synchronous version.

Parameters
[in]mNumber of rows of matrix A. m >= 0.
[in]nNumber of columns of matrix A. n >= 0.
[in]elemSizeSize of each element, e.g., sizeof(double).
[in]dA_srcSource array of dimension (ldda,n), on GPU device.
[in]lddaLeading dimension of matrix A. ldda >= m.
[out]dB_dstDestination array of dimension (lddb,n), on GPU device.
[in]lddbLeading dimension of matrix B. lddb >= m.
[in]queueQueue to execute in.