oneapi::mkl::sparse::sort_matrix#

行列ハンドル内のユーザーが指定する行列配列のインプレース・ソートを実行します。

説明#

スローされる例外の詳細は、エラー処理を参照してください。

oneapi::mkl::sparse::sort_matrix API は、指定されたスパース行列ハンドルに格納されているユーザー指定のスパース行列配列のインプレース・ソートを実行します。

このルーチンは、行列ハンドル作成ルーチン oneapi::mkl::sparse::set_<sparse_matrix_type>_data を通じて oneMKL に提供されるユーザー配列を操作します。

API#

構文#

USM および SYCL* バッファーを使用:

namespace oneapi::mkl::sparse { 
    sycl::event sort_matrix ( 
        sycl::queue &queue, 
        oneapi::mkl::sparse::matrix_handle_t spMat, 
        const std::vector<sycl::event> &dependencies = {}); 
}

インクルード・ファイル#

  • oneapi/mkl/spblas.hpp

入力パラメーター#

queue

SYCL* カーネルの実行に使用される SYCL* コマンドキューを指定します。

spMat

スパース行列およびその他の内部データを含むオブジェクトへのハンドル。oneapi::mkl::sparse::set_<sparse_matrix_type>_data ルーチンの 1 つを使用して作成されます。

現在、<sparse_matrix_type> でサポートされているは csr のみです。

dependencies

oneapi::mkl::sparse::sort_matrix ルーチンが依存するイベントのリストを含む、std::vector<sycl::event> & タイプのベクトル。

戻り値#

sycl::event

sort_matrix ルーチンの完了を待機したり、依存関係として追加できる SYCL* イベント。

// API 引数と使用例 
sycl::event ev_opt = sparse::sort_matrix(queue, spMat);                // USM で許可 
sycl::event ev_opt = sparse::sort_matrix(queue, spMat, {});            // USM で許可 
sycl::event ev_opt = sparse::sort_matrix(queue, spMat, dependencies);  // USM で許可 
sparse::sort_matrix(queue, spMat);                                     // sycl::buffer で推奨 
sparse::sort_matrix(queue, spMat, {});                                 // sycl::buffer の場合は推奨されませんが、サポートされています。 
sparse::sort_matrix(queue, spMat, dependencies);                       // sycl::buffer の場合は推奨されませんが、サポートされています。 
sycl::event ev_opt = sparse::sort_matrix(queue, spMat);               // sycl::buffer の場合は推奨されませんが、サポートされています。ほとんどの sycl::buffer oneMKL API には依存関係を渡す機能がないことに注意してください。