17 #include <rocsolver/rocsolver.h> 21 hipblasOperation_t transa,
22 hipblasOperation_t transb,
26 const hipComplex* alpha,
27 const hipComplex*
const Aarray[],
29 const hipComplex*
const Barray[],
31 const hipComplex* beta,
32 hipComplex*
const Carray[],
37 (
const hipblasComplex*
const*)Aarray,
lda, (
const hipblasComplex*
const*)Barray, ldb,
38 (
const hipblasComplex*)beta, (hipblasComplex*
const*)Carray, ldc, batchCount);
42 hipblasOperation_t transa,
43 hipblasOperation_t transb,
47 const hipDoubleComplex* alpha,
48 const hipDoubleComplex*
const Aarray[],
50 const hipDoubleComplex*
const Barray[],
52 const hipDoubleComplex* beta,
53 hipDoubleComplex*
const Carray[],
58 (
const hipblasDoubleComplex*
const*)Aarray,
lda,
59 (
const hipblasDoubleComplex*
const*)Barray, ldb, (
const hipblasDoubleComplex*)beta,
60 (hipblasDoubleComplex*
const*)Carray, ldc, batchCount);
73 throw std::runtime_error(
"hipblasXgetrfBatched_ pivot array cannot be a null pointer!");
74 return (hipblasStatus_t)rocsolver_sgetrf_batched((rocblas_handle)handle, (
const rocblas_int)
n, (
const rocblas_int)
n,
75 (
float*
const*)
A, (
const rocblas_int)
lda, (rocblas_int*)P,
76 (
const rocblas_stride)
n, (rocblas_int*)info,
77 (
const rocblas_int)batchSize);
89 throw std::runtime_error(
"hipblasXgetrfBatched_ pivot array cannot be a null pointer!");
90 return (hipblasStatus_t)rocsolver_dgetrf_batched((rocblas_handle)handle, (
const rocblas_int)
n, (
const rocblas_int)
n,
91 (
double*
const*)
A, (
const rocblas_int)
lda, (rocblas_int*)P,
92 (
const rocblas_stride)
n, (rocblas_int*)info,
93 (
const rocblas_int)batchSize);
98 hipComplex*
const A[],
105 throw std::runtime_error(
"hipblasXgetrfBatched_ pivot array cannot be a null pointer!");
106 return (hipblasStatus_t)rocsolver_cgetrf_batched((rocblas_handle)handle, (
const rocblas_int)
n, (
const rocblas_int)
n,
107 (rocblas_float_complex*
const*)
A, (
const rocblas_int)
lda,
108 (rocblas_int*)P, (
const rocblas_stride)
n, (rocblas_int*)info,
109 (
const rocblas_int)batchSize);
114 hipDoubleComplex*
const A[],
121 throw std::runtime_error(
"hipblasXgetrfBatched_ pivot array cannot be a null pointer!");
122 return (hipblasStatus_t)rocsolver_zgetrf_batched((rocblas_handle)handle, (
const rocblas_int)
n, (
const rocblas_int)
n,
123 (rocblas_double_complex*
const*)
A, (
const rocblas_int)
lda,
124 (rocblas_int*)P, (
const rocblas_stride)
n, (rocblas_int*)info,
125 (
const rocblas_int)batchSize);
131 const float*
const A[],
140 throw std::runtime_error(
"hipblasXgetriBatched_ pivot array cannot be a null pointer!");
141 return hipblasSgetriBatched(handle,
n, (
float*
const*)
A,
lda, (
int*)P, (
float*
const*)
C, ldc, info, batchSize);
146 const double*
const A[],
155 throw std::runtime_error(
"hipblasXgetriBatched_ pivot array cannot be a null pointer!");
156 return hipblasDgetriBatched(handle,
n, (
double*
const*)
A,
lda, (
int*)P, (
double*
const*)
C, ldc, info, batchSize);
161 const hipComplex*
const A[],
164 hipComplex*
const C[],
170 throw std::runtime_error(
"hipblasXgetriBatched_ pivot array cannot be a null pointer!");
171 return hipblasCgetriBatched(handle,
n, (hipblasComplex*
const*)
A,
lda, (
int*)P, (hipblasComplex*
const*)
C, ldc, info,
177 const hipDoubleComplex*
const A[],
180 hipDoubleComplex*
const C[],
186 throw std::runtime_error(
"hipblasXgetriBatched_ pivot array cannot be a null pointer!");
187 return hipblasZgetriBatched(handle,
n, (hipblasDoubleComplex*
const*)
A,
lda, (
int*)P, (hipblasDoubleComplex*
const*)
C,
188 ldc, info, batchSize);
hipblasStatus_t hipblasSgetriBatched_(hipblasHandle_t handle, int n, const float *const A[], int lda, const int *P, float *const C[], int ldc, int *info, int batchSize)
hipblasStatus_t hipblasDgetrfBatched_(hipblasHandle_t handle, int n, double *const A[], int lda, int *P, int *info, int batchSize)
hipblasStatus_t hipblasZgetriBatched_(hipblasHandle_t handle, int n, const hipDoubleComplex *const A[], int lda, const int *P, hipDoubleComplex *const C[], int ldc, int *info, int batchSize)
hipblasStatus_t hipblasSgetrfBatched_(hipblasHandle_t handle, int n, float *const A[], int lda, int *P, int *info, int batchSize)
hipblasStatus_t hipblasCgetriBatched_(hipblasHandle_t handle, int n, const hipComplex *const A[], int lda, const int *P, hipComplex *const C[], int ldc, int *info, int batchSize)
hipblasStatus_t hipblasZgemmBatched(hipblasHandle_t handle, hipblasOperation_t transa, hipblasOperation_t transb, int m, int n, int k, const hipDoubleComplex *alpha, const hipDoubleComplex *const Aarray[], int lda, const hipDoubleComplex *const Barray[], int ldb, const hipDoubleComplex *beta, hipDoubleComplex *const Carray[], int ldc, int batchCount)
hipblasStatus_t hipblasDgetriBatched_(hipblasHandle_t handle, int n, const double *const A[], int lda, const int *P, double *const C[], int ldc, int *info, int batchSize)
hipblasStatus_t hipblasCgetrfBatched_(hipblasHandle_t handle, int n, hipComplex *const A[], int lda, int *P, int *info, int batchSize)
hipblasStatus_t hipblasZgetrfBatched_(hipblasHandle_t handle, int n, hipDoubleComplex *const A[], int lda, int *P, int *info, int batchSize)
hipblasStatus_t hipblasCgemmBatched(hipblasHandle_t handle, hipblasOperation_t transa, hipblasOperation_t transb, int m, int n, int k, const hipComplex *alpha, const hipComplex *const Aarray[], int lda, const hipComplex *const Barray[], int ldb, const hipComplex *beta, hipComplex *const Carray[], int ldc, int batchCount)