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

Macros

#define magma_icopyvector(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector() for magma_int_t arrays.
 
#define magma_icopyvector_async(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector_async() for magma_int_t arrays.
 
#define magma_index_copyvector(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector() for magma_index_t arrays.
 
#define magma_index_copyvector_async(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector_async() for magma_index_t arrays.
 
#define magma_uindex_copyvector(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector() for magma_uindex_t arrays.
 
#define magma_uindex_copyvector_async(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector_async() for magma_uindex_t arrays.
 
#define magma_ccopyvector(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector() for magmaFloatComplex arrays.
 
#define magma_ccopyvector_async(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector_async() for magmaFloatComplex arrays.
 
#define magma_dcopyvector(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector() for double arrays.
 
#define magma_dcopyvector_async(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector_async() for double arrays.
 
#define magma_scopyvector(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector() for float arrays.
 
#define magma_scopyvector_async(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector_async() for float arrays.
 
#define magma_zcopyvector(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector() for magmaDoubleComplex arrays.
 
#define magma_zcopyvector_async(n, dx_src, incx, dy_dst, incy, queue)
 Type-safe version of magma_copyvector_async() for magmaDoubleComplex arrays.
 
#define magma_copyvector(n, elemSize, dx_src, incx, dy_dst, incy, queue)
 Copy vector dx_src on GPU device to dy_dst on GPU device. More...
 
#define magma_copyvector_async(n, elemSize, dx_src, incx, dy_dst, incy, queue)
 Copy vector dx_src on GPU device to dy_dst on GPU device. More...
 

Detailed Description

Macro Definition Documentation

magma_copyvector (   n,
  elemSize,
  dx_src,
  incx,
  dy_dst,
  incy,
  queue 
)

Copy vector dx_src on GPU device to dy_dst on GPU device.

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

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

Parameters
[in]nNumber of elements in vector.
[in]elemSizeSize of each element, e.g., sizeof(double).
[in]dx_srcSource array of dimension (1 + (n-1))*incx, on GPU device.
[in]incxIncrement between elements of hx_src. incx > 0.
[out]dy_dstDestination array of dimension (1 + (n-1))*incy, on GPU device.
[in]incyIncrement between elements of dy_dst. incy > 0.
[in]queueQueue to execute in.
magma_copyvector_async (   n,
  elemSize,
  dx_src,
  incx,
  dy_dst,
  incy,
  queue 
)

Copy vector dx_src on GPU device to dy_dst on GPU device.

Elements may be arbitrary size. Type-safe versions set elemSize appropriately. With CUDA unified addressing, dx and dy 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]nNumber of elements in vector.
[in]elemSizeSize of each element, e.g., sizeof(double).
[in]dx_srcSource array of dimension (1 + (n-1))*incx, on GPU device.
[in]incxIncrement between elements of hx_src. incx > 0.
[out]dy_dstDestination array of dimension (1 + (n-1))*incy, on GPU device.
[in]incyIncrement between elements of dy_dst. incy > 0.
[in]queueQueue to execute in.