18 #ifndef _PLASMA_CORE_DBLAS_H_
19 #define _PLASMA_CORE_DBLAS_H_
30 void CORE_dasum(
int storev, PLASMA_enum uplo,
int M,
int N,
31 const double *A,
int lda,
double *work);
32 void CORE_dbrdalg1( PLASMA_enum uplo,
41 int Vblksiz,
int wantz,
42 int i,
int sweepid,
int m,
int grsiz,
44 int CORE_dgbelr(PLASMA_enum uplo,
int N,
46 int st,
int ed,
int eltsize);
47 int CORE_dgbrce(PLASMA_enum uplo,
int N,
49 int st,
int ed,
int eltsize);
50 int CORE_dgblrx(PLASMA_enum uplo,
int N,
52 int st,
int ed,
int eltsize);
53 int CORE_dgeadd(
int M,
int N,
double alpha,
54 const double *A,
int LDA,
56 int CORE_dgelqt(
int M,
int N,
int IB,
61 void CORE_dgemm(PLASMA_enum transA, PLASMA_enum transB,
63 double alpha,
const double *A,
int LDA,
64 const double *B,
int LDB,
65 double beta,
double *C,
int LDC);
66 void CORE_dgemv(PLASMA_enum trans,
int M,
int N,
67 double alpha,
const double *A,
int LDA,
68 const double *x,
int incx,
69 double beta,
double *y,
int incy);
70 void CORE_dgeqp3_init(
int n,
int *jpvt );
71 void CORE_dgeqp3_larfg(
PLASMA_desc A,
int ii,
int jj,
int i,
int j,
72 double *tau,
double *beta );
73 void CORE_dgeqp3_norms(
PLASMA_desc A,
int ioff,
int joff,
double *norms1,
double *norms2 );
74 void CORE_dgeqp3_pivot(
PLASMA_desc A,
double *F,
int ldf,
75 int jj,
int k,
int *jpvt,
76 double *norms1,
double *norms2,
int *info );
77 int CORE_dgeqp3_tntpiv(
int m,
int n,
79 int *IPIV,
double *tau,
81 void CORE_dgeqp3_update(
const double *Ajj,
int lda1,
82 double *Ajk,
int lda2,
83 const double *Fk,
int ldf,
84 int joff,
int k,
int koff,
int nb,
85 double *norms1,
double *norms2,
87 int CORE_dgeqrt(
int M,
int N,
int IB,
90 double *TAU,
double *WORK);
91 int CORE_dgessm(
int M,
int N,
int K,
int IB,
93 const double *L,
int LDL,
95 int CORE_dgessq(
int M,
int N,
96 const double *A,
int LDA,
97 double *scale,
double *sumsq);
98 int CORE_dgetf2_nopiv(
int m,
int n,
100 int CORE_dgetrf(
int M,
int N,
102 int *IPIV,
int *INFO);
103 int CORE_dgetrf_incpiv(
int M,
int N,
int IB,
105 int *IPIV,
int *INFO);
106 int CORE_dgetrf_nopiv(
int m,
int n,
int ib,
108 int CORE_dgetrf_reclap(
int M,
int N,
110 int *IPIV,
int *info);
111 void CORE_dgetrf_reclap_init(
void);
112 int CORE_dgetrf_rectil(
const PLASMA_desc A,
int *IPIV,
int *info);
113 void CORE_dgetrf_rectil_init(
void);
114 void CORE_dgetrip(
int m,
int n,
double *A,
116 int CORE_dhbelr(PLASMA_enum uplo,
int N,
118 int st,
int ed,
int eltsize);
119 int CORE_dhblrx(PLASMA_enum uplo,
int N,
121 int st,
int ed,
int eltsize);
122 int CORE_dhbrce(PLASMA_enum uplo,
int N,
124 int st,
int ed,
int eltsize);
125 void CORE_dsbtype1cb(
int N,
int NB,
127 double *V,
double *TAU,
128 int st,
int ed,
int sweep,
int Vblksiz,
int WANTZ,
130 void CORE_dsbtype2cb(
int N,
int NB,
132 double *V,
double *TAU,
133 int st,
int ed,
int sweep,
int Vblksiz,
int WANTZ,
135 void CORE_dsbtype3cb(
int N,
int NB,
137 const double *V,
const double *TAU,
138 int st,
int ed,
int sweep,
int Vblksiz,
int WANTZ,
140 void CORE_dgbtype1cb(PLASMA_enum uplo,
int N,
int NB,
142 double *VQ,
double *TAUQ,
143 double *VP,
double *TAUP,
144 int st,
int ed,
int sweep,
int Vblksiz,
int WANTZ,
146 void CORE_dgbtype2cb(PLASMA_enum uplo,
int N,
int NB,
148 double *VQ,
double *TAUQ,
149 double *VP,
double *TAUP,
150 int st,
int ed,
int sweep,
int Vblksiz,
int WANTZ,
152 void CORE_dgbtype3cb(PLASMA_enum uplo,
int N,
int NB,
154 double *VQ,
double *TAUQ,
155 double *VP,
double *TAUP,
156 int st,
int ed,
int sweep,
int Vblksiz,
int WANTZ,
158 void CORE_dsygst(
int itype, PLASMA_enum uplo,
int N,
160 double *B,
int LDB,
int *INFO);
162 void CORE_dsymm(PLASMA_enum side, PLASMA_enum uplo,
164 double alpha,
const double *A,
int LDA,
165 const double *B,
int LDB,
166 double beta,
double *C,
int LDC);
167 void CORE_dsyrk(PLASMA_enum uplo, PLASMA_enum trans,
169 double alpha,
const double *A,
int LDA,
170 double beta,
double *C,
int LDC);
171 void CORE_dsyr2k(PLASMA_enum uplo, PLASMA_enum trans,
173 double alpha,
const double *A,
int LDA,
174 const double *B,
int LDB,
175 double beta,
double *C,
int LDC);
176 int CORE_dhessq(PLASMA_enum uplo,
int N,
177 const double *A,
int LDA,
178 double *scale,
double *sumsq);
180 int CORE_dsyrfb(PLASMA_enum uplo,
int N,
int K,
int IB,
int NB,
181 const double *A,
int LDA,
182 const double *T,
int LDT,
184 double *WORK,
int LDWORK);
185 void CORE_dlacpy(PLASMA_enum uplo,
int M,
int N,
186 const double *A,
int LDA,
190 int k1,
int k2,
const int *ipiv,
191 int *rankin,
int *rankout,
194 void CORE_dlange(
int norm,
int M,
int N,
195 const double *A,
int LDA,
196 double *work,
double *normA);
198 void CORE_dlansy(
int norm, PLASMA_enum uplo,
int N,
199 const double *A,
int LDA,
200 double *work,
double *normA);
202 void CORE_dlansy(
int norm, PLASMA_enum uplo,
int N,
203 const double *A,
int LDA,
204 double *work,
double *normA);
205 int CORE_dlarfb_gemm(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev,
207 const double *V,
int LDV,
208 const double *T,
int LDT,
210 double *WORK,
int LDWORK);
211 int CORE_dlarfx2(PLASMA_enum side,
int N,
214 double *C1,
int LDC1,
215 double *C2,
int LDC2);
216 int CORE_dlarfx2c(PLASMA_enum uplo,
222 int CORE_dlarfx2ce(PLASMA_enum uplo,
228 void CORE_dlarfy(
int N,
233 void CORE_dlaset(PLASMA_enum uplo,
int n1,
int n2,
234 double alpha,
double beta,
235 double *tileA,
int ldtilea);
236 void CORE_dlaset2(PLASMA_enum uplo,
int n1,
int n2,
double alpha,
237 double *tileA,
int ldtilea);
238 void CORE_dlaswp(
int N,
double *A,
int LDA,
239 int I1,
int I2,
const int *IPIV,
int INC);
240 int CORE_dlaswp_ontile(
PLASMA_desc descA,
int i1,
int i2,
const int *ipiv,
int inc);
241 int CORE_dlaswpc_ontile(
PLASMA_desc descA,
int i1,
int i2,
const int *ipiv,
int inc);
242 int CORE_dlatro(PLASMA_enum uplo, PLASMA_enum trans,
244 const double *A,
int LDA,
246 void CORE_dlauum(PLASMA_enum uplo,
int N,
double *A,
int LDA);
247 int CORE_dpamm(
int op, PLASMA_enum side, PLASMA_enum storev,
248 int M,
int N,
int K,
int L,
249 const double *A1,
int LDA1,
250 double *A2,
int LDA2,
251 const double *V,
int LDV,
253 int CORE_dparfb(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev,
254 int M1,
int N1,
int M2,
int N2,
int K,
int L,
255 double *A1,
int LDA1,
256 double *A2,
int LDA2,
257 const double *V,
int LDV,
258 const double *T,
int LDT,
259 double *WORK,
int LDWORK);
260 int CORE_dpemv(PLASMA_enum trans, PLASMA_enum storev,
263 const double *A,
int LDA,
264 const double *X,
int INCX,
268 void CORE_dplgsy(
double bump,
int m,
int n,
double *A,
int lda,
269 int bigM,
int m0,
int n0,
unsigned long long int seed );
270 void CORE_dplgsy(
double bump,
int m,
int n,
double *A,
int lda,
271 int bigM,
int m0,
int n0,
unsigned long long int seed );
272 void CORE_dplrnt(
int m,
int n,
double *A,
int lda,
273 int bigM,
int m0,
int n0,
unsigned long long int seed );
274 int CORE_dpltmg(PLASMA_enum mtxtype,
int m,
int n,
double *A,
int lda,
275 int gM,
int gN,
int m0,
int n0,
unsigned long long int seed );
276 int CORE_dpltmg_chebvand(
int M,
int N,
double *A,
int LDA,
277 int gN,
int m0,
int n0,
279 int CORE_dpltmg_circul(
int M,
int N,
double *A,
int LDA,
280 int gM,
int m0,
int n0,
282 void CORE_dpltmg_condexq(
int M,
int N,
double *Q,
int LDQ );
283 void CORE_dpltmg_fiedler(
int m,
int n,
284 const double *X,
int incX,
285 const double *Y,
int incY,
287 int CORE_dpltmg_hankel( PLASMA_enum uplo,
int M,
int N,
double *A,
int LDA,
288 int m0,
int n0,
int nb,
291 void CORE_dpltmg_toeppd1(
int gM,
int m0,
int M,
double *W,
292 unsigned long long int seed );
293 void CORE_dpltmg_toeppd2(
int M,
int N,
int K,
int m0,
int n0,
295 double *A,
int LDA );
296 void CORE_dpotrf(PLASMA_enum uplo,
int N,
double *A,
int LDA,
int *INFO);
297 void CORE_dsetvar(
const double *alpha,
double *x);
298 void CORE_dshift(
int s,
int m,
int n,
int L,
300 void CORE_dshiftw(
int s,
int cl,
int m,
int n,
int L,
301 double *A,
double *W);
302 int CORE_dssssm(
int M1,
int N1,
int M2,
int N2,
int K,
int IB,
303 double *A1,
int LDA1,
304 double *A2,
int LDA2,
305 const double *L1,
int LDL1,
306 const double *L2,
int LDL2,
308 void CORE_dsymm(PLASMA_enum side, PLASMA_enum uplo,
310 double alpha,
const double *A,
int LDA,
311 const double *B,
int LDB,
312 double beta,
double *C,
int LDC);
313 void CORE_dsyrk(PLASMA_enum uplo, PLASMA_enum trans,
315 double alpha,
const double *A,
int LDA,
316 double beta,
double *C,
int LDC);
317 void CORE_dsyr2k(PLASMA_enum uplo, PLASMA_enum trans,
319 double alpha,
const double *A,
int LDA,
320 const double *B,
int LDB,
321 double beta,
double *C,
int LDC);
322 int CORE_dsyssq(PLASMA_enum uplo,
int N,
323 const double *A,
int LDA,
324 double *scale,
double *sumsq);
325 void CORE_dswpab(
int i,
int n1,
int n2,
326 double *A,
double *work);
327 int CORE_dswptr_ontile(
PLASMA_desc descA,
int i1,
int i2,
const int *ipiv,
int inc,
328 const double *Akk,
int ldak);
329 void CORE_dtrdalg1(
int n,
335 int Vblksiz,
int wantz,
336 int i,
int sweepid,
int m,
int grsiz,
338 void CORE_dtrmm(PLASMA_enum side, PLASMA_enum uplo,
339 PLASMA_enum transA, PLASMA_enum diag,
341 double alpha,
const double *A,
int LDA,
343 void CORE_dtrsm(PLASMA_enum side, PLASMA_enum uplo,
344 PLASMA_enum transA, PLASMA_enum diag,
346 double alpha,
const double *A,
int LDA,
348 void CORE_dtrtri(PLASMA_enum uplo, PLASMA_enum diag,
int N,
349 double *A,
int LDA,
int *info);
350 int CORE_dtslqt(
int M,
int N,
int IB,
351 double *A1,
int LDA1,
352 double *A2,
int LDA2,
354 double *TAU,
double *WORK);
355 int CORE_dtsmlq(PLASMA_enum side, PLASMA_enum trans,
356 int M1,
int N1,
int M2,
int N2,
int K,
int IB,
357 double *A1,
int LDA1,
358 double *A2,
int LDA2,
359 const double *V,
int LDV,
360 const double *T,
int LDT,
361 double *WORK,
int LDWORK);
362 int CORE_dtsmlq_corner(
int m1,
int n1,
int m2,
int n2,
int m3,
int n3,
363 int k,
int ib,
int nb,
364 double *A1,
int lda1,
365 double *A2,
int lda2,
366 double *A3,
int lda3,
367 const double *V,
int ldv,
368 const double *T,
int ldt,
369 double *WORK,
int ldwork);
370 int CORE_dtsmlq_sytra1( PLASMA_enum side, PLASMA_enum trans,
371 int m1,
int n1,
int m2,
int n2,
373 double *A1,
int lda1,
374 double *A2,
int lda2,
375 const double *V,
int ldv,
376 const double *T,
int ldt,
377 double *WORK,
int ldwork);
378 int CORE_dtsmqr(PLASMA_enum side, PLASMA_enum trans,
379 int M1,
int N1,
int M2,
int N2,
int K,
int IB,
380 double *A1,
int LDA1,
381 double *A2,
int LDA2,
382 const double *V,
int LDV,
383 const double *T,
int LDT,
384 double *WORK,
int LDWORK);
385 int CORE_dtsmqr_corner(
int m1,
int n1,
int m2,
int n2,
int m3,
int n3,
386 int k,
int ib,
int nb,
387 double *A1,
int lda1,
388 double *A2,
int lda2,
389 double *A3,
int lda3,
390 const double *V,
int ldv,
391 const double *T,
int ldt,
392 double *WORK,
int ldwork);
393 int CORE_dtsmqr_sytra1( PLASMA_enum side, PLASMA_enum trans,
394 int m1,
int n1,
int m2,
int n2,
396 double *A1,
int lda1,
397 double *A2,
int lda2,
398 const double *V,
int ldv,
399 const double *T,
int ldt,
400 double *WORK,
int ldwork);
401 int CORE_dtsqrt(
int M,
int N,
int IB,
402 double *A1,
int LDA1,
403 double *A2,
int LDA2,
405 double *TAU,
double *WORK);
406 int CORE_dtstrf(
int M,
int N,
int IB,
int NB,
410 int *IPIV,
double *WORK,
411 int LDWORK,
int *INFO);
412 int CORE_dttmqr(PLASMA_enum side, PLASMA_enum trans,
413 int M1,
int N1,
int M2,
int N2,
int K,
int IB,
414 double *A1,
int LDA1,
415 double *A2,
int LDA2,
416 const double *V,
int LDV,
417 const double *T,
int LDT,
418 double *WORK,
int LDWORK);
419 int CORE_dttqrt(
int M,
int N,
int IB,
420 double *A1,
int LDA1,
421 double *A2,
int LDA2,
425 int CORE_dttmlq(PLASMA_enum side, PLASMA_enum trans,
426 int M1,
int N1,
int M2,
int N2,
int K,
int IB,
427 double *A1,
int LDA1,
428 double *A2,
int LDA2,
429 const double *V,
int LDV,
430 const double *T,
int LDT,
431 double *WORK,
int LDWORK);
432 int CORE_dttlqt(
int M,
int N,
int IB,
433 double *A1,
int LDA1,
434 double *A2,
int LDA2,
438 int CORE_dormlq(PLASMA_enum side, PLASMA_enum trans,
439 int M,
int N,
int IB,
int K,
440 const double *V,
int LDV,
441 const double *T,
int LDT,
443 double *WORK,
int LDWORK);
444 int CORE_dormqr(PLASMA_enum side, PLASMA_enum trans,
445 int M,
int N,
int K,
int IB,
446 const double *V,
int LDV,
447 const double *T,
int LDT,
449 double *WORK,
int LDWORK);
455 void QUARK_CORE_dasum(Quark *quark, Quark_Task_Flags *task_flags,
456 PLASMA_enum storev, PLASMA_enum uplo,
int m,
int n,
457 const double *A,
int lda,
int szeA,
458 double *work,
int szeW);
459 void QUARK_CORE_dasum_f1(Quark *quark, Quark_Task_Flags *task_flags,
460 PLASMA_enum storev, PLASMA_enum uplo,
int m,
int n,
461 const double *A,
int lda,
int szeA,
462 double *work,
int szeW,
463 double *fake,
int szeF);
464 void QUARK_CORE_dgeadd(Quark *quark, Quark_Task_Flags *task_flags,
465 int m,
int n,
int nb,
double alpha,
466 const double *A,
int lda,
468 void QUARK_CORE_dbrdalg1(Quark *quark, Quark_Task_Flags *task_flags,
477 int Vblksiz,
int wantz,
478 int i,
int sweepid,
int m,
int grsiz,
479 int *PCOL,
int *ACOL,
int *MCOL);
480 void QUARK_CORE_dgelqt(Quark *quark, Quark_Task_Flags *task_flags,
481 int m,
int n,
int ib,
int nb,
484 void QUARK_CORE_dgemm(Quark *quark, Quark_Task_Flags *task_flags,
485 PLASMA_enum transA, PLASMA_enum transB,
486 int m,
int n,
int k,
int nb,
487 double alpha,
const double *A,
int lda,
488 const double *B,
int ldb,
489 double beta,
double *C,
int ldc);
490 void QUARK_CORE_dgemm2( Quark *quark, Quark_Task_Flags *task_flags,
491 PLASMA_enum transA, PLASMA_enum transB,
492 int m,
int n,
int k,
int nb,
493 double alpha,
const double *A,
int lda,
494 const double *B,
int ldb,
495 double beta,
double *C,
int ldc);
496 void QUARK_CORE_dgemm_f2(Quark *quark, Quark_Task_Flags *task_flags,
497 PLASMA_enum transA, PLASMA_enum transB,
498 int m,
int n,
int k,
int nb,
499 double alpha,
const double *A,
int lda,
500 const double *B,
int ldb,
501 double beta,
double *C,
int ldc,
502 double *fake1,
int szefake1,
int flag1,
503 double *fake2,
int szefake2,
int flag2);
504 void QUARK_CORE_dgemm_p2(Quark *quark, Quark_Task_Flags *task_flags,
505 PLASMA_enum transA, PLASMA_enum transB,
506 int m,
int n,
int k,
int nb,
507 double alpha,
const double *A,
int lda,
508 const double **B,
int ldb,
509 double beta,
double *C,
int ldc);
510 void QUARK_CORE_dgemm_p2f1(Quark *quark, Quark_Task_Flags *task_flags,
511 PLASMA_enum transA, PLASMA_enum transB,
512 int m,
int n,
int k,
int nb,
513 double alpha,
const double *A,
int lda,
514 const double **B,
int ldb,
515 double beta,
double *C,
int ldc,
516 double *fake1,
int szefake1,
int flag1);
517 void QUARK_CORE_dgemm_p3(Quark *quark, Quark_Task_Flags *task_flags,
518 PLASMA_enum transA, PLASMA_enum transB,
519 int m,
int n,
int k,
int nb,
520 double alpha,
const double *A,
int lda,
521 const double *B,
int ldb,
522 double beta,
double **C,
int ldc);
523 void QUARK_CORE_dgemm_tile(Quark *quark, Quark_Task_Flags *task_flags,
524 PLASMA_enum transA, PLASMA_enum transB,
525 int m,
int n,
int k,
int nb,
526 const double *alpha,
const double *A,
int lda,
527 const double *B,
int ldb,
528 const double *beta,
double *C,
int ldc,
531 const double *Clock);
532 void QUARK_CORE_dgemv(Quark *quark, Quark_Task_Flags *task_flags,
533 PLASMA_enum trans,
int m,
int n,
534 double alpha,
const double *A,
int lda,
535 const double *x,
int incx,
536 double beta,
double *y,
int incy);
537 void QUARK_CORE_dgemv_tile(Quark *quark, Quark_Task_Flags *task_flags,
540 const double *alpha,
const double *A,
int lda,
541 const double *x,
int incx,
542 const double *beta,
double *y,
int incy,
545 const double *ylock);
546 void QUARK_CORE_dgeqp3_init( Quark *quark, Quark_Task_Flags *task_flags,
548 void QUARK_CORE_dgeqp3_larfg(Quark *quark, Quark_Task_Flags *task_flags,
550 double *tau,
double *beta );
551 void QUARK_CORE_dgeqp3_norms( Quark *quark, Quark_Task_Flags *task_flags,
552 PLASMA_desc A,
int ioff,
int joff,
double *norms1,
double *norms2 );
553 void QUARK_CORE_dgeqp3_pivot( Quark *quark, Quark_Task_Flags *task_flags,
556 int jj,
int k,
int *jpvt,
557 double *norms1,
double *norms2,
int *info );
558 void QUARK_CORE_dgeqp3_tntpiv(Quark *quark, Quark_Task_Flags *task_flags,
559 int m,
int n,
int nb,
563 PLASMA_bool check_info,
int iinfo);
564 void QUARK_CORE_dgeqp3_update( Quark *quark, Quark_Task_Flags *task_flags,
565 double *Ajj,
int lda1,
566 double *Ajk,
int lda2,
568 int joff,
int k,
int koff,
int nb,
569 double *norms1,
double *norms2,
int *info );
570 void QUARK_CORE_dgeqrt(Quark *quark, Quark_Task_Flags *task_flags,
571 int m,
int n,
int ib,
int nb,
574 void QUARK_CORE_dgessm(Quark *quark, Quark_Task_Flags *task_flags,
575 int m,
int n,
int k,
int ib,
int nb,
577 const double *L,
int ldl,
579 void QUARK_CORE_dgessq_f1( Quark *quark, Quark_Task_Flags *task_flags,
580 int m,
int n,
const double *A,
int lda,
581 double *scale,
double *sumsq,
582 double *fake,
int szeF,
int paramF );
583 void QUARK_CORE_dgetrf(Quark *quark, Quark_Task_Flags *task_flags,
584 int m,
int n,
int nb,
588 PLASMA_bool check_info,
int iinfo);
589 void QUARK_CORE_dgetrf_incpiv(Quark *quark, Quark_Task_Flags *task_flags,
590 int m,
int n,
int ib,
int nb,
594 PLASMA_bool check_info,
int iinfo);
595 void QUARK_CORE_dgetrf_nopiv(Quark *quark, Quark_Task_Flags *task_flags,
596 int m,
int n,
int ib,
int nb,
600 void QUARK_CORE_dgetrf_reclap(Quark *quark, Quark_Task_Flags *task_flags,
601 int m,
int n,
int nb,
605 PLASMA_bool check_info,
int iinfo,
607 void QUARK_CORE_dgetrf_rectil(Quark *quark, Quark_Task_Flags *task_flags,
611 PLASMA_bool check_info,
int iinfo,
613 void QUARK_CORE_dgetrip(Quark *quark, Quark_Task_Flags *task_flags,
614 int m,
int n,
double *A,
int szeA);
615 void QUARK_CORE_dgetrip_f1(Quark *quark, Quark_Task_Flags *task_flags,
616 int m,
int n,
double *A,
int szeA,
617 double *fake,
int szeF,
int paramF);
618 void QUARK_CORE_dgetrip_f2(Quark *quark, Quark_Task_Flags *task_flags,
619 int m,
int n,
double *A,
int szeA,
620 double *fake1,
int szeF1,
int paramF1,
621 double *fake2,
int szeF2,
int paramF2);
622 void QUARK_CORE_dsymm(Quark *quark, Quark_Task_Flags *task_flags,
623 PLASMA_enum side, PLASMA_enum uplo,
624 int m,
int n,
int nb,
625 double alpha,
const double *A,
int lda,
626 const double *B,
int ldb,
627 double beta,
double *C,
int ldc);
628 void QUARK_CORE_dsygst(Quark *quark, Quark_Task_Flags *task_flags,
629 int itype, PLASMA_enum uplo,
int N,
634 void QUARK_CORE_dsyrk(Quark *quark, Quark_Task_Flags *task_flags,
635 PLASMA_enum uplo, PLASMA_enum trans,
636 int n,
int k,
int nb,
637 double alpha,
const double *A,
int lda,
638 double beta,
double *C,
int ldc);
639 void QUARK_CORE_dsyr2k(Quark *quark, Quark_Task_Flags *task_flags,
640 PLASMA_enum uplo, PLASMA_enum trans,
641 int n,
int k,
int nb,
642 double alpha,
const double *A,
int lda,
643 const double *B,
int LDB,
644 double beta,
double *C,
int ldc);
645 void QUARK_CORE_dsyrfb(Quark *quark, Quark_Task_Flags *task_flags,
647 int n,
int k,
int ib,
int nb,
648 const double *A,
int lda,
649 const double *T,
int ldt,
651 void QUARK_CORE_dhessq_f1( Quark *quark, Quark_Task_Flags *task_flags,
652 PLASMA_enum uplo,
int n,
const double *A,
int lda,
653 double *scale,
double *sumsq,
654 double *fake,
int szeF,
int paramF );
655 void QUARK_CORE_dlacpy(Quark *quark, Quark_Task_Flags *task_flags,
656 PLASMA_enum uplo,
int m,
int n,
int mb,
657 const double *A,
int lda,
659 void QUARK_CORE_dlacpy_f1(Quark *quark, Quark_Task_Flags *task_flags,
660 PLASMA_enum uplo,
int m,
int n,
int nb,
661 const double *A,
int lda,
663 double *fake1,
int szefake1,
int flag1);
664 void QUARK_CORE_dlacpy_pivot(Quark *quark, Quark_Task_Flags *task_flags,
667 int k1,
int k2,
const int *ipiv,
668 int *rankin,
int *rankout,
671 void QUARK_CORE_dlange(Quark *quark, Quark_Task_Flags *task_flags,
672 int norm,
int M,
int N,
673 const double *A,
int LDA,
int szeA,
674 int szeW,
double *result);
675 void QUARK_CORE_dlange_f1(Quark *quark, Quark_Task_Flags *task_flags,
676 int norm,
int M,
int N,
677 const double *A,
int LDA,
int szeA,
678 int szeW,
double *result,
679 double *fake,
int szeF);
681 void QUARK_CORE_dlansy(Quark *quark, Quark_Task_Flags *task_flags,
682 int norm, PLASMA_enum uplo,
int N,
683 const double *A,
int LDA,
int szeA,
684 int szeW,
double *result);
685 void QUARK_CORE_dlansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
686 int norm, PLASMA_enum uplo,
int N,
687 const double *A,
int LDA,
int szeA,
688 int szeW,
double *result,
689 double *fake,
int szeF);
691 void QUARK_CORE_dlansy(Quark *quark, Quark_Task_Flags *task_flags,
692 int norm, PLASMA_enum uplo,
int N,
693 const double *A,
int LDA,
int szeA,
694 int szeW,
double *result);
695 void QUARK_CORE_dlansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
696 int norm, PLASMA_enum uplo,
int N,
697 const double *A,
int LDA,
int szeA,
698 int szeW,
double *result,
699 double *fake,
int szeF);
700 void QUARK_CORE_dlaset(Quark *quark, Quark_Task_Flags *task_flags,
701 PLASMA_enum uplo,
int n1,
int n2,
double alpha,
702 double beta,
double *tileA,
int ldtilea);
703 void QUARK_CORE_dlaset2(Quark *quark, Quark_Task_Flags *task_flags,
704 PLASMA_enum uplo,
int n1,
int n2,
double alpha,
705 double *tileA,
int ldtilea);
706 void QUARK_CORE_dlaswp(Quark *quark, Quark_Task_Flags *task_flags,
707 int n,
double *A,
int lda,
708 int i1,
int i2,
const int *ipiv,
int inc);
709 void QUARK_CORE_dlaswp_f2(Quark *quark, Quark_Task_Flags *task_flags,
710 int n,
double *A,
int lda,
711 int i1,
int i2,
const int *ipiv,
int inc,
712 double *fake1,
int szefake1,
int flag1,
713 double *fake2,
int szefake2,
int flag2);
714 void QUARK_CORE_dlaswp_ontile(Quark *quark, Quark_Task_Flags *task_flags,
716 int i1,
int i2,
const int *ipiv,
int inc,
double *fakepanel);
717 void QUARK_CORE_dlaswp_ontile_f2(Quark *quark, Quark_Task_Flags *task_flags,
719 int i1,
int i2,
const int *ipiv,
int inc,
720 double *fake1,
int szefake1,
int flag1,
721 double *fake2,
int szefake2,
int flag2);
722 void QUARK_CORE_dlaswpc_ontile(Quark *quark, Quark_Task_Flags *task_flags,
724 int i1,
int i2,
const int *ipiv,
int inc,
double *fakepanel);
725 void QUARK_CORE_dlatro(Quark *quark, Quark_Task_Flags *task_flags,
726 PLASMA_enum uplo, PLASMA_enum trans,
int m,
int n,
int mb,
727 const double *A,
int lda,
729 void QUARK_CORE_dlatro_f1(Quark *quark, Quark_Task_Flags *task_flags,
730 PLASMA_enum uplo, PLASMA_enum trans,
int m,
int n,
int mb,
731 const double *A,
int lda,
733 double *fake1,
int szefake1,
int flag1);
734 void QUARK_CORE_dlauum(Quark *quark, Quark_Task_Flags *task_flags,
735 PLASMA_enum uplo,
int n,
int nb,
737 void QUARK_CORE_dplgsy(Quark *quark, Quark_Task_Flags *task_flags,
738 double bump,
int m,
int n,
double *A,
int lda,
739 int bigM,
int m0,
int n0,
unsigned long long int seed );
740 void QUARK_CORE_dplgsy(Quark *quark, Quark_Task_Flags *task_flags,
741 double bump,
int m,
int n,
double *A,
int lda,
742 int bigM,
int m0,
int n0,
unsigned long long int seed );
743 void QUARK_CORE_dplrnt(Quark *quark, Quark_Task_Flags *task_flags,
744 int m,
int n,
double *A,
int lda,
745 int bigM,
int m0,
int n0,
unsigned long long int seed );
746 void QUARK_CORE_dpltmg(Quark *quark, Quark_Task_Flags *task_flags,
747 PLASMA_enum mtxtype,
int m,
int n,
double *A,
int lda,
748 int gM,
int gN,
int m0,
int n0,
unsigned long long int seed );
749 void QUARK_CORE_dpltmg_chebvand( Quark *quark, Quark_Task_Flags *task_flags,
750 int M,
int N,
double *A,
int LDA,
751 int gN,
int m0,
int n0,
753 void QUARK_CORE_dpltmg_circul( Quark *quark, Quark_Task_Flags *task_flags,
754 int M,
int N,
double *A,
int LDA,
755 int gM,
int m0,
int n0,
757 void QUARK_CORE_dpltmg_fiedler(Quark *quark, Quark_Task_Flags *task_flags,
759 const double *X,
int incX,
760 const double *Y,
int incY,
762 void QUARK_CORE_dpltmg_hankel( Quark *quark, Quark_Task_Flags *task_flags,
763 PLASMA_enum uplo,
int M,
int N,
double *A,
int LDA,
764 int m0,
int n0,
int nb,
767 void QUARK_CORE_dpltmg_toeppd1(Quark *quark, Quark_Task_Flags *task_flags,
768 int gM,
int m0,
int M,
770 unsigned long long int seed);
771 void QUARK_CORE_dpltmg_toeppd2(Quark *quark, Quark_Task_Flags *task_flags,
772 int M,
int N,
int K,
int m0,
int n0,
774 double *A,
int LDA );
775 void QUARK_CORE_dpotrf(Quark *quark, Quark_Task_Flags *task_flags,
776 PLASMA_enum uplo,
int n,
int nb,
780 void QUARK_CORE_dsetvar(Quark *quark, Quark_Task_Flags *task_flags,
781 const double *alpha,
double *x,
783 void QUARK_CORE_dshift( Quark *quark, Quark_Task_Flags *task_flags,
784 int s,
int m,
int n,
int L,
786 void QUARK_CORE_dshiftw(Quark *quark, Quark_Task_Flags *task_flags,
787 int s,
int cl,
int m,
int n,
int L,
788 double *A,
double *W);
789 void QUARK_CORE_dssssm(Quark *quark, Quark_Task_Flags *task_flags,
790 int m1,
int n1,
int m2,
int n2,
int k,
int ib,
int nb,
791 double *A1,
int lda1,
792 double *A2,
int lda2,
793 const double *L1,
int ldl1,
794 const double *L2,
int ldl2,
796 void QUARK_CORE_dsymm(Quark *quark, Quark_Task_Flags *task_flags,
797 PLASMA_enum side, PLASMA_enum uplo,
798 int m,
int n,
int nb,
799 double alpha,
const double *A,
int lda,
800 const double *B,
int ldb,
801 double beta,
double *C,
int ldc);
802 void QUARK_CORE_dsyrk(Quark *quark, Quark_Task_Flags *task_flags,
803 PLASMA_enum uplo, PLASMA_enum trans,
804 int n,
int k,
int nb,
805 double alpha,
const double *A,
int lda,
806 double beta,
double *C,
int ldc);
807 void QUARK_CORE_dsyr2k(Quark *quark, Quark_Task_Flags *task_flags,
808 PLASMA_enum uplo, PLASMA_enum trans,
809 int n,
int k,
int nb,
810 double alpha,
const double *A,
int lda,
811 const double *B,
int LDB,
812 double beta,
double *C,
int ldc);
813 void QUARK_CORE_dsyssq_f1( Quark *quark, Quark_Task_Flags *task_flags,
814 PLASMA_enum uplo,
int n,
const double *A,
int lda,
815 double *scale,
double *sumsq,
816 double *fake,
int szeF,
int paramF );
817 void QUARK_CORE_dswpab(Quark *quark, Quark_Task_Flags *task_flags,
818 int i,
int n1,
int n2,
819 double *A,
int szeA);
820 void QUARK_CORE_dswptr_ontile(Quark *quark, Quark_Task_Flags *task_flags,
822 int i1,
int i2,
const int *ipiv,
int inc,
823 const double *Akk,
int ldak);
824 void QUARK_CORE_dtrdalg1(Quark *quark, Quark_Task_Flags *task_flags,
831 int Vblksiz,
int wantz,
832 int i,
int sweepid,
int m,
int grsiz,
833 int *PCOL,
int *ACOL,
int *MCOL);
834 void QUARK_CORE_dtrmm(Quark *quark, Quark_Task_Flags *task_flags,
835 PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
836 int m,
int n,
int nb,
837 double alpha,
const double *A,
int lda,
839 void QUARK_CORE_dtrmm_p2(Quark *quark, Quark_Task_Flags *task_flags,
840 PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
841 int m,
int n,
int nb,
842 double alpha,
const double *A,
int lda,
843 double **B,
int ldb);
844 void QUARK_CORE_dtrsm(Quark *quark, Quark_Task_Flags *task_flags,
845 PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
846 int m,
int n,
int nb,
847 double alpha,
const double *A,
int lda,
849 void QUARK_CORE_dtrtri(Quark *quark, Quark_Task_Flags *task_flags,
850 PLASMA_enum uplo, PLASMA_enum diag,
int n,
int nb,
854 void QUARK_CORE_dtslqt(Quark *quark, Quark_Task_Flags *task_flags,
855 int m,
int n,
int ib,
int nb,
856 double *A1,
int lda1,
857 double *A2,
int lda2,
859 void QUARK_CORE_dtsmlq(Quark *quark, Quark_Task_Flags *task_flags,
860 PLASMA_enum side, PLASMA_enum trans,
861 int m1,
int n1,
int m2,
int n2,
int k,
int ib,
int nb,
862 double *A1,
int lda1,
863 double *A2,
int lda2,
864 const double *V,
int ldv,
865 const double *T,
int ldt);
866 void QUARK_CORE_dtsmlq_sytra1(Quark *quark, Quark_Task_Flags *task_flags,
867 PLASMA_enum side, PLASMA_enum trans,
868 int m1,
int n1,
int m2,
int n2,
int k,
int ib,
int nb,
869 double *A1,
int lda1,
870 double *A2,
int lda2,
871 const double *V,
int ldv,
872 const double *T,
int ldt);
873 void QUARK_CORE_dtsmlq_corner(Quark *quark, Quark_Task_Flags *task_flags,
874 int m1,
int n1,
int m2,
int n2,
int m3,
int n3,
int k,
int ib,
int nb,
875 double *A1,
int lda1,
876 double *A2,
int lda2,
877 double *A3,
int lda3,
878 const double *V,
int ldv,
879 const double *T,
int ldt);
880 void QUARK_CORE_dtsmqr(Quark *quark, Quark_Task_Flags *task_flags,
881 PLASMA_enum side, PLASMA_enum trans,
882 int m1,
int n1,
int m2,
int n2,
int k,
int ib,
int nb,
883 double *A1,
int lda1,
884 double *A2,
int lda2,
885 const double *V,
int ldv,
886 const double *T,
int ldt);
887 void QUARK_CORE_dtsmqr_sytra1(Quark *quark, Quark_Task_Flags *task_flags,
888 PLASMA_enum side, PLASMA_enum trans,
889 int m1,
int n1,
int m2,
int n2,
int k,
int ib,
int nb,
890 double *A1,
int lda1,
891 double *A2,
int lda2,
892 const double *V,
int ldv,
893 const double *T,
int ldt);
894 void QUARK_CORE_dtsmqr_corner(Quark *quark, Quark_Task_Flags *task_flags,
895 int m1,
int n1,
int m2,
int n2,
int m3,
int n3,
int k,
int ib,
int nb,
896 double *A1,
int lda1,
897 double *A2,
int lda2,
898 double *A3,
int lda3,
899 const double *V,
int ldv,
900 const double *T,
int ldt);
901 void QUARK_CORE_dtsqrt(Quark *quark, Quark_Task_Flags *task_flags,
902 int m,
int n,
int ib,
int nb,
903 double *A1,
int lda1,
904 double *A2,
int lda2,
906 void QUARK_CORE_dtstrf(Quark *quark, Quark_Task_Flags *task_flags,
907 int m,
int n,
int ib,
int nb,
913 PLASMA_bool check_info,
int iinfo);
914 void QUARK_CORE_dttmqr(Quark *quark, Quark_Task_Flags *task_flags,
915 PLASMA_enum side, PLASMA_enum trans,
916 int m1,
int n1,
int m2,
int n2,
int k,
int ib,
int nb,
917 double *A1,
int lda1,
918 double *A2,
int lda2,
919 const double *V,
int ldv,
920 const double *T,
int ldt);
921 void QUARK_CORE_dttqrt(Quark *quark, Quark_Task_Flags *task_flags,
922 int m,
int n,
int ib,
int nb,
923 double *A1,
int lda1,
924 double *A2,
int lda2,
926 void QUARK_CORE_dttmlq(Quark *quark, Quark_Task_Flags *task_flags,
927 PLASMA_enum side, PLASMA_enum trans,
928 int m1,
int n1,
int m2,
int n2,
int k,
int ib,
int nb,
929 double *A1,
int lda1,
930 double *A2,
int lda2,
931 const double *V,
int ldv,
932 const double *T,
int ldt);
933 void QUARK_CORE_dttlqt(Quark *quark, Quark_Task_Flags *task_flags,
934 int m,
int n,
int ib,
int nb,
935 double *A1,
int lda1,
936 double *A2,
int lda2,
938 void QUARK_CORE_dpamm(Quark *quark, Quark_Task_Flags *task_flags,
939 int op, PLASMA_enum side, PLASMA_enum storev,
940 int m,
int n,
int k,
int l,
941 const double *A1,
int lda1,
942 double *A2,
int lda2,
943 const double *V,
int ldv,
945 void QUARK_CORE_dplssq( Quark *quark, Quark_Task_Flags *task_flags,
946 int m,
const double *A,
double *result );
947 void QUARK_CORE_dormlq(Quark *quark, Quark_Task_Flags *task_flags,
948 PLASMA_enum side, PLASMA_enum trans,
949 int m,
int n,
int ib,
int nb,
int k,
950 const double *A,
int lda,
951 const double *T,
int ldt,
953 void QUARK_CORE_dormqr(Quark *quark, Quark_Task_Flags *task_flags,
954 PLASMA_enum side, PLASMA_enum trans,
955 int m,
int n,
int k,
int ib,
int nb,
956 const double *A,
int lda,
957 const double *T,
int ldt,
963 void CORE_dasum_quark(Quark *quark);
964 void CORE_dasum_f1_quark(Quark *quark);
965 void CORE_dgeadd_quark(Quark *quark);
966 void CORE_dbrdalg1_quark(Quark *quark);
967 void CORE_dgelqt_quark(Quark *quark);
968 void CORE_dgemm_quark(Quark *quark);
969 void CORE_dgemm_tile_quark(Quark *quark);
970 void CORE_dgemv_quark(Quark *quark);
971 void CORE_dgemv_tile_quark(Quark *quark);
972 void CORE_dgeqp3_init_quark(Quark *quark);
973 void CORE_dgeqp3_larfg_quark(Quark *quark);
974 void CORE_dgeqp3_norms_quark(Quark *quark);
975 void CORE_dgeqp3_pivot_quark(Quark *quark);
976 void CORE_dgeqp3_tntpiv_quark(Quark *quark);
977 void CORE_dgeqp3_update_quark(Quark *quark);
978 void CORE_dgeqrt_quark(Quark *quark);
979 void CORE_dgessm_quark(Quark *quark);
980 void CORE_dgessq_quark(Quark *quark);
981 void CORE_dgessq_f1_quark(Quark *quark);
982 void CORE_dgetrf_quark(Quark *quark);
983 void CORE_dgetrf_incpiv_quark(Quark *quark);
984 void CORE_dgetrf_nopiv_quark(Quark* quark);
985 void CORE_dgetrf_reclap_quark(Quark *quark);
986 void CORE_dgetrf_rectil_quark(Quark* quark);
987 void CORE_dgetrip_quark(Quark *quark);
988 void CORE_dgetrip_f1_quark(Quark *quark);
989 void CORE_dgetrip_f2_quark(Quark *quark);
991 void CORE_dsymm_quark(Quark *quark);
992 void CORE_dsyrk_quark(Quark *quark);
993 void CORE_dsyr2k_quark(Quark *quark);
995 void CORE_dsygst_quark(Quark *quark);
996 void CORE_dsyrfb_quark(Quark *quark);
997 void CORE_dhessq_quark(Quark *quark);
998 void CORE_dhessq_f1_quark(Quark *quark);
999 void CORE_dlacpy_quark(Quark *quark);
1000 void CORE_dlacpy_f1_quark(Quark *quark);
1001 void CORE_dlacpy_pivot_quark(Quark *quark);
1002 void CORE_dlatro_quark(Quark *quark);
1003 void CORE_dlatro_f1_quark(Quark *quark);
1004 void CORE_dlange_quark(Quark *quark);
1005 void CORE_dlange_f1_quark(Quark *quark);
1007 void CORE_dlansy_quark(Quark *quark);
1008 void CORE_dlansy_f1_quark(Quark *quark);
1010 void CORE_dlansy_quark(Quark *quark);
1011 void CORE_dlansy_f1_quark(Quark *quark);
1012 void CORE_dlaset_quark(Quark *quark);
1013 void CORE_dlaset2_quark(Quark *quark);
1014 void CORE_dlatro_quark(Quark *quark);
1015 void CORE_dlauum_quark(Quark *quark);
1016 void CORE_dpamm_quark(Quark *quark);
1017 void CORE_dplgsy_quark(Quark *quark);
1018 void CORE_dplgsy_quark(Quark *quark);
1019 void CORE_dplrnt_quark(Quark *quark);
1020 void CORE_dpltmg_quark(Quark *quark);
1021 void CORE_dplssq_quark(Quark *quark);
1022 void CORE_dpotrf_quark(Quark *quark);
1023 void CORE_dsetvar_quark(Quark *quark);
1024 void CORE_dshift_quark(Quark *quark);
1025 void CORE_dshiftw_quark(Quark *quark);
1026 void CORE_dssssm_quark(Quark *quark);
1027 void CORE_dsymm_quark(Quark *quark);
1028 void CORE_dsyrk_quark(Quark *quark);
1029 void CORE_dsyr2k_quark(Quark *quark);
1030 void CORE_dsyssq_quark(Quark *quark);
1031 void CORE_dsyssq_f1_quark(Quark *quark);
1032 void CORE_dswpab_quark(Quark *quark);
1033 void CORE_dswptr_ontile_quark(Quark *quark);
1034 void CORE_dtrdalg1_quark(Quark *quark);
1035 void CORE_dtrmm_quark(Quark *quark);
1036 void CORE_dtrsm_quark(Quark *quark);
1037 void CORE_dtrtri_quark(Quark *quark);
1038 void CORE_dtslqt_quark(Quark *quark);
1039 void CORE_dtsmlq_quark(Quark *quark);
1040 void CORE_dtsmlq_sytra1_quark(Quark *quark);
1041 void CORE_dtsmlq_corner_quark(Quark *quark);
1042 void CORE_dtsmqr_quark(Quark *quark);
1043 void CORE_dtsmqr_sytra1_quark(Quark *quark);
1044 void CORE_dtsmqr_corner_quark(Quark *quark);
1045 void CORE_dtsqrt_quark(Quark *quark);
1046 void CORE_dtstrf_quark(Quark *quark);
1047 void CORE_dttmqr_quark(Quark *quark);
1048 void CORE_dttqrt_quark(Quark *quark);
1049 void CORE_dttmlq_quark(Quark *quark);
1050 void CORE_dttlqt_quark(Quark *quark);
1051 void CORE_dormlq_quark(Quark *quark);
1052 void CORE_dormqr_quark(Quark *quark);
1053 void CORE_dlaswp_quark(Quark* quark);
1054 void CORE_dlaswp_f2_quark(Quark* quark);
1055 void CORE_dlaswp_ontile_quark(Quark *quark);
1056 void CORE_dlaswp_ontile_f2_quark(Quark *quark);
1057 void CORE_dlaswpc_ontile_quark(Quark *quark);
1058 void CORE_dtrmm_p2_quark(Quark* quark);
1059 void CORE_dgemm_f2_quark(Quark* quark);
1060 void CORE_dgemm_p2_quark(Quark* quark);
1061 void CORE_dgemm_p2f1_quark(Quark* quark);
1062 void CORE_dgemm_p3_quark(Quark* quark);