axpy (USM Version)¶
Computes a vector-scalar product and adds the result to a vector.
Description¶
The axpy
routines compute a scalar-vector product and add the result
to a vector:
where:
x
andy
are vectors ofn
elements,alpha
is a scalar.
API¶
Syntax¶
namespace oneapi::mkl::blas::column_major {
sycl::event axpy(sycl::queue &queue,
std::int64_t n,
T alpha,
const T *x,
std::int64_t incx,
T *y,
std::int64_t incy,
const sycl::vector_class<sycl::event> &dependencies = {})
}
namespace oneapi::mkl::blas::row_major {
sycl::event axpy(sycl::queue &queue,
std::int64_t n,
T alpha,
const T *x,
std::int64_t incx,
T *y,
std::int64_t incy,
const sycl::vector_class<sycl::event> &dependencies = {})
}
The USM version of axpy
supports the following precisions and devices.
T |
Devices Supported |
---|---|
|
Host, CPU, and GPU |
|
Host, CPU, and GPU |
|
Host, CPU, and GPU |
|
Host, CPU, and GPU |
Input Parameters¶
- exec_queue
The queue where the routine should be executed.
- n
Number of elements in vector x.
- alpha
Specifies the scalar alpha.
- x
Pointer to the input vector x. The array holding the vector
x
must be of size at least(1 + (n – 1)\*abs(incx))
. See Matrix Storage for more details.- incx
Stride of vector x.
- y
Pointer to the input vector y. The array holding the vector
y
must be of size at least(1 + (n – 1)\*abs(incy))
. See Matrix Storage for more details.- incy
Stride of vector y.
- dependencies
List of events to wait for before starting computation, if any. If omitted, defaults to no dependencies.
Output Parameters¶
- y
Pointer to the updated vector y.
Return Values¶
Output event to wait on to ensure computation is complete.
Examples¶
An example of how to use axpy
can be found in the oneMKL
installation directory, under:
examples/dpcpp/blas/source/axpy.cpp