axpy#
ベクトル - スカラーの積を計算し、その結果をベクトルに加算します。
説明#
axpy ルーチンは 2 つのスカラー - ベクトル積を計算し、それらをベクトルに加算します。操作はのように定義されています。
\[y \leftarrow alpha*x+y\]
説明:
xとyはn要素のベクトルですalphaはスカラーです
axpy は次の精度をサポートします。
T |
|---|
|
|
|
|
|
|
axpy (バッファーバージョン)#
構文#
namespace oneapi::mkl::blas::column_major {
void axpy(sycl::queue &queue,
std::int64_t n,
T alpha,
sycl::buffer<T,1> &x,
std::int64_t incx,
sycl::buffer<T,1> &y,
std::int64_t incy)
}namespace oneapi::mkl::blas::row_major {
void axpy(sycl::queue &queue,
std::int64_t n,
T alpha,
sycl::buffer<T,1> &x,
std::int64_t incx,
sycl::buffer<T,1> &y,
std::int64_t incy)
}入力パラメーター#
出力パラメーター#
- y
更新されたベクトル
yを保持するバッファー。
例#
axpy の使用例は、oneMKL インストール・ディレクトリーの以下の場所にあります。
share/doc/mkl/examples/sycl/blas/source/axpy.cppaxpy (USM バージョン)#
構文#
namespace oneapi::mkl::blas::column_major {
sycl::event axpy(sycl::queue &queue,
std::int64_t n,
oneapi::mkl::value_or_pointer<T> alpha,
const T *x,
std::int64_t incx,
T *y,
std::int64_t incy,
const std::vector<sycl::event> &dependencies = {})
}namespace oneapi::mkl::blas::row_major {
sycl::event axpy(sycl::queue &queue,
std::int64_t n,
oneapi::mkl::value_or_pointer<T> alpha,
const T *x,
std::int64_t incx,
T *y,
std::int64_t incy,
const std::vector<sycl::event> &dependencies = {})
}入力パラメーター#
- queue
ルーチンを実行するキュー。
- n
ベクトル
x内の要素数。- alpha
スカラー
alphaを指定します。value_or_pointerデータタイプの詳細については、スカラー引数を参照してください。- x
入力ベクトル
xへのポインター。ベクトルxを保持する配列のサイズは、(1 + (n- 1)*abs(incx)) 以上である必要があります。行列ストレージを参照してください。- incx
ベクトル
xのストライド。- y
入力ベクトル
yへのポインター。ベクトルyを保持する配列のサイズは、(1 + (n- 1)*abs(incy)) 以上である必要があります。行列ストレージを参照してください。- incy
ベクトル
yのストライド。- dependencies
計算を開始する前に待機するイベントのリスト (存在する場合)。省略した場合、依存関係はデフォルトでなくなります。
出力パラメーター#
- y
更新されたベクトル
yへのポインター。
戻り値#
計算が完了したことを確認するために待機する出力イベント。