hipMemcpyAsync

Function hipMemcpyAsync 

Source
pub unsafe extern "C" fn hipMemcpyAsync(
    dst: *mut c_void,
    src: *const c_void,
    sizeBytes: usize,
    kind: hipMemcpyKind,
    stream: hipStream_t,
) -> hipError_t
Expand description

@brief Copies data from src to dst asynchronously.

The copy is always performed by the device associated with the specified stream.

For multi-gpu or peer-to-peer configurations, it is recommended to use a stream which is attached to the device where the src data is physically located. For optimal peer-to-peer copies, the copy device must be able to access the src and dst pointers (by calling hipDeviceEnablePeerAccess) with copy agent as the current device and src/dest as the peerDevice argument. If enabling device peer access is not done, the memory copy will still work, but will perform the copy using a staging buffer on the host.

@note If host or dst are not pinned, the memory copy will be performed synchronously. For best performance, use hipHostMalloc to allocate host memory that is transferred asynchronously.

@param[out] dst Data being copy to @param[in] src Data being copy from @param[in] sizeBytes Data size in bytes @param[in] kind Type of memory transfer @param[in] stream Stream identifier @returns #hipSuccess, #hipErrorInvalidValue, #hipErrorUnknown

@see hipMemcpy, hipMemcpy2D, hipMemcpyToArray, hipMemcpy2DToArray, hipMemcpyFromArray, hipMemcpy2DFromArray, hipMemcpyArrayToArray, hipMemcpy2DArrayToArray, hipMemcpyToSymbol, hipMemcpyFromSymbol, hipMemcpy2DAsync, hipMemcpyToArrayAsync, hipMemcpy2DToArrayAsync, hipMemcpyFromArrayAsync, hipMemcpy2DFromArrayAsync, hipMemcpyToSymbolAsync, hipMemcpyFromSymbolAsync