16 #include "plasma_async.h" 17 #include "plasma_barrier.h" 18 #include "plasma_descriptor.h" 19 #include "plasma_workspace.h" 28 int plasma_samax(plasma_enum_t colrow,
30 float *pA,
int lda,
float *values);
32 int plasma_sgbsv(
int n,
int kl,
int ku,
int nrhs,
33 float *pAB,
int ldab,
int *ipiv,
36 int plasma_sgbtrf(
int m,
int n,
int kl,
int ku,
37 float *pA,
int lda,
int *ipiv);
39 int plasma_sgbtrs(plasma_enum_t transa,
int n,
int kl,
int ku,
int nrhs,
46 float alpha,
float *pA,
int lda,
47 float beta,
float *pB,
int ldb);
49 int plasma_sgeinv(
int m,
int n,
float *pA,
int lda,
int *ipiv);
61 int m,
int n,
int nrhs,
66 int plasma_sgemm(plasma_enum_t transa, plasma_enum_t transb,
68 float alpha,
float *pA,
int lda,
70 float beta,
float *pC,
int ldc);
81 int plasma_sgesv(
int n,
int nrhs,
82 float *pA,
int lda,
int *ipiv,
85 int plasma_sgetrf(
int m,
int n,
86 float *pA,
int lda,
int *ipiv);
92 int plasma_sgetrs(plasma_enum_t trans,
int n,
int nrhs,
93 float *pA,
int lda,
int *ipiv,
98 float alpha,
float *pA,
int lda,
100 float beta,
float *pC,
int ldc);
104 float alpha,
float *pA,
int lda,
106 float beta,
float *pC,
int ldc);
108 int plasma_ssyrk(plasma_enum_t uplo, plasma_enum_t trans,
110 float alpha,
float *pA,
int lda,
111 float beta,
float *pC,
int ldc);
115 float *pA,
int lda,
int *ipiv,
116 float *pT,
int ldt,
int *ipiv2);
137 float plasma_slangb(plasma_enum_t norm,
138 int m,
int n,
int kl,
int ku,
139 float *pAB,
int ldab);
145 float plasma_slansy(plasma_enum_t norm, plasma_enum_t uplo,
149 float plasma_slansy(plasma_enum_t norm, plasma_enum_t uplo,
153 float plasma_slantr(plasma_enum_t norm, plasma_enum_t uplo, plasma_enum_t diag,
157 float plasma_slangb(plasma_enum_t norm,
158 int m,
int n,
int kl,
int ku,
159 float *pAB,
int ldab);
161 int plasma_slascl(plasma_enum_t uplo,
162 float cfrom,
float cto,
166 int plasma_slaset(plasma_enum_t uplo,
168 float alpha,
float beta,
171 int plasma_sgeswp(plasma_enum_t colrow,
174 int *ipiv,
int incx);
179 int plasma_spbsv(plasma_enum_t uplo,
180 int n,
int kd,
int nrhs,
181 float *pAB,
int ldab,
184 int plasma_spbtrf(plasma_enum_t uplo,
186 float *pAB,
int ldab);
188 int plasma_spbtrs(plasma_enum_t uplo,
189 int n,
int kd,
int nrhs,
190 float *pAB,
int ldab,
193 int plasma_spoinv(plasma_enum_t uplo,
215 int plasma_ssymm(plasma_enum_t side, plasma_enum_t uplo,
217 float alpha,
float *pA,
int lda,
219 float beta,
float *pC,
int ldc);
223 float alpha,
float *pA,
int lda,
225 float beta,
float *pC,
int ldc);
227 int plasma_ssyrk(plasma_enum_t uplo, plasma_enum_t trans,
229 float alpha,
float *pA,
int lda,
230 float beta,
float *pC,
int ldc);
232 int plasma_stradd(plasma_enum_t uplo, plasma_enum_t transa,
234 float alpha,
float *pA,
int lda,
235 float beta,
float *pB,
int ldb);
237 int plasma_strmm(plasma_enum_t side, plasma_enum_t uplo,
238 plasma_enum_t transa, plasma_enum_t diag,
240 float alpha,
float *pA,
int lda,
243 int plasma_strsm(plasma_enum_t side, plasma_enum_t uplo,
244 plasma_enum_t transa, plasma_enum_t diag,
246 float alpha,
float *pA,
int lda,
250 int n,
float *pA,
int lda);
278 float *work,
float *values,
279 plasma_sequence_t *sequence, plasma_request_t *request);
282 plasma_sequence_t *sequence, plasma_request_t *request);
285 plasma_sequence_t *sequence, plasma_request_t *request);
287 void plasma_omp_sgbtrs(plasma_enum_t transa,
plasma_desc_t AB,
int *ipiv,
289 plasma_sequence_t *sequence, plasma_request_t *request);
293 plasma_sequence_t *sequence,
294 plasma_request_t *request);
298 plasma_sequence_t *sequence,
299 plasma_request_t *request);
303 plasma_sequence_t *sequence,
304 plasma_request_t *request);
308 plasma_sequence_t *sequence,
309 plasma_request_t *request);
314 plasma_sequence_t *sequence, plasma_request_t *request);
317 plasma_sequence_t *sequence, plasma_request_t *request);
320 plasma_workspace_t work,
321 plasma_sequence_t *sequence, plasma_request_t *request);
325 plasma_sequence_t *sequence, plasma_request_t *request);
330 plasma_sequence_t *sequence, plasma_request_t *request);
336 plasma_sequence_t *sequence, plasma_request_t *request);
339 plasma_workspace_t work,
340 plasma_sequence_t *sequence, plasma_request_t *request);
344 plasma_sequence_t *sequence, plasma_request_t *request);
348 plasma_sequence_t *sequence, plasma_request_t *request);
351 plasma_sequence_t *sequence, plasma_request_t *request);
354 plasma_sequence_t *sequence, plasma_request_t *request);
357 plasma_sequence_t *sequence, plasma_request_t *request);
359 void plasma_omp_sgetrs(plasma_enum_t trans,
plasma_desc_t A,
int *ipiv,
361 plasma_sequence_t *sequence, plasma_request_t *request);
367 plasma_sequence_t *sequence, plasma_request_t *request);
373 plasma_sequence_t *sequence, plasma_request_t *request);
378 plasma_sequence_t *sequence, plasma_request_t *request);
384 plasma_sequence_t *sequence,
385 plasma_request_t *request);
392 plasma_sequence_t *sequence,
393 plasma_request_t *request);
399 plasma_sequence_t *sequence,
400 plasma_request_t *request);
404 plasma_sequence_t *sequence, plasma_request_t *request);
407 float *work,
float *value,
408 plasma_sequence_t *sequence, plasma_request_t *request);
411 float *work,
float *value,
412 plasma_sequence_t *sequence, plasma_request_t *request);
414 void plasma_omp_slansy(plasma_enum_t norm, plasma_enum_t uplo,
plasma_desc_t A,
415 float *work,
float *value,
416 plasma_sequence_t *sequence, plasma_request_t *request);
418 void plasma_omp_slansy(plasma_enum_t norm, plasma_enum_t uplo,
plasma_desc_t A,
419 float *work,
float *value,
420 plasma_sequence_t *sequence, plasma_request_t *request);
424 float *work,
float *value,
425 plasma_sequence_t *sequence, plasma_request_t *request);
428 float *work,
float *value,
429 plasma_sequence_t *sequence, plasma_request_t *request);
431 void plasma_omp_slascl(plasma_enum_t uplo,
432 float cfrom,
float cto,
434 plasma_sequence_t *sequence, plasma_request_t *request);
436 void plasma_omp_slaset(plasma_enum_t uplo,
437 float alpha,
float beta,
439 plasma_sequence_t *sequence, plasma_request_t *request);
441 void plasma_omp_sgeswp(plasma_enum_t colrow,
444 plasma_sequence_t *sequence, plasma_request_t *request);
448 plasma_sequence_t *sequence, plasma_request_t *request);
452 plasma_sequence_t *sequence,
453 plasma_request_t *request);
456 plasma_sequence_t *sequence, plasma_request_t *request);
459 plasma_sequence_t *sequence, plasma_request_t *request);
462 plasma_sequence_t *sequence, plasma_request_t *request);
465 plasma_sequence_t *sequence, plasma_request_t *request);
468 plasma_sequence_t *sequence, plasma_request_t *request);
471 plasma_sequence_t *sequence, plasma_request_t *request);
474 plasma_sequence_t *sequence, plasma_request_t *request);
477 plasma_sequence_t *sequence, plasma_request_t *request);
483 plasma_sequence_t *sequence, plasma_request_t *request);
489 plasma_sequence_t *sequence, plasma_request_t *request);
494 plasma_sequence_t *sequence, plasma_request_t *request);
498 plasma_sequence_t *sequence,
499 plasma_request_t *request);
501 void plasma_omp_stradd(plasma_enum_t uplo, plasma_enum_t transa,
504 plasma_sequence_t *sequence, plasma_request_t *request);
507 plasma_enum_t transa, plasma_enum_t diag,
510 plasma_sequence_t *sequence, plasma_request_t *request);
513 plasma_enum_t transa, plasma_enum_t diag,
516 plasma_sequence_t *sequence, plasma_request_t *request);
520 plasma_sequence_t *sequence, plasma_request_t *request);
524 plasma_sequence_t *sequence, plasma_request_t *request);
528 plasma_sequence_t *sequence, plasma_request_t *request);
533 plasma_sequence_t *sequence, plasma_request_t *request);
538 plasma_sequence_t *sequence, plasma_request_t *request);
int plasma_sgelqf(int m, int n, float *pA, int lda, plasma_desc_t *T)
Definition: sgelqf.c:71
void plasma_omp_sormlq(plasma_enum_t side, plasma_enum_t trans, plasma_desc_t A, plasma_desc_t T, plasma_desc_t C, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sormlq.c:285
void plasma_omp_sormqr(plasma_enum_t side, plasma_enum_t trans, plasma_desc_t A, plasma_desc_t T, plasma_desc_t C, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sormqr.c:286
int plasma_sgemm(plasma_enum_t transa, plasma_enum_t transb, int m, int n, int k, float alpha, float *pA, int lda, float *pB, int ldb, float beta, float *pC, int ldc)
Definition: sgemm.c:105
int plasma_ssytrs(plasma_enum_t uplo, int n, int nrhs, float *pA, int lda, int *ipiv, float *pT, int ldt, int *ipiv2, float *pB, int ldb)
Definition: ssytrs.c:86
int plasma_ssysv(plasma_enum_t uplo, int n, int nrhs, float *pA, int lda, int *ipiv, float *pT, int ldt, int *ipiv2, float *pB, int ldb)
Definition: ssysv.c:87
int plasma_sgels(plasma_enum_t trans, int m, int n, int nrhs, float *pA, int lda, plasma_desc_t *T, float *pB, int ldb)
Definition: sgels.c:116
int plasma_ssytrf(plasma_enum_t uplo, int n, float *pA, int lda, int *ipiv, float *pT, int ldt, int *ipiv2)
Definition: ssytrf.c:91
void plasma_omp_sgeqrs(plasma_desc_t A, plasma_desc_t T, plasma_desc_t B, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sgeqrs.c:233
int plasma_sorgqr(int m, int n, int k, float *pA, int lda, plasma_desc_t T, float *pQ, int ldq)
Definition: sorgqr.c:73
int plasma_spotri(plasma_enum_t uplo, int n, float *pA, int lda)
Definition: spotri.c:65
void plasma_omp_ssytrf(plasma_enum_t uplo, plasma_desc_t A, int *ipiv, plasma_desc_t T, int *ipiv2, plasma_desc_t W, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: ssytrf.c:280
int plasma_sormqr(plasma_enum_t side, plasma_enum_t trans, int m, int n, int k, float *pA, int lda, plasma_desc_t T, float *pC, int ldc)
Definition: sormqr.c:97
int plasma_sorglq(int m, int n, int k, float *pA, int lda, plasma_desc_t T, float *pQ, int ldq)
Definition: sorglq.c:73
void plasma_omp_sgeadd(plasma_enum_t transa, float alpha, plasma_desc_t A, float beta, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sgeadd.c:268
void plasma_omp_ssymm(plasma_enum_t side, plasma_enum_t uplo, float alpha, plasma_desc_t A, plasma_desc_t B, float beta, plasma_desc_t C, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: ssymm.c:279
void plasma_omp_ssyrk(plasma_enum_t uplo, plasma_enum_t trans, float alpha, plasma_desc_t A, float beta, plasma_desc_t C, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: ssyrk.c:263
void plasma_omp_sgelqf(plasma_desc_t A, plasma_desc_t T, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sgelqf.c:216
void plasma_omp_sgeqrf(plasma_desc_t A, plasma_desc_t T, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sgeqrf.c:223
void plasma_omp_sdesc2pb(plasma_desc_t A, float *pA, int lda, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sdesc2pb.c:27
void plasma_omp_slange(plasma_enum_t norm, plasma_desc_t A, float *work, float *value, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: slange.c:233
int plasma_sgetri(int n, float *pA, int lda, int *ipiv)
Definition: sgetri.c:58
int plasma_ssyr2k(plasma_enum_t uplo, plasma_enum_t trans, int n, int k, float alpha, float *pA, int lda, float *pB, int ldb, float beta, float *pC, int ldc)
Definition: ssyr2k.c:101
int plasma_slacpy(plasma_enum_t uplo, plasma_enum_t transa, int m, int n, float *pA, int lda, float *pB, int ldb)
Definition: slacpy.c:74
void plasma_omp_sdesc2ge(plasma_desc_t A, float *pA, int lda, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sdesc2ge.c:27
void plasma_omp_sgetri_aux(plasma_desc_t A, plasma_desc_t W, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sgetri_aux.c:171
void plasma_omp_sorgqr(plasma_desc_t A, plasma_desc_t T, plasma_desc_t Q, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sorgqr.c:230
int plasma_spotrf(plasma_enum_t uplo, int n, float *pA, int lda)
Definition: spotrf.c:74
void plasma_omp_sorglq(plasma_desc_t A, plasma_desc_t T, plasma_desc_t Q, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sorglq.c:230
void plasma_omp_slacpy(plasma_enum_t uplo, plasma_enum_t transa, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: slacpy.c:234
int plasma_sgeadd(plasma_enum_t transa, int m, int n, float alpha, float *pA, int lda, float beta, float *pB, int ldb)
Definition: sgeadd.c:90
void plasma_omp_slauum(plasma_enum_t uplo, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: slauum.c:184
void plasma_omp_spotrs(plasma_enum_t uplo, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: spotrs.c:226
void plasma_omp_slantr(plasma_enum_t norm, plasma_enum_t uplo, plasma_enum_t diag, plasma_desc_t A, float *work, float *value, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: slantr.c:261
float plasma_slange(plasma_enum_t norm, int m, int n, float *pA, int lda)
Definition: slange.c:76
void plasma_omp_strsm(plasma_enum_t side, plasma_enum_t uplo, plasma_enum_t transa, plasma_enum_t diag, float alpha, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: strsm.c:290
void plasma_omp_sposv(plasma_enum_t uplo, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sposv.c:244
int plasma_slauum(plasma_enum_t uplo, int n, float *pA, int lda)
Definition: slauum.c:67
void plasma_omp_strtri(plasma_enum_t uplo, plasma_enum_t diag, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: strtri.c:201
int plasma_sgeqrs(int m, int n, int nrhs, float *pA, int lda, plasma_desc_t T, float *pB, int ldb)
Definition: sgeqrs.c:72
void plasma_omp_strmm(plasma_enum_t side, plasma_enum_t uplo, plasma_enum_t transa, plasma_enum_t diag, float alpha, plasma_desc_t A, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: strmm.c:294
int plasma_sgeqrf(int m, int n, float *pA, int lda, plasma_desc_t *T)
Definition: sgeqrf.c:73
int plasma_sposv(plasma_enum_t uplo, int n, int nrhs, float *pA, int lda, float *pB, int ldb)
Definition: sposv.c:90
int plasma_ssyrk(plasma_enum_t uplo, plasma_enum_t trans, int n, int k, float alpha, float *pA, int lda, float beta, float *pC, int ldc)
Definition: ssyrk.c:89
int plasma_spotrs(plasma_enum_t uplo, int n, int nrhs, float *pA, int lda, float *pB, int ldb)
Definition: spotrs.c:77
int plasma_sgelqs(int m, int n, int nrhs, float *pA, int lda, plasma_desc_t T, float *pB, int ldb)
Definition: sgelqs.c:71
void plasma_omp_sdesc2tr(plasma_desc_t A, float *pA, int lda, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sdesc2tr.c:27
void plasma_omp_sgels(plasma_enum_t trans, plasma_desc_t A, plasma_desc_t T, plasma_desc_t B, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sgels.c:313
int plasma_sormlq(plasma_enum_t side, plasma_enum_t trans, int m, int n, int k, float *pA, int lda, plasma_desc_t T, float *pC, int ldc)
Definition: sormlq.c:95
float plasma_slantr(plasma_enum_t norm, plasma_enum_t uplo, plasma_enum_t diag, int m, int n, float *pA, int lda)
Definition: slantr.c:84
void plasma_omp_ssysv(plasma_enum_t uplo, plasma_desc_t A, int *ipiv, plasma_desc_t T, int *ipiv2, plasma_desc_t B, plasma_desc_t W, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: ssysv.c:293
int plasma_strsm(plasma_enum_t side, plasma_enum_t uplo, plasma_enum_t transa, plasma_enum_t diag, int m, int n, float alpha, float *pA, int lda, float *pB, int ldb)
Definition: strsm.c:104
int plasma_ssymm(plasma_enum_t side, plasma_enum_t uplo, int m, int n, float alpha, float *pA, int lda, float *pB, int ldb, float beta, float *pC, int ldc)
Definition: ssymm.c:96
void plasma_omp_ssyr2k(plasma_enum_t uplo, plasma_enum_t trans, float alpha, plasma_desc_t A, plasma_desc_t B, float beta, plasma_desc_t C, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: ssyr2k.c:300
void plasma_omp_spotrf(plasma_enum_t uplo, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: spotrf.c:206
void plasma_omp_sgelqs(plasma_desc_t A, plasma_desc_t T, plasma_desc_t B, plasma_workspace_t work, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sgelqs.c:231
void plasma_omp_spotri(plasma_enum_t uplo, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: spotri.c:187
int plasma_sgetri_aux(int n, float *pA, int lda)
Definition: sgetri_aux.c:53
Definition: plasma_descriptor.h:40
void plasma_omp_ssytrs(plasma_enum_t uplo, plasma_desc_t A, int *ipiv, plasma_desc_t T, int *ipiv2, plasma_desc_t B, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: ssytrs.c:260
int plasma_strtri(plasma_enum_t uplo, plasma_enum_t diag, int n, float *pA, int lda)
Definition: strtri.c:70
void plasma_omp_sgemm(plasma_enum_t transa, plasma_enum_t transb, float alpha, plasma_desc_t A, plasma_desc_t B, float beta, plasma_desc_t C, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sgemm.c:315
int plasma_strmm(plasma_enum_t side, plasma_enum_t uplo, plasma_enum_t transa, plasma_enum_t diag, int m, int n, float alpha, float *pA, int lda, float *pB, int ldb)
Definition: strmm.c:111
void plasma_omp_spb2desc(float *pA, int lda, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: spb2desc.c:27
void plasma_omp_str2desc(float *pA, int lda, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: str2desc.c:27
void plasma_omp_sge2desc(float *pA, int lda, plasma_desc_t A, plasma_sequence_t *sequence, plasma_request_t *request)
Definition: sge2desc.c:27