MAGMA 2.9.0
Matrix Algebra for GPU and Multicore Architectures
Loading...
Searching...
No Matches
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.
 
#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.
 

Detailed Description

Macro Definition Documentation

◆ magma_copyvector

#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.

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

#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.

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.