axpby#

ベクトル-スカラー積をスケールされたベクトルに加算します。

説明

axpby ルーチンは 2 つのスカラー - ベクトル積を計算し、それらを加算します。

\[y \leftarrow beta * y + alpha * x\]

説明:

  • xyn 要素のベクトルです

  • alphabeta はスカラーです

axpby は次の精度をサポートします。

T

float

double

std::complex<float>

std::complex<double>

axpby (バッファーバージョン)#

構文#

namespace oneapi::mkl::blas::column_major { 
    void axpby(sycl::queue &queue, 
               std::int64_t n, 
               T alpha, 
               sycl::buffer<T,1> &x, 
               std::int64_t incx, 
               T beta, 
               sycl::buffer<T,1> &y, 
               std::int64_t incy); 
}
namespace oneapi::mkl::blas::row_major { 
    void axpby(sycl::queue &queue, 
               std::int64_t n, 
               T alpha, 
               sycl::buffer<T,1> &x, 
               std::int64_t incx, 
               T beta, 
               sycl::buffer<T,1> &y, 
               std::int64_t incy); 
}

入力パラメーター#

queue

ルーチンを実行するキュー。

n

ベクトル xy の要素数。

alpha

スカラー alpha を指定します。

x

入力ベクトル x を保持するバッファー。バッファーのサイズは (1 + (n - 1)*abs(incx)) 以上である必要があります。行列ストレージを参照してください。

incx

ベクトル x の 2 つの連続する要素間のストライド。

beta

スカラー beta を指定します。

y

入力ベクトル y を保持するバッファー。バッファーのサイズは (1 + (n - 1)*abs(incy)) 以上である必要があります。行列ストレージを参照してください。

incy

ベクトルy の 2 つの連続する要素間のストライド。

出力パラメーター#

y

更新されたベクトル y を保持するバッファー。

axpby (USM バージョン)#

構文#

namespace oneapi::mkl::blas::column_major { 
    sycl::event axpby(sycl::queue &queue, 
                      std::int64_t n, 
                      oneapi::mkl::value_or_pointer<T> alpha, 
                      const T *x, 
                      std::int64_t incx, 
                      oneapi::mkl::value_or_pointer<T> beta, 
                      T *y, 
                      std::int64_t incy, 
                      const std::vector<event> &dependencies = {}); 
}
namespace oneapi::mkl::blas::row_major { 
    sycl::event axpby(sycl::queue &queue, 
                      std::int64_t n, 
                      oneapi::mkl::value_or_pointer<T> alpha, 
                      const T *x, 
                      std::int64_t incx, 
                      oneapi::mkl::value_or_pointer<T> beta, 
                      T *y, 
                      std::int64_t incy, 
                      const std::vector<event> &dependencies = {}); 
}

入力パラメーター#

queue

ルーチンを実行するキュー。

n

ベクトル xy の要素数。

alpha

スカラー alpha を指定します。value_or_pointer データタイプの詳細については、スカラー引数を参照してください。

x

この入力ベクトル x へのポインター。配列のサイズは (1 + (n - 1)*abs(incx) 以上である必要があります。行列ストレージを参照してください。

incx

ベクトル x の 2 つの連続する要素間のストライド。

beta

スカラー beta を指定します。value_or_pointer データタイプの詳細については、スカラー引数を参照してください。

y

この入力ベクトル y へのポインター。配列のサイズは (1 + (n - 1)*abs(incy) 以上である必要があります。行列ストレージを参照してください。

incy

ベクトル y の 2 つの連続する要素間のストライド。

dependencies

計算を開始する前に待機するイベントのリスト (存在する場合)。省略した場合、依存関係はデフォルトでなくなります。

出力パラメーター#

y

更新されたベクトル y を保持する配列。

戻り値#

計算が完了したことを確認するために待機する出力イベント。