mkl-devel-dpcpp 2024.0.0__py2.py3-none-win_amd64.whl → 2024.2.0__py2.py3-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mkl-devel-dpcpp might be problematic. Click here for more details.
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/blas/buffer_decls.hpp +53 -15
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/blas/usm_decls.hpp +186 -146
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/dfti.hpp +3 -1
- mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/lapack/concepts.hpp +55 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/lapack/exceptions.hpp +75 -0
- {mkl_devel_dpcpp-2024.0.0.data/data/Library/include/oneapi/mkl → mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/lapack}/lapack.hpp +79 -315
- mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/lapack/scratchpad.hpp +106 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/lapack.hpp +23 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/engines.hpp +20 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/functions.hpp +2 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/spblas/sparse_auxiliary.hpp +68 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/spblas/sparse_operations.hpp +383 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/spblas/sparse_structures.hpp +194 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/include/oneapi/mkl/spblas.hpp +32 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/stats.hpp +2 -2
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/buffer.hpp +63 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/decls.hpp +2 -2
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/device/detail/decls.hpp +1 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/device/detail/dispatch.hpp +1 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/device/detail/ep.hpp +1 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/device/detail/ha.hpp +1 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/device/detail/la.hpp +1 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/device/detail/rts.hpp +1 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/device/detail/scalar.hpp +1 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/device/vm.hpp +1 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/span.hpp +69 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm/usm.hpp +67 -1
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/lib/mkl_sycl.lib +0 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/lib/mkl_sycl_blas_dll.lib +0 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/lib/mkl_sycl_data_fitting_dll.lib +0 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/lib/mkl_sycl_dft_dll.lib +0 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/lib/mkl_sycl_dll.lib +0 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/lib/mkl_sycl_lapack_dll.lib +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/lib/mkl_sycl_rng_dll.lib +0 -0
- mkl_devel_dpcpp-2024.2.0.data/data/Library/lib/mkl_sycl_sparse_dll.lib +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/lib/mkl_sycl_stats_dll.lib +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/lib/mkl_sycl_vm_dll.lib +0 -0
- {mkl_devel_dpcpp-2024.0.0.dist-info → mkl_devel_dpcpp-2024.2.0.dist-info}/METADATA +23 -25
- mkl_devel_dpcpp-2024.2.0.dist-info/RECORD +87 -0
- {mkl_devel_dpcpp-2024.0.0.dist-info → mkl_devel_dpcpp-2024.2.0.dist-info}/WHEEL +1 -1
- mkl_devel_dpcpp-2024.0.0.data/data/Library/include/oneapi/mkl/spblas.hpp +0 -963
- mkl_devel_dpcpp-2024.0.0.data/data/Library/lib/mkl_sycl_blas_dll.lib +0 -0
- mkl_devel_dpcpp-2024.0.0.data/data/Library/lib/mkl_sycl_data_fitting_dll.lib +0 -0
- mkl_devel_dpcpp-2024.0.0.data/data/Library/lib/mkl_sycl_dft_dll.lib +0 -0
- mkl_devel_dpcpp-2024.0.0.data/data/Library/lib/mkl_sycl_dll.lib +0 -0
- mkl_devel_dpcpp-2024.0.0.data/data/Library/lib/mkl_sycl_lapack_dll.lib +0 -0
- mkl_devel_dpcpp-2024.0.0.data/data/Library/lib/mkl_sycl_sparse_dll.lib +0 -0
- mkl_devel_dpcpp-2024.0.0.dist-info/RECORD +0 -80
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/bfloat16.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/blas/buffer.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/blas/types.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/blas/usm.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/blas.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/exceptions.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/experimental/data_fitting/interpolate.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/experimental/data_fitting/spline_and_data_params.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/experimental/data_fitting/splines.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/experimental/data_fitting.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/export.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/detail/engine_base.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/bernoulli_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/bits_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/distribution_base.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/engine_base.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/engine_helpers_base.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/exponential_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/gaussian_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/lognormal_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/mcg31m1_helpers_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/mcg31m1_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/mcg59_helpers_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/mcg59_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/mrg32k3a_helpers_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/mrg32k3a_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/mrg32k3a_skip_ahead_matrix.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/philox4x32x10_helpers_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/philox4x32x10_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/poisson_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/types.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/uniform_bits_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/uniform_impl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/detail/vm_wrappers.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/distributions.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/engine_helpers.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/engines.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/functions.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device/types.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/device.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng/distributions.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/rng.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/types.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl/vm.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.data → mkl_devel_dpcpp-2024.2.0.data}/data/Library/include/oneapi/mkl.hpp +0 -0
- {mkl_devel_dpcpp-2024.0.0.dist-info → mkl_devel_dpcpp-2024.2.0.dist-info}/LICENSE.txt +0 -0
- {mkl_devel_dpcpp-2024.0.0.dist-info → mkl_devel_dpcpp-2024.2.0.dist-info}/top_level.txt +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*******************************************************************************
|
|
2
|
-
* Copyright
|
|
2
|
+
* Copyright 2024 Intel Corporation.
|
|
3
3
|
*
|
|
4
4
|
* This software and the related documents are Intel copyrighted materials, and
|
|
5
5
|
* your use of them is governed by the express license under which they were
|
|
@@ -11,40 +11,20 @@
|
|
|
11
11
|
* or implied warranties, other than those that are expressly stated in the
|
|
12
12
|
* License.
|
|
13
13
|
*******************************************************************************/
|
|
14
|
+
#ifndef _ONEAPI_MKL_LAPACK_LAPACK_HPP__
|
|
15
|
+
#define _ONEAPI_MKL_LAPACK_LAPACK_HPP__
|
|
14
16
|
|
|
15
|
-
#ifndef _LAPACK_HPP__
|
|
16
|
-
#define _LAPACK_HPP__
|
|
17
|
-
|
|
18
|
-
//
|
|
19
|
-
// DPC++ MKL LAPACK API
|
|
20
|
-
//
|
|
21
|
-
|
|
22
|
-
#include <cstdint>
|
|
23
17
|
#include <complex>
|
|
24
|
-
|
|
18
|
+
#include <cstdint>
|
|
25
19
|
#include <sycl/sycl.hpp>
|
|
26
20
|
|
|
27
|
-
#include "oneapi/mkl/export.hpp"
|
|
28
|
-
#include "mkl_types.h"
|
|
29
21
|
#include "oneapi/mkl/types.hpp"
|
|
30
|
-
#include "oneapi/mkl/
|
|
22
|
+
#include "oneapi/mkl/export.hpp"
|
|
31
23
|
|
|
32
24
|
namespace oneapi {
|
|
33
25
|
namespace mkl {
|
|
34
26
|
namespace lapack {
|
|
35
27
|
|
|
36
|
-
namespace internal
|
|
37
|
-
{
|
|
38
|
-
// auxilary type aliases and forward declarations
|
|
39
|
-
template <bool, typename T=void> struct enable_if;
|
|
40
|
-
template <typename T> struct is_fp;
|
|
41
|
-
template <typename T> struct is_rfp;
|
|
42
|
-
template <typename T> struct is_cfp;
|
|
43
|
-
template <typename fp> using is_floating_point = typename enable_if<is_fp<fp>::value>::type*;
|
|
44
|
-
template <typename fp> using is_real_floating_point = typename enable_if<is_rfp<fp>::value>::type*;
|
|
45
|
-
template <typename fp> using is_complex_floating_point = typename enable_if<is_cfp<fp>::value>::type*;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
28
|
// potrf
|
|
49
29
|
DLL_EXPORT sycl::event potrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, float *a, std::int64_t lda, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
50
30
|
DLL_EXPORT sycl::event potrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, double *a, std::int64_t lda, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
@@ -54,8 +34,6 @@ DLL_EXPORT void potrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n
|
|
|
54
34
|
DLL_EXPORT void potrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
55
35
|
DLL_EXPORT void potrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
56
36
|
DLL_EXPORT void potrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
57
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
58
|
-
std::int64_t potrf_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t lda);
|
|
59
37
|
|
|
60
38
|
// potrs
|
|
61
39
|
DLL_EXPORT sycl::event potrs(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t nrhs, float *a, std::int64_t lda, float *b, std::int64_t ldb, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
@@ -66,8 +44,6 @@ DLL_EXPORT void potrs(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n
|
|
|
66
44
|
DLL_EXPORT void potrs(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t nrhs, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<double> &b, std::int64_t ldb, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
67
45
|
DLL_EXPORT void potrs(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t nrhs, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::complex<float>> &b, std::int64_t ldb, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
68
46
|
DLL_EXPORT void potrs(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t nrhs, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::complex<double>> &b, std::int64_t ldb, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
69
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
70
|
-
std::int64_t potrs_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t nrhs, std::int64_t lda, std::int64_t ldb);
|
|
71
47
|
|
|
72
48
|
// potri
|
|
73
49
|
DLL_EXPORT sycl::event potri(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, float *a, std::int64_t lda, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
@@ -78,28 +54,18 @@ DLL_EXPORT void potri(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n
|
|
|
78
54
|
DLL_EXPORT void potri(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
79
55
|
DLL_EXPORT void potri(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
80
56
|
DLL_EXPORT void potri(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
81
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
82
|
-
std::int64_t potri_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t lda);
|
|
83
57
|
|
|
84
58
|
// trtri
|
|
85
59
|
DLL_EXPORT sycl::event trtri(sycl::queue &queue, oneapi::mkl::uplo uplo, oneapi::mkl::diag diag, std::int64_t n, float *a, std::int64_t lda, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
86
60
|
DLL_EXPORT sycl::event trtri(sycl::queue &queue, oneapi::mkl::uplo uplo, oneapi::mkl::diag diag, std::int64_t n, double *a, std::int64_t lda, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
87
61
|
DLL_EXPORT sycl::event trtri(sycl::queue &queue, oneapi::mkl::uplo uplo, oneapi::mkl::diag diag, std::int64_t n, std::complex<float> *a, std::int64_t lda, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
88
62
|
DLL_EXPORT sycl::event trtri(sycl::queue &queue, oneapi::mkl::uplo uplo, oneapi::mkl::diag diag, std::int64_t n, std::complex<double> *a, std::int64_t lda, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
89
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
90
|
-
std::int64_t trtri_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, oneapi::mkl::diag diag, std::int64_t n, std::int64_t lda);
|
|
91
63
|
|
|
92
64
|
// gesv
|
|
93
65
|
DLL_EXPORT sycl::event gesv(sycl::queue &queue, std::int64_t n, std::int64_t nrhs, float *a, std::int64_t lda, std::int64_t *ipiv, float *b, std::int64_t ldb, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
94
66
|
DLL_EXPORT sycl::event gesv(sycl::queue &queue, std::int64_t n, std::int64_t nrhs, double *a, std::int64_t lda, std::int64_t *ipiv, double *b, std::int64_t ldb, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
95
67
|
DLL_EXPORT sycl::event gesv(sycl::queue &queue, std::int64_t n, std::int64_t nrhs, std::complex<float> *a, std::int64_t lda, std::int64_t *ipiv, std::complex<float> *b, std::int64_t ldb, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
96
68
|
DLL_EXPORT sycl::event gesv(sycl::queue &queue, std::int64_t n, std::int64_t nrhs, std::complex<double> *a, std::int64_t lda, std::int64_t *ipiv, std::complex<double> *b, std::int64_t ldb, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
97
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
98
|
-
std::int64_t gesv_scratchpad_size(sycl::queue &queue, std::int64_t n, std::int64_t nrhs, std::int64_t lda, std::int64_t ldb);
|
|
99
|
-
|
|
100
|
-
// gebrd: scratchpad size query
|
|
101
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
102
|
-
int64_t gebrd_scratchpad_size(sycl::queue &queue, int64_t m, int64_t n, int64_t lda);
|
|
103
69
|
|
|
104
70
|
// gebrd: USM API
|
|
105
71
|
DLL_EXPORT sycl::event gebrd(sycl::queue &queue, int64_t m, int64_t n, std::complex<float> *a, int64_t lda, float *d,
|
|
@@ -133,10 +99,6 @@ DLL_EXPORT void gebrd(sycl::queue &queue, int64_t m, int64_t n, sycl::buffer<std
|
|
|
133
99
|
sycl::buffer<std::complex<double>> &taup, sycl::buffer<std::complex<double>> &scratchpad,
|
|
134
100
|
int64_t scratchpad_size);
|
|
135
101
|
|
|
136
|
-
// geqrf: scratchpad size query
|
|
137
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
138
|
-
int64_t geqrf_scratchpad_size(sycl::queue &queue, int64_t m, int64_t n, int64_t lda);
|
|
139
|
-
|
|
140
102
|
// geqrf: USM API
|
|
141
103
|
DLL_EXPORT sycl::event geqrf(sycl::queue &queue, int64_t m, int64_t n, std::complex<float> *a, int64_t lda,
|
|
142
104
|
std::complex<float> *tau, std::complex<float> *scratchpad, int64_t scratchpad_size,
|
|
@@ -163,11 +125,6 @@ DLL_EXPORT void geqrf(sycl::queue &queue, int64_t m, int64_t n, sycl::buffer<std
|
|
|
163
125
|
int64_t lda, sycl::buffer<std::complex<double>> &tau,
|
|
164
126
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
165
127
|
|
|
166
|
-
// gesvd_cmplx: scratchpad size query
|
|
167
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
168
|
-
int64_t gesvd_scratchpad_size(sycl::queue &queue, oneapi::mkl::jobsvd jobu, oneapi::mkl::jobsvd jobvt, int64_t m,
|
|
169
|
-
int64_t n, int64_t lda, int64_t ldu, int64_t ldvt);
|
|
170
|
-
|
|
171
128
|
// gesvd_cmplx: USM API
|
|
172
129
|
DLL_EXPORT sycl::event gesvd(sycl::queue &queue, oneapi::mkl::jobsvd jobu, oneapi::mkl::jobsvd jobvt, int64_t m,
|
|
173
130
|
int64_t n, std::complex<float> *a, int64_t lda, float *s, std::complex<float> *u,
|
|
@@ -188,11 +145,6 @@ DLL_EXPORT void gesvd(sycl::queue &queue, oneapi::mkl::jobsvd jobu, oneapi::mkl:
|
|
|
188
145
|
sycl::buffer<std::complex<double>> &u, int64_t ldu, sycl::buffer<std::complex<double>> &vt,
|
|
189
146
|
int64_t ldvt, sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
190
147
|
|
|
191
|
-
// gesvd_real: scratchpad size query
|
|
192
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
193
|
-
int64_t gesvd_scratchpad_size(sycl::queue &queue, oneapi::mkl::jobsvd jobu, oneapi::mkl::jobsvd jobvt, int64_t m,
|
|
194
|
-
int64_t n, int64_t lda, int64_t ldu, int64_t ldvt);
|
|
195
|
-
|
|
196
148
|
// gesvd_real: USM API
|
|
197
149
|
DLL_EXPORT sycl::event gesvd(sycl::queue &queue, oneapi::mkl::jobsvd jobu, oneapi::mkl::jobsvd jobvt, int64_t m,
|
|
198
150
|
int64_t n, double *a, int64_t lda, double *s, double *u, int64_t ldu, double *vt,
|
|
@@ -212,9 +164,56 @@ DLL_EXPORT void gesvd(sycl::queue &queue, oneapi::mkl::jobsvd jobu, oneapi::mkl:
|
|
|
212
164
|
sycl::buffer<float> &a, int64_t lda, sycl::buffer<float> &s, sycl::buffer<float> &u, int64_t ldu,
|
|
213
165
|
sycl::buffer<float> &vt, int64_t ldvt, sycl::buffer<float> &scratchpad, int64_t scratchpad_size);
|
|
214
166
|
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
167
|
+
|
|
168
|
+
// gesvda_batch_strided: USM API
|
|
169
|
+
DLL_EXPORT sycl::event gesvda_batch(sycl::queue &queue, int64_t *iparm, int64_t *irank, int64_t m, int64_t n,
|
|
170
|
+
std::complex<float> *a, int64_t lda, int64_t stride_a, float *s, int64_t stride_s,
|
|
171
|
+
std::complex<float> *u, int64_t ldu, int64_t stride_u, std::complex<float> *vt,
|
|
172
|
+
int64_t ldvt, int64_t stride_vt, float tolerance, float *residual,
|
|
173
|
+
int64_t batch_size, std::complex<float> *scratchpad, int64_t scratchpad_size,
|
|
174
|
+
const std::vector<sycl::event> &event_list = {});
|
|
175
|
+
DLL_EXPORT sycl::event gesvda_batch(sycl::queue &queue, int64_t *iparm, int64_t *irank, int64_t m, int64_t n, double *a,
|
|
176
|
+
int64_t lda, int64_t stride_a, double *s, int64_t stride_s, double *u, int64_t ldu,
|
|
177
|
+
int64_t stride_u, double *vt, int64_t ldvt, int64_t stride_vt, double tolerance,
|
|
178
|
+
double *residual, int64_t batch_size, double *scratchpad, int64_t scratchpad_size,
|
|
179
|
+
const std::vector<sycl::event> &event_list = {});
|
|
180
|
+
DLL_EXPORT sycl::event gesvda_batch(sycl::queue &queue, int64_t *iparm, int64_t *irank, int64_t m, int64_t n, float *a,
|
|
181
|
+
int64_t lda, int64_t stride_a, float *s, int64_t stride_s, float *u, int64_t ldu,
|
|
182
|
+
int64_t stride_u, float *vt, int64_t ldvt, int64_t stride_vt, float tolerance,
|
|
183
|
+
float *residual, int64_t batch_size, float *scratchpad, int64_t scratchpad_size,
|
|
184
|
+
const std::vector<sycl::event> &event_list = {});
|
|
185
|
+
DLL_EXPORT sycl::event gesvda_batch(sycl::queue &queue, int64_t *iparm, int64_t *irank, int64_t m, int64_t n,
|
|
186
|
+
std::complex<double> *a, int64_t lda, int64_t stride_a, double *s, int64_t stride_s,
|
|
187
|
+
std::complex<double> *u, int64_t ldu, int64_t stride_u, std::complex<double> *vt,
|
|
188
|
+
int64_t ldvt, int64_t stride_vt, double tolerance, double *residual,
|
|
189
|
+
int64_t batch_size, std::complex<double> *scratchpad, int64_t scratchpad_size,
|
|
190
|
+
const std::vector<sycl::event> &event_list = {});
|
|
191
|
+
|
|
192
|
+
// gesvda_batch_strided: Buffer API
|
|
193
|
+
DLL_EXPORT void gesvda_batch(sycl::queue &queue, sycl::buffer<int64_t> &iparm, sycl::buffer<int64_t> &irank, int64_t m,
|
|
194
|
+
int64_t n, sycl::buffer<std::complex<float>> &a, int64_t lda, int64_t stride_a,
|
|
195
|
+
sycl::buffer<float> &s, int64_t stride_s, sycl::buffer<std::complex<float>> &u,
|
|
196
|
+
int64_t ldu, int64_t stride_u, sycl::buffer<std::complex<float>> &vt, int64_t ldvt,
|
|
197
|
+
int64_t stride_vt, float tolerance, sycl::buffer<float> &residual, int64_t batch_size,
|
|
198
|
+
sycl::buffer<std::complex<float>> &scratchpad, int64_t scratchpad_size);
|
|
199
|
+
DLL_EXPORT void gesvda_batch(sycl::queue &queue, sycl::buffer<int64_t> &iparm, sycl::buffer<int64_t> &irank, int64_t m,
|
|
200
|
+
int64_t n, sycl::buffer<double> &a, int64_t lda, int64_t stride_a, sycl::buffer<double> &s,
|
|
201
|
+
int64_t stride_s, sycl::buffer<double> &u, int64_t ldu, int64_t stride_u,
|
|
202
|
+
sycl::buffer<double> &vt, int64_t ldvt, int64_t stride_vt, double tolerance,
|
|
203
|
+
sycl::buffer<double> &residual, int64_t batch_size, sycl::buffer<double> &scratchpad,
|
|
204
|
+
int64_t scratchpad_size);
|
|
205
|
+
DLL_EXPORT void gesvda_batch(sycl::queue &queue, sycl::buffer<int64_t> &iparm, sycl::buffer<int64_t> &irank, int64_t m,
|
|
206
|
+
int64_t n, sycl::buffer<float> &a, int64_t lda, int64_t stride_a, sycl::buffer<float> &s,
|
|
207
|
+
int64_t stride_s, sycl::buffer<float> &u, int64_t ldu, int64_t stride_u,
|
|
208
|
+
sycl::buffer<float> &vt, int64_t ldvt, int64_t stride_vt, float tolerance,
|
|
209
|
+
sycl::buffer<float> &residual, int64_t batch_size, sycl::buffer<float> &scratchpad,
|
|
210
|
+
int64_t scratchpad_size);
|
|
211
|
+
DLL_EXPORT void gesvda_batch(sycl::queue &queue, sycl::buffer<int64_t> &iparm, sycl::buffer<int64_t> &irank, int64_t m,
|
|
212
|
+
int64_t n, sycl::buffer<std::complex<double>> &a, int64_t lda, int64_t stride_a,
|
|
213
|
+
sycl::buffer<double> &s, int64_t stride_s, sycl::buffer<std::complex<double>> &u,
|
|
214
|
+
int64_t ldu, int64_t stride_u, sycl::buffer<std::complex<double>> &vt, int64_t ldvt,
|
|
215
|
+
int64_t stride_vt, double tolerance, sycl::buffer<double> &residual, int64_t batch_size,
|
|
216
|
+
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
218
217
|
|
|
219
218
|
// getrf: USM API
|
|
220
219
|
DLL_EXPORT sycl::event getrf(sycl::queue &queue, int64_t m, int64_t n, std::complex<float> *a, int64_t lda,
|
|
@@ -242,11 +241,6 @@ DLL_EXPORT void getrf(sycl::queue &queue, int64_t m, int64_t n, sycl::buffer<std
|
|
|
242
241
|
sycl::buffer<int64_t> &ipiv, sycl::buffer<std::complex<double>> &scratchpad,
|
|
243
242
|
int64_t scratchpad_size);
|
|
244
243
|
|
|
245
|
-
// getrf_batch_group: scratchpad size query
|
|
246
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
247
|
-
int64_t getrf_batch_scratchpad_size(sycl::queue &queue, int64_t* m, int64_t* n, int64_t* lda, int64_t group_count,
|
|
248
|
-
int64_t* group_sizes);
|
|
249
|
-
|
|
250
244
|
// getrf_batch_group: USM API
|
|
251
245
|
DLL_EXPORT sycl::event getrf_batch(sycl::queue &queue, int64_t *m, int64_t *n, std::complex<float> **a, int64_t *lda,
|
|
252
246
|
int64_t **ipiv, int64_t group_count, int64_t *group_sizes,
|
|
@@ -263,11 +257,6 @@ DLL_EXPORT sycl::event getrf_batch(sycl::queue &queue, int64_t *m, int64_t *n, s
|
|
|
263
257
|
std::complex<double> *scratchpad, int64_t scratchpad_size,
|
|
264
258
|
const std::vector<sycl::event> &event_list = {});
|
|
265
259
|
|
|
266
|
-
// getrf_batch_strided: scratchpad size query
|
|
267
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
268
|
-
int64_t getrf_batch_scratchpad_size(sycl::queue &queue, int64_t m, int64_t n, int64_t lda, int64_t stride_a,
|
|
269
|
-
int64_t stride_ipiv, int64_t batch_size);
|
|
270
|
-
|
|
271
260
|
// getrf_batch_strided: USM API
|
|
272
261
|
DLL_EXPORT sycl::event getrf_batch(sycl::queue &queue, int64_t m, int64_t n, std::complex<float> *a, int64_t lda,
|
|
273
262
|
int64_t stride_a, int64_t *ipiv, int64_t stride_ipiv, int64_t batch_size,
|
|
@@ -299,10 +288,6 @@ DLL_EXPORT void getrf_batch(sycl::queue &queue, int64_t m, int64_t n, sycl::buff
|
|
|
299
288
|
int64_t batch_size, sycl::buffer<std::complex<double>> &scratchpad,
|
|
300
289
|
int64_t scratchpad_size);
|
|
301
290
|
|
|
302
|
-
// getrfnp: scratchpad size query
|
|
303
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
304
|
-
int64_t getrfnp_scratchpad_size(sycl::queue &queue, int64_t m, int64_t n, int64_t lda);
|
|
305
|
-
|
|
306
291
|
// getrfnp: USM API
|
|
307
292
|
DLL_EXPORT sycl::event getrfnp(sycl::queue &queue, int64_t m, int64_t n, std::complex<float> *a, int64_t lda,
|
|
308
293
|
std::complex<float> *scratchpad, int64_t scratchpad_size,
|
|
@@ -325,10 +310,6 @@ DLL_EXPORT void getrfnp(sycl::queue &queue, int64_t m, int64_t n, sycl::buffer<f
|
|
|
325
310
|
DLL_EXPORT void getrfnp(sycl::queue &queue, int64_t m, int64_t n, sycl::buffer<std::complex<double>> &a, int64_t lda,
|
|
326
311
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
327
312
|
|
|
328
|
-
// getrfnp_batch_group: scratchpad size query
|
|
329
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
330
|
-
int64_t getrfnp_batch_scratchpad_size(sycl::queue &queue, int64_t* m, int64_t* n, int64_t* lda, int64_t group_count,
|
|
331
|
-
int64_t* group_sizes);
|
|
332
313
|
|
|
333
314
|
// getrfnp_batch_group: USM API
|
|
334
315
|
DLL_EXPORT sycl::event getrfnp_batch(sycl::queue &queue, int64_t *m, int64_t *n, std::complex<float> **a, int64_t *lda,
|
|
@@ -344,11 +325,6 @@ DLL_EXPORT sycl::event getrfnp_batch(sycl::queue &queue, int64_t *m, int64_t *n,
|
|
|
344
325
|
int64_t group_count, int64_t *group_sizes, std::complex<double> *scratchpad,
|
|
345
326
|
int64_t scratchpad_size, const std::vector<sycl::event> &event_list = {});
|
|
346
327
|
|
|
347
|
-
// getrfnp_batch_strided: scratchpad size query
|
|
348
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
349
|
-
int64_t getrfnp_batch_scratchpad_size(sycl::queue &queue, int64_t m, int64_t n, int64_t lda, int64_t stride_a,
|
|
350
|
-
int64_t batch_size);
|
|
351
|
-
|
|
352
328
|
// getrfnp_batch_strided: USM API
|
|
353
329
|
DLL_EXPORT sycl::event getrfnp_batch(sycl::queue &queue, int64_t m, int64_t n, std::complex<float> *a, int64_t lda,
|
|
354
330
|
int64_t stride_a, int64_t batch_size, std::complex<float> *scratchpad,
|
|
@@ -377,10 +353,6 @@ DLL_EXPORT void getrfnp_batch(sycl::queue &queue, int64_t m, int64_t n, sycl::bu
|
|
|
377
353
|
int64_t lda, int64_t stride_a, int64_t batch_size,
|
|
378
354
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
379
355
|
|
|
380
|
-
// getri: scratchpad size query
|
|
381
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
382
|
-
int64_t getri_scratchpad_size(sycl::queue &queue, int64_t n, int64_t lda);
|
|
383
|
-
|
|
384
356
|
// getri: USM API
|
|
385
357
|
DLL_EXPORT sycl::event getri(sycl::queue &queue, int64_t n, std::complex<float> *a, int64_t lda, int64_t *ipiv,
|
|
386
358
|
std::complex<float> *scratchpad, int64_t scratchpad_size,
|
|
@@ -405,11 +377,6 @@ DLL_EXPORT void getri(sycl::queue &queue, int64_t n, sycl::buffer<std::complex<d
|
|
|
405
377
|
sycl::buffer<int64_t> &ipiv, sycl::buffer<std::complex<double>> &scratchpad,
|
|
406
378
|
int64_t scratchpad_size);
|
|
407
379
|
|
|
408
|
-
// getri_oop_batch_strided: scratchpad size query
|
|
409
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
410
|
-
int64_t getri_batch_scratchpad_size(sycl::queue &queue, int64_t n, int64_t lda, int64_t stride_a,
|
|
411
|
-
int64_t stride_ipiv, int64_t ldainv, int64_t stride_ainv, int64_t batch_size);
|
|
412
|
-
|
|
413
380
|
// getri_oop_batch_strided: USM API
|
|
414
381
|
DLL_EXPORT sycl::event getri_batch(sycl::queue &queue, int64_t n, std::complex<float> *a, int64_t lda,
|
|
415
382
|
int64_t stride_a, int64_t *ipiv, int64_t stride_ipiv, std::complex<float> *ainv,
|
|
@@ -452,11 +419,6 @@ DLL_EXPORT void getri_batch(sycl::queue &queue, int64_t n, sycl::buffer<std::com
|
|
|
452
419
|
int64_t batch_size, sycl::buffer<std::complex<double>> &scratchpad,
|
|
453
420
|
int64_t scratchpad_size);
|
|
454
421
|
|
|
455
|
-
// getrs: scratchpad size query
|
|
456
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
457
|
-
int64_t getrs_scratchpad_size(sycl::queue &queue, oneapi::mkl::transpose trans, int64_t n, int64_t nrhs, int64_t lda,
|
|
458
|
-
int64_t ldb);
|
|
459
|
-
|
|
460
422
|
// getrs: USM API
|
|
461
423
|
DLL_EXPORT sycl::event getrs(sycl::queue &queue, oneapi::mkl::transpose trans, int64_t n, int64_t nrhs,
|
|
462
424
|
std::complex<float> *a, int64_t lda, int64_t *ipiv, std::complex<float> *b, int64_t ldb,
|
|
@@ -489,12 +451,6 @@ DLL_EXPORT void getrs(sycl::queue &queue, oneapi::mkl::transpose trans, int64_t
|
|
|
489
451
|
sycl::buffer<std::complex<double>> &b, int64_t ldb,
|
|
490
452
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
491
453
|
|
|
492
|
-
// getrs_batch_strided: scratchpad size query
|
|
493
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
494
|
-
int64_t getrs_batch_scratchpad_size(sycl::queue &queue, oneapi::mkl::transpose trans, int64_t n, int64_t nrhs,
|
|
495
|
-
int64_t lda, int64_t stride_a, int64_t stride_ipiv, int64_t ldb, int64_t stride_b,
|
|
496
|
-
int64_t batch_size);
|
|
497
|
-
|
|
498
454
|
// getrs_batch_strided: USM API
|
|
499
455
|
DLL_EXPORT sycl::event getrs_batch(sycl::queue &queue, oneapi::mkl::transpose trans, int64_t n, int64_t nrhs,
|
|
500
456
|
std::complex<float> *a, int64_t lda, int64_t stride_a, int64_t *ipiv,
|
|
@@ -538,11 +494,6 @@ DLL_EXPORT void getrs_batch(sycl::queue &queue, oneapi::mkl::transpose trans, in
|
|
|
538
494
|
int64_t batch_size, sycl::buffer<std::complex<double>> &scratchpad,
|
|
539
495
|
int64_t scratchpad_size);
|
|
540
496
|
|
|
541
|
-
// getrsnp_batch_strided: scratchpad size query
|
|
542
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
543
|
-
int64_t getrsnp_batch_scratchpad_size(sycl::queue &queue, oneapi::mkl::transpose trans, int64_t n, int64_t nrhs,
|
|
544
|
-
int64_t lda, int64_t stride_a, int64_t ldb, int64_t stride_b, int64_t batch_size);
|
|
545
|
-
|
|
546
497
|
// getrsnp_batch_strided: USM API
|
|
547
498
|
DLL_EXPORT sycl::event getrsnp_batch(sycl::queue &queue, oneapi::mkl::transpose trans, int64_t n, int64_t nrhs,
|
|
548
499
|
std::complex<float> *a, int64_t lda, int64_t stride_a, std::complex<float> *b,
|
|
@@ -580,11 +531,6 @@ DLL_EXPORT void getrsnp_batch(sycl::queue &queue, oneapi::mkl::transpose trans,
|
|
|
580
531
|
sycl::buffer<std::complex<double>> &b, int64_t ldb, int64_t stride_b, int64_t batch_size,
|
|
581
532
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
582
533
|
|
|
583
|
-
// heev: scratchpad size query
|
|
584
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
585
|
-
int64_t heev_scratchpad_size(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::uplo uplo, int64_t n,
|
|
586
|
-
int64_t lda);
|
|
587
|
-
|
|
588
534
|
// heev: USM API
|
|
589
535
|
DLL_EXPORT sycl::event heev(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::uplo uplo, int64_t n,
|
|
590
536
|
std::complex<float> *a, int64_t lda, float *w, std::complex<float> *scratchpad,
|
|
@@ -601,11 +547,6 @@ DLL_EXPORT void heev(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::u
|
|
|
601
547
|
sycl::buffer<std::complex<double>> &a, int64_t lda, sycl::buffer<double> &w,
|
|
602
548
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
603
549
|
|
|
604
|
-
// heevd: scratchpad size query
|
|
605
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
606
|
-
int64_t heevd_scratchpad_size(sycl::queue &queue, oneapi::mkl::job jobz, oneapi::mkl::uplo uplo, int64_t n,
|
|
607
|
-
int64_t lda);
|
|
608
|
-
|
|
609
550
|
// heevd: USM API
|
|
610
551
|
DLL_EXPORT sycl::event heevd(sycl::queue &queue, oneapi::mkl::job jobz, oneapi::mkl::uplo uplo, int64_t n,
|
|
611
552
|
std::complex<float> *a, int64_t lda, float *w, std::complex<float> *scratchpad,
|
|
@@ -622,13 +563,6 @@ DLL_EXPORT void heevd(sycl::queue &queue, oneapi::mkl::job jobz, oneapi::mkl::up
|
|
|
622
563
|
sycl::buffer<std::complex<double>> &a, int64_t lda, sycl::buffer<double> &w,
|
|
623
564
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
624
565
|
|
|
625
|
-
// heevx: scratchpad size query
|
|
626
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
627
|
-
int64_t heevx_scratchpad_size(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::rangev range,
|
|
628
|
-
oneapi::mkl::uplo uplo, int64_t n, int64_t lda, typename fp_type::value_type vl,
|
|
629
|
-
typename fp_type::value_type vu, int64_t il, int64_t iu,
|
|
630
|
-
typename fp_type::value_type abstol, int64_t ldz);
|
|
631
|
-
|
|
632
566
|
// heevx: USM API
|
|
633
567
|
DLL_EXPORT sycl::event heevx(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::rangev range,
|
|
634
568
|
oneapi::mkl::uplo uplo, int64_t n, std::complex<float> *a, int64_t lda, float vl, float vu,
|
|
@@ -653,11 +587,6 @@ DLL_EXPORT void heevx(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::
|
|
|
653
587
|
sycl::buffer<std::complex<double>> &z, int64_t ldz,
|
|
654
588
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
655
589
|
|
|
656
|
-
// hegvd: scratchpad size query
|
|
657
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
658
|
-
int64_t hegvd_scratchpad_size(sycl::queue &queue, int64_t itype, oneapi::mkl::job jobz, oneapi::mkl::uplo uplo,
|
|
659
|
-
int64_t n, int64_t lda, int64_t ldb);
|
|
660
|
-
|
|
661
590
|
// hegvd: USM API
|
|
662
591
|
DLL_EXPORT sycl::event hegvd(sycl::queue &queue, int64_t itype, oneapi::mkl::job jobz, oneapi::mkl::uplo uplo,
|
|
663
592
|
int64_t n, std::complex<float> *a, int64_t lda, std::complex<float> *b, int64_t ldb,
|
|
@@ -678,13 +607,6 @@ DLL_EXPORT void hegvd(sycl::queue &queue, int64_t itype, oneapi::mkl::job jobz,
|
|
|
678
607
|
int64_t ldb, sycl::buffer<double> &w, sycl::buffer<std::complex<double>> &scratchpad,
|
|
679
608
|
int64_t scratchpad_size);
|
|
680
609
|
|
|
681
|
-
// hegvx: scratchpad size query
|
|
682
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
683
|
-
int64_t hegvx_scratchpad_size(sycl::queue &queue, int64_t itype, oneapi::mkl::compz jobz, oneapi::mkl::rangev range,
|
|
684
|
-
oneapi::mkl::uplo uplo, int64_t n, int64_t lda, int64_t ldb,
|
|
685
|
-
typename fp_type::value_type vl, typename fp_type::value_type vu, int64_t il, int64_t iu,
|
|
686
|
-
typename fp_type::value_type abstol, int64_t ldz);
|
|
687
|
-
|
|
688
610
|
// hegvx: USM API
|
|
689
611
|
DLL_EXPORT sycl::event hegvx(sycl::queue &queue, int64_t itype, oneapi::mkl::compz jobz, oneapi::mkl::rangev range,
|
|
690
612
|
oneapi::mkl::uplo uplo, int64_t n, std::complex<float> *a, int64_t lda,
|
|
@@ -713,10 +635,6 @@ DLL_EXPORT void hegvx(sycl::queue &queue, int64_t itype, oneapi::mkl::compz jobz
|
|
|
713
635
|
sycl::buffer<std::complex<double>> &z, int64_t ldz,
|
|
714
636
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
715
637
|
|
|
716
|
-
// hetrd: scratchpad size query
|
|
717
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
718
|
-
int64_t hetrd_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, int64_t n, int64_t lda);
|
|
719
|
-
|
|
720
638
|
// hetrd: USM API
|
|
721
639
|
DLL_EXPORT sycl::event hetrd(sycl::queue &queue, oneapi::mkl::uplo uplo, int64_t n, std::complex<float> *a, int64_t lda,
|
|
722
640
|
float *d, float *e, std::complex<float> *tau, std::complex<float> *scratchpad,
|
|
@@ -741,20 +659,12 @@ DLL_EXPORT sycl::event hetrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::in
|
|
|
741
659
|
DLL_EXPORT sycl::event hetrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::complex<double> *a, std::int64_t lda, std::int64_t *ipiv, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
742
660
|
DLL_EXPORT void hetrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::int64_t> &ipiv, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
743
661
|
DLL_EXPORT void hetrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::int64_t> &ipiv, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
744
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_complex_floating_point<data_t> = nullptr>
|
|
745
|
-
std::int64_t hetrf_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t lda);
|
|
746
662
|
|
|
747
663
|
// orgbr
|
|
748
664
|
DLL_EXPORT sycl::event orgbr(sycl::queue &queue, oneapi::mkl::generate vec, std::int64_t m, std::int64_t n, std::int64_t k, float *a, std::int64_t lda, float *tau, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
749
665
|
DLL_EXPORT sycl::event orgbr(sycl::queue &queue, oneapi::mkl::generate vec, std::int64_t m, std::int64_t n, std::int64_t k, double *a, std::int64_t lda, double *tau, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
750
666
|
DLL_EXPORT void orgbr(sycl::queue &queue, oneapi::mkl::generate vec, std::int64_t m, std::int64_t n, std::int64_t k, sycl::buffer<float> &a, std::int64_t lda, sycl::buffer<float> &tau, sycl::buffer<float> &scratchpad, std::int64_t scratchpad_size);
|
|
751
667
|
DLL_EXPORT void orgbr(sycl::queue &queue, oneapi::mkl::generate vec, std::int64_t m, std::int64_t n, std::int64_t k, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<double> &tau, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
752
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_real_floating_point<data_t> = nullptr>
|
|
753
|
-
std::int64_t orgbr_scratchpad_size(sycl::queue &queue, oneapi::mkl::generate vect, std::int64_t m, std::int64_t n, std::int64_t k, std::int64_t lda);
|
|
754
|
-
|
|
755
|
-
// orgqr: scratchpad size query
|
|
756
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
757
|
-
int64_t orgqr_scratchpad_size(sycl::queue &queue, int64_t m, int64_t n, int64_t k, int64_t lda);
|
|
758
668
|
|
|
759
669
|
// orgqr: USM API
|
|
760
670
|
DLL_EXPORT sycl::event orgqr(sycl::queue &queue, int64_t m, int64_t n, int64_t k, double *a, int64_t lda, double *tau,
|
|
@@ -770,11 +680,6 @@ DLL_EXPORT void orgqr(sycl::queue &queue, int64_t m, int64_t n, int64_t k, sycl:
|
|
|
770
680
|
DLL_EXPORT void orgqr(sycl::queue &queue, int64_t m, int64_t n, int64_t k, sycl::buffer<float> &a, int64_t lda,
|
|
771
681
|
sycl::buffer<float> &tau, sycl::buffer<float> &scratchpad, int64_t scratchpad_size);
|
|
772
682
|
|
|
773
|
-
// ormqr: scratchpad size query
|
|
774
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
775
|
-
int64_t ormqr_scratchpad_size(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, int64_t m,
|
|
776
|
-
int64_t n, int64_t k, int64_t lda, int64_t ldc);
|
|
777
|
-
|
|
778
683
|
// ormqr: USM API
|
|
779
684
|
DLL_EXPORT sycl::event ormqr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, int64_t m,
|
|
780
685
|
int64_t n, int64_t k, double *a, int64_t lda, double *tau, double *c, int64_t ldc,
|
|
@@ -793,10 +698,6 @@ DLL_EXPORT void ormqr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::t
|
|
|
793
698
|
int64_t k, sycl::buffer<float> &a, int64_t lda, sycl::buffer<float> &tau, sycl::buffer<float> &c,
|
|
794
699
|
int64_t ldc, sycl::buffer<float> &scratchpad, int64_t scratchpad_size);
|
|
795
700
|
|
|
796
|
-
// steqr: scratchpad size query
|
|
797
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
798
|
-
int64_t steqr_scratchpad_size(sycl::queue &queue, oneapi::mkl::compz compz, int64_t n, int64_t ldz);
|
|
799
|
-
|
|
800
701
|
// steqr: USM API
|
|
801
702
|
DLL_EXPORT sycl::event steqr(sycl::queue &queue, oneapi::mkl::compz compz, int64_t n, float *d, float *e,
|
|
802
703
|
std::complex<float> *z, int64_t ldz, std::complex<float> *scratchpad,
|
|
@@ -825,11 +726,6 @@ DLL_EXPORT void steqr(sycl::queue &queue, oneapi::mkl::compz compz, int64_t n, s
|
|
|
825
726
|
sycl::buffer<double> &e, sycl::buffer<std::complex<double>> &z, int64_t ldz,
|
|
826
727
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
827
728
|
|
|
828
|
-
// syev: scratchpad size query
|
|
829
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
830
|
-
int64_t syev_scratchpad_size(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::uplo uplo, int64_t n,
|
|
831
|
-
int64_t lda);
|
|
832
|
-
|
|
833
729
|
// syev: USM API
|
|
834
730
|
DLL_EXPORT sycl::event syev(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::uplo uplo, int64_t n, double *a,
|
|
835
731
|
int64_t lda, double *w, double *scratchpad, int64_t scratchpad_size,
|
|
@@ -846,11 +742,6 @@ DLL_EXPORT void syev(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::u
|
|
|
846
742
|
sycl::buffer<float> &a, int64_t lda, sycl::buffer<float> &w, sycl::buffer<float> &scratchpad,
|
|
847
743
|
int64_t scratchpad_size);
|
|
848
744
|
|
|
849
|
-
// syevd: scratchpad size query
|
|
850
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
851
|
-
int64_t syevd_scratchpad_size(sycl::queue &queue, oneapi::mkl::job jobz, oneapi::mkl::uplo uplo, int64_t n,
|
|
852
|
-
int64_t lda);
|
|
853
|
-
|
|
854
745
|
// syevd: USM API
|
|
855
746
|
DLL_EXPORT sycl::event syevd(sycl::queue &queue, oneapi::mkl::job jobz, oneapi::mkl::uplo uplo, int64_t n, double *a,
|
|
856
747
|
int64_t lda, double *w, double *scratchpad, int64_t scratchpad_size,
|
|
@@ -867,12 +758,6 @@ DLL_EXPORT void syevd(sycl::queue &queue, oneapi::mkl::job jobz, oneapi::mkl::up
|
|
|
867
758
|
sycl::buffer<float> &a, int64_t lda, sycl::buffer<float> &w, sycl::buffer<float> &scratchpad,
|
|
868
759
|
int64_t scratchpad_size);
|
|
869
760
|
|
|
870
|
-
// syevx: scratchpad size query
|
|
871
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
872
|
-
int64_t syevx_scratchpad_size(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::rangev range,
|
|
873
|
-
oneapi::mkl::uplo uplo, int64_t n, int64_t lda, fp_type vl, fp_type vu, int64_t il,
|
|
874
|
-
int64_t iu, fp_type abstol, int64_t ldz);
|
|
875
|
-
|
|
876
761
|
// syevx: USM API
|
|
877
762
|
DLL_EXPORT sycl::event syevx(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::rangev range,
|
|
878
763
|
oneapi::mkl::uplo uplo, int64_t n, double *a, int64_t lda, double vl, double vu,
|
|
@@ -894,11 +779,6 @@ DLL_EXPORT void syevx(sycl::queue &queue, oneapi::mkl::compz jobz, oneapi::mkl::
|
|
|
894
779
|
float abstol, sycl::buffer<int64_t> &m, sycl::buffer<float> &w, sycl::buffer<float> &z,
|
|
895
780
|
int64_t ldz, sycl::buffer<float> &scratchpad, int64_t scratchpad_size);
|
|
896
781
|
|
|
897
|
-
// sygvd: scratchpad size query
|
|
898
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
899
|
-
int64_t sygvd_scratchpad_size(sycl::queue &queue, int64_t itype, oneapi::mkl::job jobz, oneapi::mkl::uplo uplo,
|
|
900
|
-
int64_t n, int64_t lda, int64_t ldb);
|
|
901
|
-
|
|
902
782
|
// sygvd: USM API
|
|
903
783
|
DLL_EXPORT sycl::event sygvd(sycl::queue &queue, int64_t itype, oneapi::mkl::job jobz, oneapi::mkl::uplo uplo,
|
|
904
784
|
int64_t n, double *a, int64_t lda, double *b, int64_t ldb, double *w, double *scratchpad,
|
|
@@ -915,12 +795,6 @@ DLL_EXPORT void sygvd(sycl::queue &queue, int64_t itype, oneapi::mkl::job jobz,
|
|
|
915
795
|
sycl::buffer<float> &a, int64_t lda, sycl::buffer<float> &b, int64_t ldb, sycl::buffer<float> &w,
|
|
916
796
|
sycl::buffer<float> &scratchpad, int64_t scratchpad_size);
|
|
917
797
|
|
|
918
|
-
// sygvx: scratchpad size query
|
|
919
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
920
|
-
int64_t sygvx_scratchpad_size(sycl::queue &queue, int64_t itype, oneapi::mkl::compz jobz, oneapi::mkl::rangev range,
|
|
921
|
-
oneapi::mkl::uplo uplo, int64_t n, int64_t lda, int64_t ldb, fp_type vl, fp_type vu,
|
|
922
|
-
int64_t il, int64_t iu, fp_type abstol, int64_t ldz);
|
|
923
|
-
|
|
924
798
|
// sygvx: USM API
|
|
925
799
|
DLL_EXPORT sycl::event sygvx(sycl::queue &queue, int64_t itype, oneapi::mkl::compz jobz, oneapi::mkl::rangev range,
|
|
926
800
|
oneapi::mkl::uplo uplo, int64_t n, double *a, int64_t lda, double *b, int64_t ldb,
|
|
@@ -945,10 +819,6 @@ DLL_EXPORT void sygvx(sycl::queue &queue, int64_t itype, oneapi::mkl::compz jobz
|
|
|
945
819
|
sycl::buffer<float> &w, sycl::buffer<float> &z, int64_t ldz, sycl::buffer<float> &scratchpad,
|
|
946
820
|
int64_t scratchpad_size);
|
|
947
821
|
|
|
948
|
-
// sytrd: scratchpad size query
|
|
949
|
-
template <typename fp_type, internal::is_real_floating_point<fp_type> = nullptr>
|
|
950
|
-
int64_t sytrd_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, int64_t n, int64_t lda);
|
|
951
|
-
|
|
952
822
|
// sytrd: USM API
|
|
953
823
|
DLL_EXPORT sycl::event sytrd(sycl::queue &queue, oneapi::mkl::uplo uplo, int64_t n, double *a, int64_t lda, double *d,
|
|
954
824
|
double *e, double *tau, double *scratchpad, int64_t scratchpad_size,
|
|
@@ -965,11 +835,6 @@ DLL_EXPORT void sytrd(sycl::queue &queue, oneapi::mkl::uplo uplo, int64_t n, syc
|
|
|
965
835
|
sycl::buffer<float> &d, sycl::buffer<float> &e, sycl::buffer<float> &tau,
|
|
966
836
|
sycl::buffer<float> &scratchpad, int64_t scratchpad_size);
|
|
967
837
|
|
|
968
|
-
// trtrs: scratchpad size query
|
|
969
|
-
template <typename fp_type, internal::is_floating_point<fp_type> = nullptr>
|
|
970
|
-
int64_t trtrs_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans,
|
|
971
|
-
oneapi::mkl::diag diag, int64_t n, int64_t nrhs, int64_t lda, int64_t ldb);
|
|
972
|
-
|
|
973
838
|
// trtrs: USM API
|
|
974
839
|
DLL_EXPORT sycl::event trtrs(sycl::queue &queue, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans,
|
|
975
840
|
oneapi::mkl::diag diag, int64_t n, int64_t nrhs, std::complex<float> *a, int64_t lda,
|
|
@@ -1009,12 +874,6 @@ DLL_EXPORT sycl::event ungbr(sycl::queue &queue, oneapi::mkl::generate vec, std:
|
|
|
1009
874
|
DLL_EXPORT sycl::event ungbr(sycl::queue &queue, oneapi::mkl::generate vec, std::int64_t m, std::int64_t n, std::int64_t k, std::complex<double> *a, std::int64_t lda, std::complex<double> *tau, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1010
875
|
DLL_EXPORT void ungbr(sycl::queue &queue, oneapi::mkl::generate vec, std::int64_t m, std::int64_t n, std::int64_t k, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::complex<float>> &tau, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
1011
876
|
DLL_EXPORT void ungbr(sycl::queue &queue, oneapi::mkl::generate vec, std::int64_t m, std::int64_t n, std::int64_t k, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::complex<double>> &tau, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
1012
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_complex_floating_point<data_t> = nullptr>
|
|
1013
|
-
std::int64_t ungbr_scratchpad_size(sycl::queue &queue, oneapi::mkl::generate vect, std::int64_t m, std::int64_t n, std::int64_t k, std::int64_t lda);
|
|
1014
|
-
|
|
1015
|
-
// ungqr: scratchpad size query
|
|
1016
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
1017
|
-
int64_t ungqr_scratchpad_size(sycl::queue &queue, int64_t m, int64_t n, int64_t k, int64_t lda);
|
|
1018
877
|
|
|
1019
878
|
// ungqr: USM API
|
|
1020
879
|
DLL_EXPORT sycl::event ungqr(sycl::queue &queue, int64_t m, int64_t n, int64_t k, std::complex<float> *a, int64_t lda,
|
|
@@ -1032,11 +891,6 @@ DLL_EXPORT void ungqr(sycl::queue &queue, int64_t m, int64_t n, int64_t k, sycl:
|
|
|
1032
891
|
int64_t lda, sycl::buffer<std::complex<double>> &tau,
|
|
1033
892
|
sycl::buffer<std::complex<double>> &scratchpad, int64_t scratchpad_size);
|
|
1034
893
|
|
|
1035
|
-
// unmqr: scratchpad size query
|
|
1036
|
-
template <typename fp_type, internal::is_complex_floating_point<fp_type> = nullptr>
|
|
1037
|
-
int64_t unmqr_scratchpad_size(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, int64_t m,
|
|
1038
|
-
int64_t n, int64_t k, int64_t lda, int64_t ldc);
|
|
1039
|
-
|
|
1040
894
|
// unmqr: USM API
|
|
1041
895
|
DLL_EXPORT sycl::event unmqr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, int64_t m,
|
|
1042
896
|
int64_t n, int64_t k, std::complex<float> *a, int64_t lda, std::complex<float> *tau,
|
|
@@ -1066,24 +920,18 @@ DLL_EXPORT void gerqf(sycl::queue &queue, std::int64_t m, std::int64_t n, sycl::
|
|
|
1066
920
|
DLL_EXPORT void gerqf(sycl::queue &queue, std::int64_t m, std::int64_t n, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<double> &tau, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
1067
921
|
DLL_EXPORT void gerqf(sycl::queue &queue, std::int64_t m, std::int64_t n, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::complex<float>> &tau, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
1068
922
|
DLL_EXPORT void gerqf(sycl::queue &queue, std::int64_t m, std::int64_t n, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::complex<double>> &tau, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
1069
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
1070
|
-
std::int64_t gerqf_scratchpad_size(sycl::queue &queue, std::int64_t m, std::int64_t n, std::int64_t lda);
|
|
1071
923
|
|
|
1072
924
|
// ormrq
|
|
1073
925
|
DLL_EXPORT sycl::event ormrq(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, float *a, std::int64_t lda, float *tau, float *c, std::int64_t ldc, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1074
926
|
DLL_EXPORT sycl::event ormrq(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, double *a, std::int64_t lda, double *tau, double *c, std::int64_t ldc, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1075
927
|
DLL_EXPORT void ormrq(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, sycl::buffer<float> &a, std::int64_t lda, sycl::buffer<float> &tau, sycl::buffer<float> &c, std::int64_t ldc, sycl::buffer<float> &scratchpad, std::int64_t scratchpad_size);
|
|
1076
928
|
DLL_EXPORT void ormrq(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<double> &tau, sycl::buffer<double> &c, std::int64_t ldc, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
1077
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_real_floating_point<data_t> = nullptr>
|
|
1078
|
-
std::int64_t ormrq_scratchpad_size(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, std::int64_t lda, std::int64_t ldc);
|
|
1079
929
|
|
|
1080
930
|
// unmrq
|
|
1081
931
|
DLL_EXPORT sycl::event unmrq(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, std::complex<float> *a, std::int64_t lda, std::complex<float> *tau, std::complex<float> *c, std::int64_t ldc, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1082
932
|
DLL_EXPORT sycl::event unmrq(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, std::complex<double> *a, std::int64_t lda, std::complex<double> *tau, std::complex<double> *c, std::int64_t ldc, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1083
933
|
DLL_EXPORT void unmrq(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::complex<float>> &tau, sycl::buffer<std::complex<float>> &c, std::int64_t ldc, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
1084
934
|
DLL_EXPORT void unmrq(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::complex<double>> &tau, sycl::buffer<std::complex<double>> &c, std::int64_t ldc, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
1085
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_complex_floating_point<data_t> = nullptr>
|
|
1086
|
-
std::int64_t unmrq_scratchpad_size(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t k, std::int64_t lda, std::int64_t ldc);
|
|
1087
935
|
|
|
1088
936
|
// sytrf
|
|
1089
937
|
DLL_EXPORT sycl::event sytrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, float *a, std::int64_t lda, std::int64_t *ipiv, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
@@ -1094,40 +942,36 @@ DLL_EXPORT void sytrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n
|
|
|
1094
942
|
DLL_EXPORT void sytrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<std::int64_t> &ipiv, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
1095
943
|
DLL_EXPORT void sytrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::int64_t> &ipiv, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
1096
944
|
DLL_EXPORT void sytrf(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::int64_t> &ipiv, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
1097
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
1098
|
-
std::int64_t sytrf_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t lda);
|
|
1099
945
|
|
|
1100
946
|
// orgtr
|
|
1101
947
|
DLL_EXPORT sycl::event orgtr(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, float *a, std::int64_t lda, float *tau, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1102
948
|
DLL_EXPORT sycl::event orgtr(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, double *a, std::int64_t lda, double *tau, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1103
949
|
DLL_EXPORT void orgtr(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<float> &a, std::int64_t lda, sycl::buffer<float> &tau, sycl::buffer<float> &scratchpad, std::int64_t scratchpad_size);
|
|
1104
950
|
DLL_EXPORT void orgtr(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<double> &tau, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
1105
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_real_floating_point<data_t> = nullptr>
|
|
1106
|
-
std::int64_t orgtr_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t lda);
|
|
1107
951
|
|
|
1108
952
|
// ungtr
|
|
1109
953
|
DLL_EXPORT sycl::event ungtr(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::complex<float> *a, std::int64_t lda, std::complex<float> *tau, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1110
954
|
DLL_EXPORT sycl::event ungtr(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::complex<double> *a, std::int64_t lda, std::complex<double> *tau, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1111
955
|
DLL_EXPORT void ungtr(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::complex<float>> &tau, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
1112
956
|
DLL_EXPORT void ungtr(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::complex<double>> &tau, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
1113
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_complex_floating_point<data_t> = nullptr>
|
|
1114
|
-
std::int64_t ungtr_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t lda);
|
|
1115
957
|
|
|
1116
958
|
// ormtr
|
|
1117
959
|
DLL_EXPORT sycl::event ormtr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, float *a, std::int64_t lda, float *tau, float *c, std::int64_t ldc, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1118
960
|
DLL_EXPORT sycl::event ormtr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, double *a, std::int64_t lda, double *tau, double *c, std::int64_t ldc, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1119
961
|
DLL_EXPORT void ormtr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, sycl::buffer<float> &a, std::int64_t lda, sycl::buffer<float> &tau, sycl::buffer<float> &c, std::int64_t ldc, sycl::buffer<float> &scratchpad, std::int64_t scratchpad_size);
|
|
1120
962
|
DLL_EXPORT void ormtr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, sycl::buffer<double> &a, std::int64_t lda, sycl::buffer<double> &tau, sycl::buffer<double> &c, std::int64_t ldc, sycl::buffer<double> &scratchpad, std::int64_t scratchpad_size);
|
|
1121
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_real_floating_point<data_t> = nullptr>
|
|
1122
|
-
std::int64_t ormtr_scratchpad_size(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t lda, std::int64_t ldc);
|
|
1123
963
|
|
|
1124
964
|
// unmtr
|
|
1125
965
|
DLL_EXPORT sycl::event unmtr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::complex<float> *a, std::int64_t lda, std::complex<float> *tau, std::complex<float> *c, std::int64_t ldc, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1126
966
|
DLL_EXPORT sycl::event unmtr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::complex<double> *a, std::int64_t lda, std::complex<double> *tau, std::complex<double> *c, std::int64_t ldc, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1127
967
|
DLL_EXPORT void unmtr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, sycl::buffer<std::complex<float>> &a, std::int64_t lda, sycl::buffer<std::complex<float>> &tau, sycl::buffer<std::complex<float>> &c, std::int64_t ldc, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
1128
968
|
DLL_EXPORT void unmtr(sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo uplo, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, sycl::buffer<std::complex<double>> &a, std::int64_t lda, sycl::buffer<std::complex<double>> &tau, sycl::buffer<std::complex<double>> &c, std::int64_t ldc, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
1129
|
-
|
|
1130
|
-
|
|
969
|
+
|
|
970
|
+
// gels
|
|
971
|
+
DLL_EXPORT sycl::event gels(sycl::queue &queue, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t nrhs, float *a, std::int64_t lda, float *b, std::int64_t ldb, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
972
|
+
DLL_EXPORT sycl::event gels(sycl::queue &queue, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t nrhs, double *a, std::int64_t lda, double *b, std::int64_t ldb, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
973
|
+
DLL_EXPORT sycl::event gels(sycl::queue &queue, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t nrhs, std::complex<float> *a, std::int64_t lda, std::complex<float> *b, std::int64_t ldb, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
974
|
+
DLL_EXPORT sycl::event gels(sycl::queue &queue, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t nrhs, std::complex<double> *a, std::int64_t lda, std::complex<double> *b, std::int64_t ldb, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1131
975
|
|
|
1132
976
|
//
|
|
1133
977
|
// DPC++ MKL LAPACK batch group API
|
|
@@ -1169,22 +1013,21 @@ DLL_EXPORT sycl::event orgqr_batch(sycl::queue &queue, std::int64_t *m, std::int
|
|
|
1169
1013
|
DLL_EXPORT sycl::event ungqr_batch(sycl::queue &queue, std::int64_t *m, std::int64_t *n, std::int64_t *k, std::complex<float> **a, std::int64_t *lda, std::complex<float> **tau, std::int64_t group_count, std::int64_t *group_sizes, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1170
1014
|
DLL_EXPORT sycl::event ungqr_batch(sycl::queue &queue, std::int64_t *m, std::int64_t *n, std::int64_t *k, std::complex<double> **a, std::int64_t *lda, std::complex<double> **tau, std::int64_t group_count, std::int64_t *group_sizes, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1171
1015
|
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
std::int64_t ungqr_batch_scratchpad_size(sycl::queue &queue, std::int64_t *m, std::int64_t *n, std::int64_t *k, std::int64_t *lda, std::int64_t group_count, std::int64_t *group_sizes);
|
|
1016
|
+
DLL_EXPORT sycl::event ormqr_batch(sycl::queue &queue, oneapi::mkl::side *side, oneapi::mkl::transpose *trans, std::int64_t *m, std::int64_t *n, std::int64_t *k, float **a, std::int64_t *lda, float **tau, float **c, std::int64_t *ldc, std::int64_t group_count, std::int64_t *group_sizes, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1017
|
+
DLL_EXPORT sycl::event ormqr_batch(sycl::queue &queue, oneapi::mkl::side *side, oneapi::mkl::transpose *trans, std::int64_t *m, std::int64_t *n, std::int64_t *k, double **a, std::int64_t *lda, double **tau, double **c, std::int64_t *ldc, std::int64_t group_count, std::int64_t *group_sizes, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1018
|
+
|
|
1019
|
+
DLL_EXPORT sycl::event unmqr_batch(sycl::queue &queue, oneapi::mkl::side *side, oneapi::mkl::transpose *trans, std::int64_t *m, std::int64_t *n, std::int64_t *k, std::complex<float> **a, std::int64_t *lda, std::complex<float> **tau, std::complex<float> **c, std::int64_t *ldc, std::int64_t group_count, std::int64_t *group_sizes, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1020
|
+
DLL_EXPORT sycl::event unmqr_batch(sycl::queue &queue, oneapi::mkl::side *side, oneapi::mkl::transpose *trans, std::int64_t *m, std::int64_t *n, std::int64_t *k, std::complex<double> **a, std::int64_t *lda, std::complex<double> **tau, std::complex<double> **c, std::int64_t *ldc, std::int64_t group_count, std::int64_t *group_sizes, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1021
|
+
|
|
1022
|
+
DLL_EXPORT sycl::event trtrs_batch(sycl::queue &queue, oneapi::mkl::uplo *uplo, oneapi::mkl::transpose *trans, oneapi::mkl::diag *diag, std::int64_t *n, std::int64_t *nrhs, float **a, std::int64_t *lda, float **b, std::int64_t *ldb, std::int64_t group_count, std::int64_t *group_sizes, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1023
|
+
DLL_EXPORT sycl::event trtrs_batch(sycl::queue &queue, oneapi::mkl::uplo *uplo, oneapi::mkl::transpose *trans, oneapi::mkl::diag *diag, std::int64_t *n, std::int64_t *nrhs, double **a, std::int64_t *lda, double **b, std::int64_t *ldb, std::int64_t group_count, std::int64_t *group_sizes, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1024
|
+
DLL_EXPORT sycl::event trtrs_batch(sycl::queue &queue, oneapi::mkl::uplo *uplo, oneapi::mkl::transpose *trans, oneapi::mkl::diag *diag, std::int64_t *n, std::int64_t *nrhs, std::complex<float> **a, std::int64_t *lda, std::complex<float> **b, std::int64_t *ldb, std::int64_t group_count, std::int64_t *group_sizes, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1025
|
+
DLL_EXPORT sycl::event trtrs_batch(sycl::queue &queue, oneapi::mkl::uplo *uplo, oneapi::mkl::transpose *trans, oneapi::mkl::diag *diag, std::int64_t *n, std::int64_t *nrhs, std::complex<double> **a, std::int64_t *lda, std::complex<double> **b, std::int64_t *ldb, std::int64_t group_count, std::int64_t *group_sizes, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1026
|
+
|
|
1027
|
+
DLL_EXPORT sycl::event gels_batch(sycl::queue &queue, oneapi::mkl::transpose *trans, std::int64_t *m, std::int64_t *n, std::int64_t *nrhs, float **a, std::int64_t *lda, float **b, std::int64_t *ldb, std::int64_t group_count, std::int64_t *group_sizes, float *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1028
|
+
DLL_EXPORT sycl::event gels_batch(sycl::queue &queue, oneapi::mkl::transpose *trans, std::int64_t *m, std::int64_t *n, std::int64_t *nrhs, double **a, std::int64_t *lda, double **b, std::int64_t *ldb, std::int64_t group_count, std::int64_t *group_sizes, double *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1029
|
+
DLL_EXPORT sycl::event gels_batch(sycl::queue &queue, oneapi::mkl::transpose *trans, std::int64_t *m, std::int64_t *n, std::int64_t *nrhs, std::complex<float> **a, std::int64_t *lda,std::complex<float> **b, std::int64_t *ldb, std::int64_t group_count, std::int64_t *group_sizes, std::complex<float> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1030
|
+
DLL_EXPORT sycl::event gels_batch(sycl::queue &queue, oneapi::mkl::transpose *trans, std::int64_t *m, std::int64_t *n, std::int64_t *nrhs, std::complex<double> **a, std::int64_t *lda, std::complex<double> **b, std::int64_t *ldb, std::int64_t group_count, std::int64_t *group_sizes, std::complex<double> *scratchpad, std::int64_t scratchpad_size, const std::vector<sycl::event> &events = {});
|
|
1188
1031
|
|
|
1189
1032
|
//
|
|
1190
1033
|
// DPC++ MKL LAPACK batch stride API
|
|
@@ -1245,87 +1088,8 @@ DLL_EXPORT void gels_batch(sycl::queue &queue, oneapi::mkl::transpose trans, std
|
|
|
1245
1088
|
DLL_EXPORT void gels_batch(sycl::queue &queue, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t nrhs, sycl::buffer<std::complex<float>> &a, std::int64_t lda, std::int64_t stridea, sycl::buffer<std::complex<float>> &b, std::int64_t ldb, std::int64_t strideb, std::int64_t batchsize, sycl::buffer<std::complex<float>> &scratchpad, std::int64_t scratchpad_size);
|
|
1246
1089
|
DLL_EXPORT void gels_batch(sycl::queue &queue, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t nrhs, sycl::buffer<std::complex<double>> &a, std::int64_t lda, std::int64_t stridea, sycl::buffer<std::complex<double>> &b, std::int64_t ldb, std::int64_t strideb, std::int64_t batchsize, sycl::buffer<std::complex<double>> &scratchpad, std::int64_t scratchpad_size);
|
|
1247
1090
|
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
1251
|
-
std::int64_t potrs_batch_scratchpad_size(sycl::queue &queue, oneapi::mkl::uplo uplo, std::int64_t n, std::int64_t nrhs, std::int64_t lda, std::int64_t stride_a, std::int64_t ldb, std::int64_t stride_b, std::int64_t batch_size);
|
|
1252
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
1253
|
-
std::int64_t geqrf_batch_scratchpad_size(sycl::queue &queue, std::int64_t m, std::int64_t n, std::int64_t lda, std::int64_t stride_a, std::int64_t stride_tau, std::int64_t batch_size);
|
|
1254
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_real_floating_point<data_t> = nullptr>
|
|
1255
|
-
std::int64_t orgqr_batch_scratchpad_size(sycl::queue &queue, std::int64_t m, std::int64_t n, std::int64_t k, std::int64_t lda, std::int64_t stride_a, std::int64_t stride_tau, std::int64_t batch_size);
|
|
1256
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_complex_floating_point<data_t> = nullptr>
|
|
1257
|
-
std::int64_t ungqr_batch_scratchpad_size(sycl::queue &queue, std::int64_t m, std::int64_t n, std::int64_t k, std::int64_t lda, std::int64_t stride_a, std::int64_t stride_tau, std::int64_t batch_size);
|
|
1258
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
1259
|
-
std::int64_t getri_batch_scratchpad_size(sycl::queue &queue, std::int64_t n, std::int64_t lda, std::int64_t stride_a, std::int64_t stride_ipiv, std::int64_t batch_size);
|
|
1260
|
-
template <typename data_t, oneapi::mkl::lapack::internal::is_floating_point<data_t> = nullptr>
|
|
1261
|
-
std::int64_t gels_batch_scratchpad_size(sycl::queue &queue, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t nrhs, std::int64_t lda, std::int64_t stride_a, std::int64_t ldb, std::int64_t stride_b, std::int64_t batch_size);
|
|
1262
|
-
|
|
1263
|
-
class DLL_EXPORT exception
|
|
1264
|
-
{
|
|
1265
|
-
public:
|
|
1266
|
-
exception(mkl::exception *_ex, std::int64_t info, std::int64_t detail = 0) : _info(info), _detail(detail), _ex(_ex) {}
|
|
1267
|
-
std::int64_t info() const { return _info; }
|
|
1268
|
-
std::int64_t detail() const { return _detail; }
|
|
1269
|
-
const char* what() const { return _ex->what(); }
|
|
1270
|
-
private:
|
|
1271
|
-
std::int64_t _info;
|
|
1272
|
-
std::int64_t _detail;
|
|
1273
|
-
mkl::exception *_ex;
|
|
1274
|
-
};
|
|
1275
|
-
|
|
1276
|
-
class DLL_EXPORT computation_error : public oneapi::mkl::computation_error, public oneapi::mkl::lapack::exception
|
|
1277
|
-
{
|
|
1278
|
-
public:
|
|
1279
|
-
computation_error(const std::string &function, const std::string &info, std::int64_t code)
|
|
1280
|
-
: oneapi::mkl::computation_error("lapack", function, info), oneapi::mkl::lapack::exception(this, code) {}
|
|
1281
|
-
virtual ~computation_error();
|
|
1282
|
-
using oneapi::mkl::computation_error::what;
|
|
1283
|
-
};
|
|
1284
|
-
|
|
1285
|
-
class DLL_EXPORT batch_error : public oneapi::mkl::batch_error, public oneapi::mkl::lapack::exception
|
|
1286
|
-
{
|
|
1287
|
-
public:
|
|
1288
|
-
batch_error(const std::string &function, const std::string &info, std::int64_t num_errors, std::vector<std::int64_t> ids = {}, std::vector<std::exception_ptr> exceptions = {})
|
|
1289
|
-
: oneapi::mkl::batch_error("lapack", function, info), oneapi::mkl::lapack::exception(this, num_errors), _ids(ids), _exceptions(exceptions) {}
|
|
1290
|
-
virtual ~batch_error();
|
|
1291
|
-
using oneapi::mkl::batch_error::what;
|
|
1292
|
-
const std::vector<std::int64_t>& ids() const { return _ids; }
|
|
1293
|
-
const std::vector<std::exception_ptr>& exceptions() const { return _exceptions; }
|
|
1294
|
-
private:
|
|
1295
|
-
std::vector<std::int64_t> _ids;
|
|
1296
|
-
std::vector<std::exception_ptr> _exceptions;
|
|
1297
|
-
};
|
|
1298
|
-
|
|
1299
|
-
class DLL_EXPORT invalid_argument : public oneapi::mkl::invalid_argument, public oneapi::mkl::lapack::exception
|
|
1300
|
-
{
|
|
1301
|
-
public:
|
|
1302
|
-
invalid_argument(const std::string &function, const std::string &info, std::int64_t arg_position = 0, std::int64_t detail = 0)
|
|
1303
|
-
: oneapi::mkl::invalid_argument("lapack", function, info), oneapi::mkl::lapack::exception(this, arg_position, detail) {}
|
|
1304
|
-
virtual ~invalid_argument();
|
|
1305
|
-
using oneapi::mkl::invalid_argument::what;
|
|
1306
|
-
};
|
|
1307
|
-
|
|
1308
|
-
namespace internal
|
|
1309
|
-
{
|
|
1310
|
-
// auxilary typechecking templates
|
|
1311
|
-
template<typename T>
|
|
1312
|
-
struct enable_if<true,T> { using type = T; };
|
|
1313
|
-
|
|
1314
|
-
template<> struct is_fp<float> { static constexpr bool value{true}; };
|
|
1315
|
-
template<> struct is_fp<double> { static constexpr bool value{true}; };
|
|
1316
|
-
template<> struct is_fp<std::complex<float>> { static constexpr bool value{true}; };
|
|
1317
|
-
template<> struct is_fp<std::complex<double>> { static constexpr bool value{true}; };
|
|
1318
|
-
|
|
1319
|
-
template<> struct is_rfp<float> { static constexpr bool value{true}; };
|
|
1320
|
-
template<> struct is_rfp<double> { static constexpr bool value{true}; };
|
|
1321
|
-
|
|
1322
|
-
template<> struct is_cfp<std::complex<float>> { static constexpr bool value{true}; };
|
|
1323
|
-
template<> struct is_cfp<std::complex<double>> { static constexpr bool value{true}; };
|
|
1324
|
-
}
|
|
1325
|
-
|
|
1326
|
-
} //namespace lapack
|
|
1327
|
-
} //namespace mkl
|
|
1091
|
+
} // namespace lapack
|
|
1092
|
+
} // namespace mkl
|
|
1328
1093
|
} // namespace oneapi
|
|
1329
1094
|
|
|
1330
|
-
|
|
1331
|
-
#endif // _LAPACK_HPP__
|
|
1095
|
+
#endif // _ONEAPI_MKL_LAPACK_LAPACK_HPP__
|