PLASMA  2.8.0
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
core_dblas.h
1 
18 #ifndef _PLASMA_CORE_DBLAS_H_
19 #define _PLASMA_CORE_DBLAS_H_
20 
21 #define REAL
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
28 
32 void CORE_dasum(int storev, PLASMA_enum uplo, int M, int N,
33  const double *A, int lda, double *work);
34 void CORE_dbrdalg1( PLASMA_enum uplo,
35  int n,
36  int nb,
37  double *A,
38  int lda,
39  double *VQ,
40  double *TAUQ,
41  double *VP,
42  double *TAUP,
43  int Vblksiz, int wantz,
44  int i, int sweepid, int m, int grsiz,
45  double *work);
46 int CORE_dgbelr(PLASMA_enum uplo, int N,
47  PLASMA_desc *A, double *V, double *TAU,
48  int st, int ed, int eltsize);
49 int CORE_dgbrce(PLASMA_enum uplo, int N,
50  PLASMA_desc *A, double *V, double *TAU,
51  int st, int ed, int eltsize);
52 int CORE_dgblrx(PLASMA_enum uplo, int N,
53  PLASMA_desc *A, double *V, double *TAU,
54  int st, int ed, int eltsize);
55 int CORE_dgeadd(PLASMA_enum trans, int M, int N,
56  double alpha,
57  const double *A, int LDA,
58  double beta,
59  double *B, int LDB);
60 int CORE_dgelqt(int M, int N, int IB,
61  double *A, int LDA,
62  double *T, int LDT,
63  double *TAU,
64  double *WORK);
65 void CORE_dgemm(PLASMA_enum transA, PLASMA_enum transB,
66  int M, int N, int K,
67  double alpha, const double *A, int LDA,
68  const double *B, int LDB,
69  double beta, double *C, int LDC);
70 void CORE_dgemv(PLASMA_enum trans, int M, int N,
71  double alpha, const double *A, int LDA,
72  const double *x, int incx,
73  double beta, double *y, int incy);
74 void CORE_dgeqp3_init( int n, int *jpvt );
75 void CORE_dgeqp3_larfg( PLASMA_desc A, int ii, int jj, int i, int j,
76  double *tau, double *beta );
77 void CORE_dgeqp3_norms( PLASMA_desc A, int ioff, int joff, double *norms1, double *norms2 );
78 void CORE_dgeqp3_pivot( PLASMA_desc A, double *F, int ldf,
79  int jj, int k, int *jpvt,
80  double *norms1, double *norms2, int *info );
81 int CORE_dgeqp3_tntpiv(int m, int n,
82  double *A, int lda,
83  int *IPIV, double *tau,
84  int *iwork);
85 void CORE_dgeqp3_update( const double *Ajj, int lda1,
86  double *Ajk, int lda2,
87  const double *Fk, int ldf,
88  int joff, int k, int koff, int nb,
89  double *norms1, double *norms2,
90  int *info );
91 int CORE_dgeqrt(int M, int N, int IB,
92  double *A, int LDA,
93  double *T, int LDT,
94  double *TAU, double *WORK);
95 int CORE_dgessm(int M, int N, int K, int IB,
96  const int *IPIV,
97  const double *L, int LDL,
98  double *A, int LDA);
99 int CORE_dgessq(int M, int N,
100  const double *A, int LDA,
101  double *scale, double *sumsq);
102 int CORE_dgetf2_nopiv(int m, int n,
103  double *A, int lda);
104 int CORE_dgetrf(int M, int N,
105  double *A, int LDA,
106  int *IPIV, int *INFO);
107 int CORE_dgetrf_incpiv(int M, int N, int IB,
108  double *A, int LDA,
109  int *IPIV, int *INFO);
110 int CORE_dgetrf_nopiv(int m, int n, int ib,
111  double *A, int lda);
112 int CORE_dgetrf_reclap(CORE_dgetrf_data_t *data, int M, int N,
113  double *A, int LDA,
114  int *IPIV, int *info);
115 CORE_dgetrf_data_t *CORE_dgetrf_reclap_init(int nbthrd);
116 int CORE_dgetrf_rectil(CORE_dgetrf_data_t *data, const PLASMA_desc A, int *IPIV, int *info);
117 CORE_dgetrf_data_t *CORE_dgetrf_rectil_init(int nbthrd);
118 void CORE_dgetrip(int m, int n, double *A,
119  double *work);
120 int CORE_dhbelr(PLASMA_enum uplo, int N,
121  PLASMA_desc *A, double *V, double *TAU,
122  int st, int ed, int eltsize);
123 int CORE_dhblrx(PLASMA_enum uplo, int N,
124  PLASMA_desc *A, double *V, double *TAU,
125  int st, int ed, int eltsize);
126 int CORE_dhbrce(PLASMA_enum uplo, int N,
127  PLASMA_desc *A, double *V, double *TAU,
128  int st, int ed, int eltsize);
129 void CORE_dsbtype1cb(int N, int NB,
130  double *A, int LDA,
131  double *V, double *TAU,
132  int st, int ed, int sweep, int Vblksiz, int WANTZ,
133  double *WORK);
134 void CORE_dsbtype2cb(int N, int NB,
135  double *A, int LDA,
136  double *V, double *TAU,
137  int st, int ed, int sweep, int Vblksiz, int WANTZ,
138  double *WORK);
139 void CORE_dsbtype3cb(int N, int NB,
140  double *A, int LDA,
141  const double *V, const double *TAU,
142  int st, int ed, int sweep, int Vblksiz, int WANTZ,
143  double *WORK);
144 void CORE_dgbtype1cb(PLASMA_enum uplo, int N, int NB,
145  double *A, int LDA,
146  double *VQ, double *TAUQ,
147  double *VP, double *TAUP,
148  int st, int ed, int sweep, int Vblksiz, int WANTZ,
149  double *WORK);
150 void CORE_dgbtype2cb(PLASMA_enum uplo, int N, int NB,
151  double *A, int LDA,
152  double *VQ, double *TAUQ,
153  double *VP, double *TAUP,
154  int st, int ed, int sweep, int Vblksiz, int WANTZ,
155  double *WORK);
156 void CORE_dgbtype3cb(PLASMA_enum uplo, int N, int NB,
157  double *A, int LDA,
158  double *VQ, double *TAUQ,
159  double *VP, double *TAUP,
160  int st, int ed, int sweep, int Vblksiz, int WANTZ,
161  double *WORK);
162 void CORE_dsygst(int itype, PLASMA_enum uplo, int N,
163  double *A, int LDA,
164  double *B, int LDB, int *INFO);
165 #ifdef COMPLEX
166 void CORE_dsymm(PLASMA_enum side, PLASMA_enum uplo,
167  int M, int N,
168  double alpha, const double *A, int LDA,
169  const double *B, int LDB,
170  double beta, double *C, int LDC);
171 void CORE_dsyrk(PLASMA_enum uplo, PLASMA_enum trans,
172  int N, int K,
173  double alpha, const double *A, int LDA,
174  double beta, double *C, int LDC);
175 void CORE_dsyr2k(PLASMA_enum uplo, PLASMA_enum trans,
176  int N, int K,
177  double alpha, const double *A, int LDA,
178  const double *B, int LDB,
179  double beta, double *C, int LDC);
180 int CORE_dhessq(PLASMA_enum uplo, int N,
181  const double *A, int LDA,
182  double *scale, double *sumsq);
183 #endif
184 int CORE_dsyrfb(PLASMA_enum uplo, int N, int K, int IB, int NB,
185  const double *A, int LDA,
186  const double *T, int LDT,
187  double *C, int LDC,
188  double *WORK, int LDWORK);
189 void CORE_dlacpy(PLASMA_enum uplo, int M, int N,
190  const double *A, int LDA,
191  double *B, int LDB);
192 int CORE_dlacpy_pivot( const PLASMA_desc descA,
193  PLASMA_enum direct,
194  int k1, int k2, const int *ipiv,
195  int *rankin, int *rankout,
196  double *A, int lda,
197  int init);
198 void CORE_dlange(int norm, int M, int N,
199  const double *A, int LDA,
200  double *work, double *normA);
201 #ifdef COMPLEX
202 void CORE_dlansy(int norm, PLASMA_enum uplo, int N,
203  const double *A, int LDA,
204  double *work, double *normA);
205 #endif
206 void CORE_dlansy(int norm, PLASMA_enum uplo, int N,
207  const double *A, int LDA,
208  double *work, double *normA);
209 void CORE_dlantr(PLASMA_enum norm, PLASMA_enum uplo, PLASMA_enum diag,
210  int M, int N,
211  const double *A, int LDA,
212  double *work, double *normA);
213 int CORE_dlarfb_gemm(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev,
214  int M, int N, int K,
215  const double *V, int LDV,
216  const double *T, int LDT,
217  double *C, int LDC,
218  double *WORK, int LDWORK);
219 int CORE_dlarfx2(PLASMA_enum side, int N,
220  double V,
221  double TAU,
222  double *C1, int LDC1,
223  double *C2, int LDC2);
224 int CORE_dlarfx2c(PLASMA_enum uplo,
225  double V,
226  double TAU,
227  double *C1,
228  double *C2,
229  double *C3);
230 int CORE_dlarfx2ce(PLASMA_enum uplo,
231  double *V,
232  double *TAU,
233  double *C1,
234  double *C2,
235  double *C3);
236 void CORE_dlarfy(int N,
237  double *A, int LDA,
238  const double *V,
239  const double *TAU,
240  double *WORK);
241 int CORE_dlascal(PLASMA_enum uplo, int m, int n,
242  double alpha, double *A, int lda);
243 void CORE_dlaset(PLASMA_enum uplo, int n1, int n2,
244  double alpha, double beta,
245  double *tileA, int ldtilea);
246 void CORE_dlaset2(PLASMA_enum uplo, int n1, int n2, double alpha,
247  double *tileA, int ldtilea);
248 void CORE_dlaswp(int N, double *A, int LDA,
249  int I1, int I2, const int *IPIV, int INC);
250 int CORE_dlaswp_ontile( PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc);
251 int CORE_dlaswpc_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc);
252 int CORE_dlatro(PLASMA_enum uplo, PLASMA_enum trans,
253  int M, int N,
254  const double *A, int LDA,
255  double *B, int LDB);
256 void CORE_dlauum(PLASMA_enum uplo, int N, double *A, int LDA);
257 int CORE_dpamm(int op, PLASMA_enum side, PLASMA_enum storev,
258  int M, int N, int K, int L,
259  const double *A1, int LDA1,
260  double *A2, int LDA2,
261  const double *V, int LDV,
262  double *W, int LDW);
263 int CORE_dparfb(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev,
264  int M1, int N1, int M2, int N2, int K, int L,
265  double *A1, int LDA1,
266  double *A2, int LDA2,
267  const double *V, int LDV,
268  const double *T, int LDT,
269  double *WORK, int LDWORK);
270 int CORE_dpemv(PLASMA_enum trans, PLASMA_enum storev,
271  int M, int N, int L,
272  double ALPHA,
273  const double *A, int LDA,
274  const double *X, int INCX,
275  double BETA,
276  double *Y, int INCY,
277  double *WORK);
278 void CORE_dplgsy(double bump, int m, int n, double *A, int lda,
279  int bigM, int m0, int n0, unsigned long long int seed );
280 void CORE_dplgsy(double bump, int m, int n, double *A, int lda,
281  int bigM, int m0, int n0, unsigned long long int seed );
282 void CORE_dplrnt(int m, int n, double *A, int lda,
283  int bigM, int m0, int n0, unsigned long long int seed );
284 int CORE_dpltmg(PLASMA_enum mtxtype, int m, int n, double *A, int lda,
285  int gM, int gN, int m0, int n0, unsigned long long int seed );
286 int CORE_dpltmg_chebvand( int M, int N, double *A, int LDA,
287  int gN, int m0, int n0,
288  double *W );
289 int CORE_dpltmg_circul( int M, int N, double *A, int LDA,
290  int gM, int m0, int n0,
291  const double *V );
292 void CORE_dpltmg_condexq( int M, int N, double *Q, int LDQ );
293 void CORE_dpltmg_fiedler(int m, int n,
294  const double *X, int incX,
295  const double *Y, int incY,
296  double *A, int lda);
297 int CORE_dpltmg_hankel( PLASMA_enum uplo, int M, int N, double *A, int LDA,
298  int m0, int n0, int nb,
299  const double *V1,
300  const double *V2 );
301 void CORE_dpltmg_toeppd1( int gM, int m0, int M, double *W,
302  unsigned long long int seed );
303 void CORE_dpltmg_toeppd2( int M, int N, int K, int m0, int n0,
304  const double *W,
305  double *A, int LDA );
306 void CORE_dpotrf(PLASMA_enum uplo, int N, double *A, int LDA, int *INFO);
307 void CORE_dsetvar(const double *alpha, double *x);
308 void CORE_dshift(int s, int m, int n, int L,
309  double *A);
310 void CORE_dshiftw(int s, int cl, int m, int n, int L,
311  double *A, double *W);
312 int CORE_dssssm(int M1, int N1, int M2, int N2, int K, int IB,
313  double *A1, int LDA1,
314  double *A2, int LDA2,
315  const double *L1, int LDL1,
316  const double *L2, int LDL2,
317  const int *IPIV);
318 int CORE_dstedc(PLASMA_enum compz, int n,
319  double *D, double *E,
320  double *Z, int LDZ,
321  double *WORK, int LWORK,
322 #ifdef COMPLEX
323  double *RWORK, int LRWORK,
324 #endif
325  int *IWORK, int LIWORK);
326 int CORE_dsteqr(PLASMA_enum compz, int n,
327  double *D, double *E,
328  double *Z, int LDZ,
329  double *WORK);
330 void CORE_dsymm(PLASMA_enum side, PLASMA_enum uplo,
331  int M, int N,
332  double alpha, const double *A, int LDA,
333  const double *B, int LDB,
334  double beta, double *C, int LDC);
335 void CORE_dsyrk(PLASMA_enum uplo, PLASMA_enum trans,
336  int N, int K,
337  double alpha, const double *A, int LDA,
338  double beta, double *C, int LDC);
339 void CORE_dsyr2k(PLASMA_enum uplo, PLASMA_enum trans,
340  int N, int K,
341  double alpha, const double *A, int LDA,
342  const double *B, int LDB,
343  double beta, double *C, int LDC);
344 int CORE_dsyssq(PLASMA_enum uplo, int N,
345  const double *A, int LDA,
346  double *scale, double *sumsq);
347 void CORE_dswpab(int i, int n1, int n2,
348  double *A, double *work);
349 int CORE_dswptr_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc,
350  const double *Akk, int ldak);
351 int CORE_dtradd(PLASMA_enum uplo, PLASMA_enum trans, int M, int N,
352  double alpha,
353  const double *A, int LDA,
354  double beta,
355  double *B, int LDB);
356 void CORE_dtrasm(PLASMA_enum storev, PLASMA_enum uplo, PLASMA_enum diag,
357  int M, int N, const double *A, int lda, double *work);
358 void CORE_dtrdalg1(int n,
359  int nb,
360  double *A,
361  int lda,
362  double *V,
363  double *TAU,
364  int Vblksiz, int wantz,
365  int i, int sweepid, int m, int grsiz,
366  double *work);
367 void CORE_dtrmm(PLASMA_enum side, PLASMA_enum uplo,
368  PLASMA_enum transA, PLASMA_enum diag,
369  int M, int N,
370  double alpha, const double *A, int LDA,
371  double *B, int LDB);
372 void CORE_dtrsm(PLASMA_enum side, PLASMA_enum uplo,
373  PLASMA_enum transA, PLASMA_enum diag,
374  int M, int N,
375  double alpha, const double *A, int LDA,
376  double *B, int LDB);
377 int CORE_dtrssq(PLASMA_enum uplo, PLASMA_enum diag, int M, int N,
378  const double *A, int LDA,
379  double *scale, double *sumsq);
380 void CORE_dtrtri(PLASMA_enum uplo, PLASMA_enum diag, int N,
381  double *A, int LDA, int *info);
382 int CORE_dtslqt(int M, int N, int IB,
383  double *A1, int LDA1,
384  double *A2, int LDA2,
385  double *T, int LDT,
386  double *TAU, double *WORK);
387 int CORE_dtsmlq(PLASMA_enum side, PLASMA_enum trans,
388  int M1, int N1, int M2, int N2, int K, int IB,
389  double *A1, int LDA1,
390  double *A2, int LDA2,
391  const double *V, int LDV,
392  const double *T, int LDT,
393  double *WORK, int LDWORK);
394 int CORE_dtsmlq_corner( int m1, int n1, int m2, int n2, int m3, int n3,
395  int k, int ib, int nb,
396  double *A1, int lda1,
397  double *A2, int lda2,
398  double *A3, int lda3,
399  const double *V, int ldv,
400  const double *T, int ldt,
401  double *WORK, int ldwork);
402 int CORE_dtsmlq_sytra1( PLASMA_enum side, PLASMA_enum trans,
403  int m1, int n1, int m2, int n2,
404  int k, int ib,
405  double *A1, int lda1,
406  double *A2, int lda2,
407  const double *V, int ldv,
408  const double *T, int ldt,
409  double *WORK, int ldwork);
410 int CORE_dtsmqr(PLASMA_enum side, PLASMA_enum trans,
411  int M1, int N1, int M2, int N2, int K, int IB,
412  double *A1, int LDA1,
413  double *A2, int LDA2,
414  const double *V, int LDV,
415  const double *T, int LDT,
416  double *WORK, int LDWORK);
417 int CORE_dtsmqr_corner( int m1, int n1, int m2, int n2, int m3, int n3,
418  int k, int ib, int nb,
419  double *A1, int lda1,
420  double *A2, int lda2,
421  double *A3, int lda3,
422  const double *V, int ldv,
423  const double *T, int ldt,
424  double *WORK, int ldwork);
425 int CORE_dtsmqr_sytra1( PLASMA_enum side, PLASMA_enum trans,
426  int m1, int n1, int m2, int n2,
427  int k, int ib,
428  double *A1, int lda1,
429  double *A2, int lda2,
430  const double *V, int ldv,
431  const double *T, int ldt,
432  double *WORK, int ldwork);
433 int CORE_dtsqrt(int M, int N, int IB,
434  double *A1, int LDA1,
435  double *A2, int LDA2,
436  double *T, int LDT,
437  double *TAU, double *WORK);
438 int CORE_dtstrf(int M, int N, int IB, int NB,
439  double *U, int LDU,
440  double *A, int LDA,
441  double *L, int LDL,
442  int *IPIV, double *WORK,
443  int LDWORK, int *INFO);
444 int CORE_dttmqr(PLASMA_enum side, PLASMA_enum trans,
445  int M1, int N1, int M2, int N2, int K, int IB,
446  double *A1, int LDA1,
447  double *A2, int LDA2,
448  const double *V, int LDV,
449  const double *T, int LDT,
450  double *WORK, int LDWORK);
451 int CORE_dttqrt(int M, int N, int IB,
452  double *A1, int LDA1,
453  double *A2, int LDA2,
454  double *T, int LDT,
455  double *TAU,
456  double *WORK);
457 int CORE_dttmlq(PLASMA_enum side, PLASMA_enum trans,
458  int M1, int N1, int M2, int N2, int K, int IB,
459  double *A1, int LDA1,
460  double *A2, int LDA2,
461  const double *V, int LDV,
462  const double *T, int LDT,
463  double *WORK, int LDWORK);
464 int CORE_dttlqt(int M, int N, int IB,
465  double *A1, int LDA1,
466  double *A2, int LDA2,
467  double *T, int LDT,
468  double *TAU,
469  double *WORK);
470 int CORE_dormlq(PLASMA_enum side, PLASMA_enum trans,
471  int M, int N, int IB, int K,
472  const double *V, int LDV,
473  const double *T, int LDT,
474  double *C, int LDC,
475  double *WORK, int LDWORK);
476 int CORE_dormqr(PLASMA_enum side, PLASMA_enum trans,
477  int M, int N, int K, int IB,
478  const double *V, int LDV,
479  const double *T, int LDT,
480  double *C, int LDC,
481  double *WORK, int LDWORK);
482 
483 #ifndef COMPLEX
484 void CORE_dlaed2_computeK(int *K, int n, int n1,
485  double *beta, double *D, double *Q, int LDQ,
486  double *Z, double *DLAMBDA, double *W,
487  int *INDX, int *INDXC, int *INDXP, int *INDXQ,
488  int *COLTYP);
489 void CORE_dlaed2_compressq(int n, int n1, const int *INDX, const int *ctot,
490  const double *Q, int LDQ, double *Q2,
491  int start, int end);
492 void CORE_dlaed2_copydef(int n, int n1, int K, const int *ctot,
493  double *Q, int LDQ, const double *Q2,
494  int start, int end);
495 int CORE_dlaed4(int n, int K,
496  double *D, double beta,
497  double *Q, int LDQ,
498  const double *D0, const double *Z,
499  const int *INDX,
500  int start, int end );
501 void CORE_dlaed3_computeW(int n, int K,
502  const double *Q, int LDQ,
503  const double *DLAMBDA, double *W,
504  const int *INDX,
505  int start, int end);
506 void CORE_dlaed3_reduceW(int n, int n1, int K, int l,
507  const double *Q, int LDQ,
508  const double *Wred, double *W);
509 void CORE_dlaed3_computevectors(int K, int il_nondef, int iu_nondef,
510  double *Q, int LDQ, double *W, double *S,
511  const int *INDXC,
512  int start, int end);
513 void CORE_dlaed3_merge( int n, int K, double *D, int *INDXQ );
514 void CORE_dlaed3_updatevectors(int op, int wsmode, int n, int n1, int K,
515  int il_nondef, int iu_nondef,
516  double *Q, int ldq, double *Q2,
517  const int *ctot, double *WORK, int start, int end);
518 #endif
519 void CORE_dswap(int m, int n, double *Q, int ldq,
520  const double *work, const int *perm,
521  int start, int end);
522 int CORE_dlascl(PLASMA_enum type, int kl, int ku, double cfrom, double cto,
523  int m, int n, double *A, int lda);
524 #ifdef COMPLEX
525 int CORE_dlag2z(int m, int n, const double *Q, int LDQ,
526  double *Z, int LDZ);
527 #endif
528 
529 #ifndef COMPLEX
530 void CORE_dlaed3_freebigwork(int oper, double **WORK);
531 void CORE_dlaed0_betaapprox(int subpbs, const int *subpbs_info,
532  double *D, const double *E);
533 int CORE_dlapst(PLASMA_enum type, int n,
534  const double *D, int *INDX);
535 #endif
536 
537 #if defined(QUARK_H)
538 
541 void QUARK_CORE_dasum(Quark *quark, Quark_Task_Flags *task_flags,
542  PLASMA_enum storev, PLASMA_enum uplo, int m, int n,
543  const double *A, int lda, int szeA,
544  double *work, int szeW);
545 void QUARK_CORE_dasum_f1(Quark *quark, Quark_Task_Flags *task_flags,
546  PLASMA_enum storev, PLASMA_enum uplo, int m, int n,
547  const double *A, int lda, int szeA,
548  double *work, int szeW,
549  double *fake, int szeF);
550 void QUARK_CORE_dgeadd(Quark *quark, Quark_Task_Flags *task_flags,
551  PLASMA_enum trans, int m, int n, int nb,
552  double alpha,
553  const double *A, int lda,
554  double beta,
555  double *B, int ldb);
556 void QUARK_CORE_dbrdalg1(Quark *quark, Quark_Task_Flags *task_flags,
557  PLASMA_enum uplo,
558  int n, int nb,
559  double *A,
560  int lda,
561  double *VQ,
562  double *TAUQ,
563  double *VP,
564  double *TAUP,
565  int Vblksiz, int wantz,
566  int i, int sweepid, int m, int grsiz,
567  int *PCOL, int *ACOL, int *MCOL);
568 void QUARK_CORE_dgelqt(Quark *quark, Quark_Task_Flags *task_flags,
569  int m, int n, int ib, int nb,
570  double *A, int lda,
571  double *T, int ldt);
572 void QUARK_CORE_dgemm(Quark *quark, Quark_Task_Flags *task_flags,
573  PLASMA_enum transA, PLASMA_enum transB,
574  int m, int n, int k, int nb,
575  double alpha, const double *A, int lda,
576  const double *B, int ldb,
577  double beta, double *C, int ldc);
578 void QUARK_CORE_dgemm2( Quark *quark, Quark_Task_Flags *task_flags,
579  PLASMA_enum transA, PLASMA_enum transB,
580  int m, int n, int k, int nb,
581  double alpha, const double *A, int lda,
582  const double *B, int ldb,
583  double beta, double *C, int ldc);
584 void QUARK_CORE_dgemm_f2(Quark *quark, Quark_Task_Flags *task_flags,
585  PLASMA_enum transA, PLASMA_enum transB,
586  int m, int n, int k, int nb,
587  double alpha, const double *A, int lda,
588  const double *B, int ldb,
589  double beta, double *C, int ldc,
590  double *fake1, int szefake1, int flag1,
591  double *fake2, int szefake2, int flag2);
592 void QUARK_CORE_dgemm_p2(Quark *quark, Quark_Task_Flags *task_flags,
593  PLASMA_enum transA, PLASMA_enum transB,
594  int m, int n, int k, int nb,
595  double alpha, const double *A, int lda,
596  const double **B, int ldb,
597  double beta, double *C, int ldc);
598 void QUARK_CORE_dgemm_p2f1(Quark *quark, Quark_Task_Flags *task_flags,
599  PLASMA_enum transA, PLASMA_enum transB,
600  int m, int n, int k, int nb,
601  double alpha, const double *A, int lda,
602  const double **B, int ldb,
603  double beta, double *C, int ldc,
604  double *fake1, int szefake1, int flag1);
605 void QUARK_CORE_dgemm_p3(Quark *quark, Quark_Task_Flags *task_flags,
606  PLASMA_enum transA, PLASMA_enum transB,
607  int m, int n, int k, int nb,
608  double alpha, const double *A, int lda,
609  const double *B, int ldb,
610  double beta, double **C, int ldc);
611 void QUARK_CORE_dgemm_tile(Quark *quark, Quark_Task_Flags *task_flags,
612  PLASMA_enum transA, PLASMA_enum transB,
613  int m, int n, int k, int nb,
614  const double *alpha, const double *A, int lda,
615  const double *B, int ldb,
616  const double *beta, double *C, int ldc,
617  const double *Alock,
618  const double *Block,
619  const double *Clock);
620 void QUARK_CORE_dgemv(Quark *quark, Quark_Task_Flags *task_flags,
621  PLASMA_enum trans, int m, int n,
622  double alpha, const double *A, int lda,
623  const double *x, int incx,
624  double beta, double *y, int incy);
625 void QUARK_CORE_dgemv_tile(Quark *quark, Quark_Task_Flags *task_flags,
626  PLASMA_enum trans,
627  int m, int n,
628  const double *alpha, const double *A, int lda,
629  const double *x, int incx,
630  const double *beta, double *y, int incy,
631  const double *Alock,
632  const double *xlock,
633  const double *ylock);
634 void QUARK_CORE_dgeqp3_init( Quark *quark, Quark_Task_Flags *task_flags,
635  int n, int *jpvt );
636 void QUARK_CORE_dgeqp3_larfg(Quark *quark, Quark_Task_Flags *task_flags,
637  PLASMA_desc A, int ii, int jj, int i, int j,
638  double *tau, double *beta );
639 void QUARK_CORE_dgeqp3_norms( Quark *quark, Quark_Task_Flags *task_flags,
640  PLASMA_desc A, int ioff, int joff, double *norms1, double *norms2 );
641 void QUARK_CORE_dgeqp3_pivot( Quark *quark, Quark_Task_Flags *task_flags,
642  PLASMA_desc A,
643  double *F, int ldf,
644  int jj, int k, int *jpvt,
645  double *norms1, double *norms2, int *info );
646 void QUARK_CORE_dgeqp3_tntpiv(Quark *quark, Quark_Task_Flags *task_flags,
647  int m, int n, int nb,
648  double *A, int lda,
649  int *IPIV,
650  PLASMA_sequence *sequence, PLASMA_request *request,
651  PLASMA_bool check_info, int iinfo);
652 void QUARK_CORE_dgeqp3_update( Quark *quark, Quark_Task_Flags *task_flags,
653  double *Ajj, int lda1,
654  double *Ajk, int lda2,
655  double *Fk, int ldf,
656  int joff, int k, int koff, int nb,
657  double *norms1, double *norms2, int *info );
658 void QUARK_CORE_dgeqrt(Quark *quark, Quark_Task_Flags *task_flags,
659  int m, int n, int ib, int nb,
660  double *A, int lda,
661  double *T, int ldt);
662 void QUARK_CORE_dgessm(Quark *quark, Quark_Task_Flags *task_flags,
663  int m, int n, int k, int ib, int nb,
664  const int *IPIV,
665  const double *L, int ldl,
666  double *A, int lda);
667 void QUARK_CORE_dgessq_f1( Quark *quark, Quark_Task_Flags *task_flags,
668  int m, int n, const double *A, int lda,
669  double *scale, double *sumsq,
670  double *fake, int szeF, int paramF );
671 void QUARK_CORE_dgetrf(Quark *quark, Quark_Task_Flags *task_flags,
672  int m, int n, int nb,
673  double *A, int lda,
674  int *IPIV,
675  PLASMA_sequence *sequence, PLASMA_request *request,
676  PLASMA_bool check_info, int iinfo);
677 void QUARK_CORE_dgetrf_incpiv(Quark *quark, Quark_Task_Flags *task_flags,
678  int m, int n, int ib, int nb,
679  double *A, int lda,
680  int *IPIV,
681  PLASMA_sequence *sequence, PLASMA_request *request,
682  PLASMA_bool check_info, int iinfo);
683 void QUARK_CORE_dgetrf_nopiv(Quark *quark, Quark_Task_Flags *task_flags,
684  int m, int n, int ib, int nb,
685  double *A, int lda,
686  PLASMA_sequence *sequence, PLASMA_request *request,
687  int iinfo);
688 void QUARK_CORE_dgetrf_reclap(Quark *quark, Quark_Task_Flags *task_flags,
689  CORE_dgetrf_data_t *data, int m, int n, int nb,
690  double *A, int lda,
691  int *IPIV,
692  PLASMA_sequence *sequence, PLASMA_request *request,
693  PLASMA_bool check_info, int iinfo,
694  int nbthread);
695 void QUARK_CORE_dgetrf_rectil(Quark *quark, Quark_Task_Flags *task_flags,
696  CORE_dgetrf_data_t *data,
697  PLASMA_desc A, double *Amn, int size,
698  int *IPIV,
699  PLASMA_sequence *sequence, PLASMA_request *request,
700  PLASMA_bool check_info, int iinfo,
701  int nbthread);
702 void QUARK_CORE_dgetrip(Quark *quark, Quark_Task_Flags *task_flags,
703  int m, int n, double *A, int szeA);
704 void QUARK_CORE_dgetrip_f1(Quark *quark, Quark_Task_Flags *task_flags,
705  int m, int n, double *A, int szeA,
706  double *fake, int szeF, int paramF);
707 void QUARK_CORE_dgetrip_f2(Quark *quark, Quark_Task_Flags *task_flags,
708  int m, int n, double *A, int szeA,
709  double *fake1, int szeF1, int paramF1,
710  double *fake2, int szeF2, int paramF2);
711 void QUARK_CORE_dsymm(Quark *quark, Quark_Task_Flags *task_flags,
712  PLASMA_enum side, PLASMA_enum uplo,
713  int m, int n, int nb,
714  double alpha, const double *A, int lda,
715  const double *B, int ldb,
716  double beta, double *C, int ldc);
717 void QUARK_CORE_dsygst(Quark *quark, Quark_Task_Flags *task_flags,
718  int itype, PLASMA_enum uplo, int N,
719  double *A, int LDA,
720  double *B, int LDB,
721  PLASMA_sequence *sequence, PLASMA_request *request,
722  int iinfo);
723 void QUARK_CORE_dsyrk(Quark *quark, Quark_Task_Flags *task_flags,
724  PLASMA_enum uplo, PLASMA_enum trans,
725  int n, int k, int nb,
726  double alpha, const double *A, int lda,
727  double beta, double *C, int ldc);
728 void QUARK_CORE_dsyr2k(Quark *quark, Quark_Task_Flags *task_flags,
729  PLASMA_enum uplo, PLASMA_enum trans,
730  int n, int k, int nb,
731  double alpha, const double *A, int lda,
732  const double *B, int LDB,
733  double beta, double *C, int ldc);
734 void QUARK_CORE_dsyrfb(Quark *quark, Quark_Task_Flags *task_flags,
735  PLASMA_enum uplo,
736  int n, int k, int ib, int nb,
737  const double *A, int lda,
738  const double *T, int ldt,
739  double *C, int ldc);
740 void QUARK_CORE_dhessq_f1( Quark *quark, Quark_Task_Flags *task_flags,
741  PLASMA_enum uplo, int n, const double *A, int lda,
742  double *scale, double *sumsq,
743  double *fake, int szeF, int paramF );
744 void QUARK_CORE_dlacpy(Quark *quark, Quark_Task_Flags *task_flags,
745  PLASMA_enum uplo, int m, int n, int mb,
746  const double *A, int lda,
747  double *B, int ldb);
748 void QUARK_CORE_dlacpy_f1(Quark *quark, Quark_Task_Flags *task_flags,
749  PLASMA_enum uplo, int m, int n, int nb,
750  const double *A, int lda,
751  double *B, int ldb,
752  double *fake1, int szefake1, int flag1);
753 void QUARK_CORE_dlacpy_pivot(Quark *quark, Quark_Task_Flags *task_flags,
754  const PLASMA_desc descA,
755  PLASMA_enum direct,
756  int k1, int k2, const int *ipiv,
757  int *rankin, int *rankout,
758  double *A, int lda,
759  int pos, int init);
760 void QUARK_CORE_dlange(Quark *quark, Quark_Task_Flags *task_flags,
761  int norm, int M, int N,
762  const double *A, int LDA, int szeA,
763  int szeW, double *result);
764 void QUARK_CORE_dlange_f1(Quark *quark, Quark_Task_Flags *task_flags,
765  int norm, int M, int N,
766  const double *A, int LDA, int szeA,
767  int szeW, double *result,
768  double *fake, int szeF);
769 #ifdef COMPLEX
770 void QUARK_CORE_dlansy(Quark *quark, Quark_Task_Flags *task_flags,
771  int norm, PLASMA_enum uplo, int N,
772  const double *A, int LDA, int szeA,
773  int szeW, double *result);
774 void QUARK_CORE_dlansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
775  int norm, PLASMA_enum uplo, int N,
776  const double *A, int LDA, int szeA,
777  int szeW, double *result,
778  double *fake, int szeF);
779 #endif
780 void QUARK_CORE_dlansy(Quark *quark, Quark_Task_Flags *task_flags,
781  int norm, PLASMA_enum uplo, int N,
782  const double *A, int LDA, int szeA,
783  int szeW, double *result);
784 void QUARK_CORE_dlansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
785  int norm, PLASMA_enum uplo, int N,
786  const double *A, int LDA, int szeA,
787  int szeW, double *result,
788  double *fake, int szeF);
789 void QUARK_CORE_dlantr(Quark *quark, Quark_Task_Flags *task_flags,
790  PLASMA_enum norm, PLASMA_enum uplo, PLASMA_enum diag, int M, int N,
791  const double *A, int LDA, int szeA,
792  int szeW, double *result);
793 void QUARK_CORE_dlantr_f1(Quark *quark, Quark_Task_Flags *task_flags,
794  PLASMA_enum norm, PLASMA_enum uplo, PLASMA_enum diag, int M, int N,
795  const double *A, int LDA, int szeA,
796  int szeW, double *result,
797  double *fake, int szeF);
798 void QUARK_CORE_dlascal(Quark *quark, Quark_Task_Flags *task_flags,
799  PLASMA_enum uplo, int m, int n, int nb,
800  double alpha, double *A, int lda);
801 void QUARK_CORE_dlaset(Quark *quark, Quark_Task_Flags *task_flags,
802  PLASMA_enum uplo, int n1, int n2, double alpha,
803  double beta, double *tileA, int ldtilea);
804 void QUARK_CORE_dlaset2(Quark *quark, Quark_Task_Flags *task_flags,
805  PLASMA_enum uplo, int n1, int n2, double alpha,
806  double *tileA, int ldtilea);
807 void QUARK_CORE_dlaswp(Quark *quark, Quark_Task_Flags *task_flags,
808  int n, double *A, int lda,
809  int i1, int i2, const int *ipiv, int inc);
810 void QUARK_CORE_dlaswp_f2(Quark *quark, Quark_Task_Flags *task_flags,
811  int n, double *A, int lda,
812  int i1, int i2, const int *ipiv, int inc,
813  double *fake1, int szefake1, int flag1,
814  double *fake2, int szefake2, int flag2);
815 void QUARK_CORE_dlaswp_ontile(Quark *quark, Quark_Task_Flags *task_flags,
816  PLASMA_desc descA, double *A,
817  int i1, int i2, const int *ipiv, int inc, double *fakepanel);
818 void QUARK_CORE_dlaswp_ontile_f2(Quark *quark, Quark_Task_Flags *task_flags,
819  PLASMA_desc descA, double *A,
820  int i1, int i2, const int *ipiv, int inc,
821  double *fake1, int szefake1, int flag1,
822  double *fake2, int szefake2, int flag2);
823 void QUARK_CORE_dlaswpc_ontile(Quark *quark, Quark_Task_Flags *task_flags,
824  PLASMA_desc descA, double *A,
825  int i1, int i2, const int *ipiv, int inc, double *fakepanel);
826 void QUARK_CORE_dlatro(Quark *quark, Quark_Task_Flags *task_flags,
827  PLASMA_enum uplo, PLASMA_enum trans, int m, int n, int mb,
828  const double *A, int lda,
829  double *B, int ldb);
830 void QUARK_CORE_dlatro_f1(Quark *quark, Quark_Task_Flags *task_flags,
831  PLASMA_enum uplo, PLASMA_enum trans, int m, int n, int mb,
832  const double *A, int lda,
833  double *B, int ldb,
834  double *fake1, int szefake1, int flag1);
835 void QUARK_CORE_dlauum(Quark *quark, Quark_Task_Flags *task_flags,
836  PLASMA_enum uplo, int n, int nb,
837  double *A, int lda);
838 void QUARK_CORE_dplgsy(Quark *quark, Quark_Task_Flags *task_flags,
839  double bump, int m, int n, double *A, int lda,
840  int bigM, int m0, int n0, unsigned long long int seed );
841 void QUARK_CORE_dplgsy(Quark *quark, Quark_Task_Flags *task_flags,
842  double bump, int m, int n, double *A, int lda,
843  int bigM, int m0, int n0, unsigned long long int seed );
844 void QUARK_CORE_dplrnt(Quark *quark, Quark_Task_Flags *task_flags,
845  int m, int n, double *A, int lda,
846  int bigM, int m0, int n0, unsigned long long int seed );
847 void QUARK_CORE_dpltmg(Quark *quark, Quark_Task_Flags *task_flags,
848  PLASMA_enum mtxtype, int m, int n, double *A, int lda,
849  int gM, int gN, int m0, int n0, unsigned long long int seed );
850 void QUARK_CORE_dpltmg_chebvand( Quark *quark, Quark_Task_Flags *task_flags,
851  int M, int N, double *A, int LDA,
852  int gN, int m0, int n0,
853  double *W );
854 void QUARK_CORE_dpltmg_circul( Quark *quark, Quark_Task_Flags *task_flags,
855  int M, int N, double *A, int LDA,
856  int gM, int m0, int n0,
857  const double *W );
858 void QUARK_CORE_dpltmg_fiedler(Quark *quark, Quark_Task_Flags *task_flags,
859  int m, int n,
860  const double *X, int incX,
861  const double *Y, int incY,
862  double *A, int lda);
863 void QUARK_CORE_dpltmg_hankel( Quark *quark, Quark_Task_Flags *task_flags,
864  PLASMA_enum uplo, int M, int N, double *A, int LDA,
865  int m0, int n0, int nb,
866  const double *V1,
867  const double *V2);
868 void QUARK_CORE_dpltmg_toeppd1(Quark *quark, Quark_Task_Flags *task_flags,
869  int gM, int m0, int M,
870  double *W,
871  unsigned long long int seed);
872 void QUARK_CORE_dpltmg_toeppd2(Quark *quark, Quark_Task_Flags *task_flags,
873  int M, int N, int K, int m0, int n0,
874  const double *W,
875  double *A, int LDA );
876 void QUARK_CORE_dpotrf(Quark *quark, Quark_Task_Flags *task_flags,
877  PLASMA_enum uplo, int n, int nb,
878  double *A, int lda,
879  PLASMA_sequence *sequence, PLASMA_request *request,
880  int iinfo);
881 void QUARK_CORE_dsetvar(Quark *quark, Quark_Task_Flags *task_flags,
882  const double *alpha, double *x,
883  double *Alock);
884 void QUARK_CORE_dshift( Quark *quark, Quark_Task_Flags *task_flags,
885  int s, int m, int n, int L,
886  double *A);
887 void QUARK_CORE_dshiftw(Quark *quark, Quark_Task_Flags *task_flags,
888  int s, int cl, int m, int n, int L,
889  double *A, double *W);
890 void QUARK_CORE_dssssm(Quark *quark, Quark_Task_Flags *task_flags,
891  int m1, int n1, int m2, int n2, int k, int ib, int nb,
892  double *A1, int lda1,
893  double *A2, int lda2,
894  const double *L1, int ldl1,
895  const double *L2, int ldl2,
896  const int *IPIV);
897 void QUARK_CORE_dstedc(Quark *quark, Quark_Task_Flags *task_flags,
898  PLASMA_enum compz, int n,
899  double *D, double *E,
900  double *Z, int ldz);
901 void QUARK_CORE_dstedc_f2(Quark *quark, Quark_Task_Flags *task_flags,
902  PLASMA_enum compz, int n,
903  double *D, double *E,
904  double *Z, int ldz,
905  void *fake1, int szefake1, int flag1,
906  void *fake2, int szefake2, int flag2);
907 void QUARK_CORE_dsteqr(Quark *quark, Quark_Task_Flags *task_flags,
908  PLASMA_enum compz, int n,
909  double *D, double *E,
910  double *Z, int ldz);
911 void QUARK_CORE_dsymm(Quark *quark, Quark_Task_Flags *task_flags,
912  PLASMA_enum side, PLASMA_enum uplo,
913  int m, int n, int nb,
914  double alpha, const double *A, int lda,
915  const double *B, int ldb,
916  double beta, double *C, int ldc);
917 void QUARK_CORE_dsyrk(Quark *quark, Quark_Task_Flags *task_flags,
918  PLASMA_enum uplo, PLASMA_enum trans,
919  int n, int k, int nb,
920  double alpha, const double *A, int lda,
921  double beta, double *C, int ldc);
922 void QUARK_CORE_dsyr2k(Quark *quark, Quark_Task_Flags *task_flags,
923  PLASMA_enum uplo, PLASMA_enum trans,
924  int n, int k, int nb,
925  double alpha, const double *A, int lda,
926  const double *B, int LDB,
927  double beta, double *C, int ldc);
928 void QUARK_CORE_dsyssq_f1( Quark *quark, Quark_Task_Flags *task_flags,
929  PLASMA_enum uplo, int n, const double *A, int lda,
930  double *scale, double *sumsq,
931  double *fake, int szeF, int paramF );
932 void QUARK_CORE_dswpab(Quark *quark, Quark_Task_Flags *task_flags,
933  int i, int n1, int n2,
934  double *A, int szeA);
935 void QUARK_CORE_dswptr_ontile(Quark *quark, Quark_Task_Flags *task_flags,
936  PLASMA_desc descA, double *Aij,
937  int i1, int i2, const int *ipiv, int inc,
938  const double *Akk, int ldak);
939 void QUARK_CORE_dtradd(Quark *quark, Quark_Task_Flags *task_flags,
940  PLASMA_enum uplo, PLASMA_enum trans, int m, int n, int nb,
941  double alpha,
942  const double *A, int lda,
943  double beta,
944  double *B, int ldb);
945 void QUARK_CORE_dtrasm(Quark *quark, Quark_Task_Flags *task_flags,
946  PLASMA_enum storev, PLASMA_enum uplo, PLASMA_enum diag, int m, int n,
947  const double *A, int lda, int szeA,
948  double *work, int szeW);
949 void QUARK_CORE_dtrasm_f1(Quark *quark, Quark_Task_Flags *task_flags,
950  PLASMA_enum storev, PLASMA_enum uplo, PLASMA_enum diag, int m, int n,
951  const double *A, int lda, int szeA,
952  double *work, int szeW,
953  double *fake, int szeF);
954 void QUARK_CORE_dtrdalg1(Quark *quark, Quark_Task_Flags *task_flags,
955  int n,
956  int nb,
957  double *A,
958  int lda,
959  double *V,
960  double *TAU,
961  int Vblksiz, int wantz,
962  int i, int sweepid, int m, int grsiz,
963  int *PCOL, int *ACOL, int *MCOL);
964 void QUARK_CORE_dtrmm(Quark *quark, Quark_Task_Flags *task_flags,
965  PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
966  int m, int n, int nb,
967  double alpha, const double *A, int lda,
968  double *B, int ldb);
969 void QUARK_CORE_dtrmm_p2(Quark *quark, Quark_Task_Flags *task_flags,
970  PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
971  int m, int n, int nb,
972  double alpha, const double *A, int lda,
973  double **B, int ldb);
974 void QUARK_CORE_dtrsm(Quark *quark, Quark_Task_Flags *task_flags,
975  PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
976  int m, int n, int nb,
977  double alpha, const double *A, int lda,
978  double *B, int ldb);
979 void QUARK_CORE_dtrssq_f1( Quark *quark, Quark_Task_Flags *task_flags,
980  PLASMA_enum uplo, PLASMA_enum diag,
981  int m, int n, const double *A, int lda,
982  double *scale, double *sumsq,
983  double *fake, int szeF, int paramF );
984 void QUARK_CORE_dtrtri(Quark *quark, Quark_Task_Flags *task_flags,
985  PLASMA_enum uplo, PLASMA_enum diag, int n, int nb,
986  double *A, int lda,
987  PLASMA_sequence *sequence, PLASMA_request *request,
988  int iinfo);
989 void QUARK_CORE_dtslqt(Quark *quark, Quark_Task_Flags *task_flags,
990  int m, int n, int ib, int nb,
991  double *A1, int lda1,
992  double *A2, int lda2,
993  double *T, int ldt);
994 void QUARK_CORE_dtsmlq(Quark *quark, Quark_Task_Flags *task_flags,
995  PLASMA_enum side, PLASMA_enum trans,
996  int m1, int n1, int m2, int n2, int k, int ib, int nb,
997  double *A1, int lda1,
998  double *A2, int lda2,
999  const double *V, int ldv,
1000  const double *T, int ldt);
1001 void QUARK_CORE_dtsmlq_sytra1(Quark *quark, Quark_Task_Flags *task_flags,
1002  PLASMA_enum side, PLASMA_enum trans,
1003  int m1, int n1, int m2, int n2, int k, int ib, int nb,
1004  double *A1, int lda1,
1005  double *A2, int lda2,
1006  const double *V, int ldv,
1007  const double *T, int ldt);
1008 void QUARK_CORE_dtsmlq_corner(Quark *quark, Quark_Task_Flags *task_flags,
1009  int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb,
1010  double *A1, int lda1,
1011  double *A2, int lda2,
1012  double *A3, int lda3,
1013  const double *V, int ldv,
1014  const double *T, int ldt);
1015 void QUARK_CORE_dtsmqr(Quark *quark, Quark_Task_Flags *task_flags,
1016  PLASMA_enum side, PLASMA_enum trans,
1017  int m1, int n1, int m2, int n2, int k, int ib, int nb,
1018  double *A1, int lda1,
1019  double *A2, int lda2,
1020  const double *V, int ldv,
1021  const double *T, int ldt);
1022 void QUARK_CORE_dtsmqr_sytra1(Quark *quark, Quark_Task_Flags *task_flags,
1023  PLASMA_enum side, PLASMA_enum trans,
1024  int m1, int n1, int m2, int n2, int k, int ib, int nb,
1025  double *A1, int lda1,
1026  double *A2, int lda2,
1027  const double *V, int ldv,
1028  const double *T, int ldt);
1029 void QUARK_CORE_dtsmqr_corner(Quark *quark, Quark_Task_Flags *task_flags,
1030  int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb,
1031  double *A1, int lda1,
1032  double *A2, int lda2,
1033  double *A3, int lda3,
1034  const double *V, int ldv,
1035  const double *T, int ldt);
1036 void QUARK_CORE_dtsqrt(Quark *quark, Quark_Task_Flags *task_flags,
1037  int m, int n, int ib, int nb,
1038  double *A1, int lda1,
1039  double *A2, int lda2,
1040  double *T, int ldt);
1041 void QUARK_CORE_dtstrf(Quark *quark, Quark_Task_Flags *task_flags,
1042  int m, int n, int ib, int nb,
1043  double *U, int ldu,
1044  double *A, int lda,
1045  double *L, int ldl,
1046  int *IPIV,
1047  PLASMA_sequence *sequence, PLASMA_request *request,
1048  PLASMA_bool check_info, int iinfo);
1049 void QUARK_CORE_dttmqr(Quark *quark, Quark_Task_Flags *task_flags,
1050  PLASMA_enum side, PLASMA_enum trans,
1051  int m1, int n1, int m2, int n2, int k, int ib, int nb,
1052  double *A1, int lda1,
1053  double *A2, int lda2,
1054  const double *V, int ldv,
1055  const double *T, int ldt);
1056 void QUARK_CORE_dttqrt(Quark *quark, Quark_Task_Flags *task_flags,
1057  int m, int n, int ib, int nb,
1058  double *A1, int lda1,
1059  double *A2, int lda2,
1060  double *T, int ldt);
1061 void QUARK_CORE_dttmlq(Quark *quark, Quark_Task_Flags *task_flags,
1062  PLASMA_enum side, PLASMA_enum trans,
1063  int m1, int n1, int m2, int n2, int k, int ib, int nb,
1064  double *A1, int lda1,
1065  double *A2, int lda2,
1066  const double *V, int ldv,
1067  const double *T, int ldt);
1068 void QUARK_CORE_dttlqt(Quark *quark, Quark_Task_Flags *task_flags,
1069  int m, int n, int ib, int nb,
1070  double *A1, int lda1,
1071  double *A2, int lda2,
1072  double *T, int ldt);
1073 void QUARK_CORE_dpamm(Quark *quark, Quark_Task_Flags *task_flags,
1074  int op, PLASMA_enum side, PLASMA_enum storev,
1075  int m, int n, int k, int l,
1076  const double *A1, int lda1,
1077  double *A2, int lda2,
1078  const double *V, int ldv,
1079  double *W, int ldw);
1080 void QUARK_CORE_dplssq( Quark *quark, Quark_Task_Flags *task_flags,
1081  int m, const double *A, double *result );
1082 void QUARK_CORE_dormlq(Quark *quark, Quark_Task_Flags *task_flags,
1083  PLASMA_enum side, PLASMA_enum trans,
1084  int m, int n, int ib, int nb, int k,
1085  const double *A, int lda,
1086  const double *T, int ldt,
1087  double *C, int ldc);
1088 void QUARK_CORE_dormqr(Quark *quark, Quark_Task_Flags *task_flags,
1089  PLASMA_enum side, PLASMA_enum trans,
1090  int m, int n, int k, int ib, int nb,
1091  const double *A, int lda,
1092  const double *T, int ldt,
1093  double *C, int ldc);
1094 
1095 
1096 void QUARK_CORE_dlascl(Quark *quark, Quark_Task_Flags *task_flags,
1097  PLASMA_enum type, int kl, int ku, double cfrom, double cto,
1098  int m, int n, double *A, int lda);
1099 void QUARK_CORE_dlascl_p2f1(Quark *quark, Quark_Task_Flags *task_flags,
1100  PLASMA_enum type, int kl, int ku, double *cfrom, double *cto,
1101  int m, int n, double *A, int lda,
1102  void *fake, int szefake, int flag);
1103 void QUARK_CORE_dlaed0_lascl( Quark *quark, Quark_Task_Flags *task_flags,
1104  int n, double *scale, double *D, double *E);
1105 void QUARK_CORE_dlaed0_betaapprox(Quark *quark, Quark_Task_Flags *task_flags,
1106  int subpbs, const int *subpbs_info,
1107  double *D, const double *E);
1108 
1109 #ifndef COMPLEX
1110 void QUARK_CORE_dlaed2_computeK(Quark *quark, Quark_Task_Flags *task_flags,
1111  int *K1, int n, int n1,
1112  double *beta, double *D, double *Q, int LDQ,
1113  double *Z, double *DLAMBDA, double *W,
1114  int *INDX, int *INDXC, int *INDXP, int *INDXQ,
1115  int *COLTYP,
1116  double **Qmerge, int wsmode,
1117  int *K2);
1118 
1119 void QUARK_CORE_dlaed1_pipelined(Quark *quark, Quark_Task_Flags *task_flags,
1120  int n, int n1, const int *K,
1121  const int *INDX, const int *ctot,
1122  double *D, const double *beta,
1123  double *Q, int LDQ, double *Q2,
1124  const double *DLAMBDA, const double *W, double *Wred,
1125  int start, int end);
1126 void QUARK_CORE_dlaed2_compressq(Quark *quark, Quark_Task_Flags *task_flags,
1127  int n, int n1, int start, int end,
1128  const int *INDX, const int *ctot,
1129  const double *Q, int LDQ,
1130  double *Q2, int *K);
1131 void QUARK_CORE_dlaed4_p2f1(Quark *quark, Quark_Task_Flags *task_flags,
1132  int n, const int *K,
1133  double *D, const double *beta,
1134  double **Q, const int *LDQ,
1135  const double *DLAMBDA, const double *W, const int *INDX,
1136  int start, int end,
1137  PLASMA_sequence *sequence, PLASMA_request *request,
1138  void *fakeQ, int flagfQ);
1139 void QUARK_CORE_dlaed3_compW_p2f1(Quark *quark, Quark_Task_Flags *task_flags,
1140  int n, const int *K,
1141  double **Q, const int *LDQ,
1142  const double *DLAMBDA, double *W,
1143  const int *INDX,
1144  int start, int end,
1145  void *fakeQ, int flagfQ,
1146  void *fakeW, int flagfW);
1147 
1148 void QUARK_CORE_dlaed3_reduceW(Quark *quark, Quark_Task_Flags *task_flags,
1149  int n, int n1, const int *K, int l,
1150  const double *Q, int LDQ,
1151  const double *Wred, double *W);
1152 void QUARK_CORE_dlaed3_reduceW_p2(Quark *quark, Quark_Task_Flags *task_flags,
1153  int n, int n1, const int *K, int l,
1154  double **Q, const int *LDQ,
1155  const double *Wred, double *W);
1156 
1157 void QUARK_CORE_dlaed2_copydef(Quark *quark, Quark_Task_Flags *task_flags,
1158  int n, int n1, const int *K, const int *ctot,
1159  double *Q, int LDQ, const double *Q2,
1160  int start, int end);
1161 void QUARK_CORE_dlaed3_computevectors(Quark *quark, Quark_Task_Flags *task_flags,
1162  int wsmode, int n, const int *K,
1163  const int *il_nondef, const int *iu_nondef,
1164  double *Q, int LDQ, double *W, const int *INDXC,
1165  double **WSglobal, double **WSlocal,
1166  int start, int end );
1167 void QUARK_CORE_dlaed3_wscopy( Quark *quark, Quark_Task_Flags *task_flags,
1168  const int *K, const int *il_nondef, const int *iu_nondef,
1169  const double *Q, int LDQ, double **WORK,
1170  int start, int end );
1171 void QUARK_CORE_dlaed3_updatevectors(Quark *quark, Quark_Task_Flags *task_flags,
1172  int oper, int wsmode, int n, int n1, int *K,
1173  int *il_nondef, int *iu_nondef,
1174  double *D, double *Q, int LDQ, double *Q2,
1175  int *INDXQ, int *COLTYP, double **WORK,
1176  int start, int end, double **WORKDEP);
1177 void QUARK_CORE_dlaed3_pipelined(Quark *quark, Quark_Task_Flags *task_flags,
1178  int n, int n1, int *K, int *il_nondef, int *iu_nondef,
1179  double *D, double *Q, int LDQ, double *Q2,
1180  int *INDXC, int *INDXQ, int *COLTYP, double *W,
1181  int start, int end2);
1182 
1183 void QUARK_CORE_dDC_fakedep(Quark *quark, Quark_Task_Flags *task_flags,
1184  int nb_tasks, int nb, double *Q, int LDQ, double *W);
1185 #endif
1186 
1187 void QUARK_CORE_dswap(Quark *quark, Quark_Task_Flags *task_flags,
1188  int m, int n, double *Q,
1189  int LDQ, double *work,
1190  int *perm, int begin, int end);
1191 #ifdef COMPLEX
1192 void QUARK_CORE_dlag2z(Quark *quark, Quark_Task_Flags *task_flags,
1193  int m, int n,
1194  const double *Q, int LDQ,
1195  double *Z, int LDZ);
1196 #endif
1197 void QUARK_CORE_dlaed3_freebigwork(Quark *quark, Quark_Task_Flags *task_flags,
1198  int *K_bis, int largework, double **WORK);
1199 void QUARK_CORE_dlaset_identity(Quark *quark, Quark_Task_Flags *task_flags,
1200  int n, int start, int size,
1201  double *A);
1202 
1206 void CORE_dasum_quark(Quark *quark);
1207 void CORE_dasum_f1_quark(Quark *quark);
1208 void CORE_dgeadd_quark(Quark *quark);
1209 void CORE_dbrdalg1_quark(Quark *quark);
1210 void CORE_dgelqt_quark(Quark *quark);
1211 void CORE_dgemm_quark(Quark *quark);
1212 void CORE_dgemm_tile_quark(Quark *quark);
1213 void CORE_dgemv_quark(Quark *quark);
1214 void CORE_dgemv_tile_quark(Quark *quark);
1215 void CORE_dgeqp3_init_quark(Quark *quark);
1216 void CORE_dgeqp3_larfg_quark(Quark *quark);
1217 void CORE_dgeqp3_norms_quark(Quark *quark);
1218 void CORE_dgeqp3_pivot_quark(Quark *quark);
1219 void CORE_dgeqp3_tntpiv_quark(Quark *quark);
1220 void CORE_dgeqp3_update_quark(Quark *quark);
1221 void CORE_dgeqrt_quark(Quark *quark);
1222 void CORE_dgessm_quark(Quark *quark);
1223 void CORE_dgessq_quark(Quark *quark);
1224 void CORE_dgessq_f1_quark(Quark *quark);
1225 void CORE_dgetrf_quark(Quark *quark);
1226 void CORE_dgetrf_incpiv_quark(Quark *quark);
1227 void CORE_dgetrf_nopiv_quark(Quark* quark);
1228 void CORE_dgetrf_reclap_quark(Quark *quark);
1229 void CORE_dgetrf_rectil_quark(Quark* quark);
1230 void CORE_dgetrip_quark(Quark *quark);
1231 void CORE_dgetrip_f1_quark(Quark *quark);
1232 void CORE_dgetrip_f2_quark(Quark *quark);
1233 #ifdef COMPLEX
1234 void CORE_dsymm_quark(Quark *quark);
1235 void CORE_dsyrk_quark(Quark *quark);
1236 void CORE_dsyr2k_quark(Quark *quark);
1237 #endif
1238 void CORE_dsygst_quark(Quark *quark);
1239 void CORE_dsyrfb_quark(Quark *quark);
1240 void CORE_dhessq_quark(Quark *quark);
1241 void CORE_dhessq_f1_quark(Quark *quark);
1242 void CORE_dlacpy_quark(Quark *quark);
1243 void CORE_dlacpy_f1_quark(Quark *quark);
1244 void CORE_dlacpy_pivot_quark(Quark *quark);
1245 void CORE_dlatro_quark(Quark *quark);
1246 void CORE_dlatro_f1_quark(Quark *quark);
1247 void CORE_dlange_quark(Quark *quark);
1248 void CORE_dlange_f1_quark(Quark *quark);
1249 #ifdef COMPLEX
1250 void CORE_dlansy_quark(Quark *quark);
1251 void CORE_dlansy_f1_quark(Quark *quark);
1252 #endif
1253 void CORE_dlansy_quark(Quark *quark);
1254 void CORE_dlansy_f1_quark(Quark *quark);
1255 void CORE_dlaset_quark(Quark *quark);
1256 void CORE_dlaset2_quark(Quark *quark);
1257 void CORE_dlatro_quark(Quark *quark);
1258 void CORE_dlauum_quark(Quark *quark);
1259 void CORE_dpamm_quark(Quark *quark);
1260 void CORE_dplgsy_quark(Quark *quark);
1261 void CORE_dplgsy_quark(Quark *quark);
1262 void CORE_dplrnt_quark(Quark *quark);
1263 void CORE_dpltmg_quark(Quark *quark);
1264 void CORE_dplssq_quark(Quark *quark);
1265 void CORE_dpotrf_quark(Quark *quark);
1266 void CORE_dsetvar_quark(Quark *quark);
1267 void CORE_dshift_quark(Quark *quark);
1268 void CORE_dshiftw_quark(Quark *quark);
1269 void CORE_dssssm_quark(Quark *quark);
1270 void CORE_dsymm_quark(Quark *quark);
1271 void CORE_dsyrk_quark(Quark *quark);
1272 void CORE_dsyr2k_quark(Quark *quark);
1273 void CORE_dsyssq_quark(Quark *quark);
1274 void CORE_dsyssq_f1_quark(Quark *quark);
1275 void CORE_dswpab_quark(Quark *quark);
1276 void CORE_dswptr_ontile_quark(Quark *quark);
1277 void CORE_dtrdalg1_quark(Quark *quark);
1278 void CORE_dtrmm_quark(Quark *quark);
1279 void CORE_dtrsm_quark(Quark *quark);
1280 void CORE_dtrtri_quark(Quark *quark);
1281 void CORE_dtslqt_quark(Quark *quark);
1282 void CORE_dtsmlq_quark(Quark *quark);
1283 void CORE_dtsmlq_sytra1_quark(Quark *quark);
1284 void CORE_dtsmlq_corner_quark(Quark *quark);
1285 void CORE_dtsmqr_quark(Quark *quark);
1286 void CORE_dtsmqr_sytra1_quark(Quark *quark);
1287 void CORE_dtsmqr_corner_quark(Quark *quark);
1288 void CORE_dtsqrt_quark(Quark *quark);
1289 void CORE_dtstrf_quark(Quark *quark);
1290 void CORE_dttmqr_quark(Quark *quark);
1291 void CORE_dttqrt_quark(Quark *quark);
1292 void CORE_dttmlq_quark(Quark *quark);
1293 void CORE_dttlqt_quark(Quark *quark);
1294 void CORE_dormlq_quark(Quark *quark);
1295 void CORE_dormqr_quark(Quark *quark);
1296 void CORE_dlaswp_quark(Quark* quark);
1297 void CORE_dlaswp_f2_quark(Quark* quark);
1298 void CORE_dlaswp_ontile_quark(Quark *quark);
1299 void CORE_dlaswp_ontile_f2_quark(Quark *quark);
1300 void CORE_dlaswpc_ontile_quark(Quark *quark);
1301 void CORE_dtrmm_p2_quark(Quark* quark);
1302 void CORE_dgemm_f2_quark(Quark* quark);
1303 void CORE_dgemm_p2_quark(Quark* quark);
1304 void CORE_dgemm_p2f1_quark(Quark* quark);
1305 void CORE_dgemm_p3_quark(Quark* quark);
1306 
1307 #endif /* defined(QUARK_H) */
1308 
1309 #ifdef __cplusplus
1310 }
1311 #endif
1312 
1313 #undef COMPLEX
1314 
1315 #endif
void CORE_dsyr2k(PLASMA_enum uplo, PLASMA_enum trans, int N, int K, double alpha, const double *A, int LDA, const double *B, int LDB, double beta, double *C, int LDC)
Definition: core_dsyr2k.c:90
int CORE_dlarfx2c(PLASMA_enum uplo, double V, double TAU, double *C1, double *C2, double *C3)
Definition: core_dlarfx_tbrd.c:177
int CORE_dstedc(PLASMA_enum compz, int n, double *D, double *E, double *Z, int LDZ, double *WORK, int LWORK, int *IWORK, int LIWORK)
Definition: core_dstedc.c:85
void CORE_dplrnt(int m, int n, double *A, int lda, int bigM, int m0, int n0, unsigned long long int seed)
Definition: core_dplrnt.c:68
void CORE_dtrasm(PLASMA_enum storev, PLASMA_enum uplo, PLASMA_enum diag, int M, int N, const double *A, int lda, double *work)
Definition: core_dtrasm.c:66
int CORE_dtsmqr_sytra1(PLASMA_enum side, PLASMA_enum trans, int m1, int n1, int m2, int n2, int k, int ib, double *A1, int lda1, double *A2, int lda2, const double *V, int ldv, const double *T, int ldt, double *WORK, int ldwork)
Definition: core_dtsmqr_sytra1.c:127
int CORE_dlatro(PLASMA_enum uplo, PLASMA_enum trans, int M, int N, const double *A, int LDA, double *B, int LDB)
Definition: core_dlatro.c:80
int CORE_dlaswpc_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc)
Definition: core_dlaswp.c:296
int CORE_dsteqr(PLASMA_enum compz, int n, double *D, double *E, double *Z, int LDZ, double *WORK)
Definition: core_dsteqr.c:66
void CORE_dgbtype2cb(PLASMA_enum uplo, int N, int NB, double *A, int LDA, double *VQ, double *TAUQ, double *VP, double *TAUP, int st, int ed, int sweep, int Vblksiz, int WANTZ, double *WORK)
Definition: core_dgbtype2cb.c:126
void CORE_dpltmg_fiedler(int m, int n, const double *X, int incX, const double *Y, int incY, double *A, int lda)
Definition: core_dpltmg_fiedler.c:75
int CORE_dtsqrt(int M, int N, int IB, double *A1, int LDA1, double *A2, int LDA2, double *T, int LDT, double *TAU, double *WORK)
Definition: core_dtsqrt.c:97
void CORE_dlaed3_computevectors(int K, int il_nondef, int iu_nondef, double *Q, int LDQ, double *W, double *S, const int *INDXC, int start, int end)
Definition: core_dlaed3_computevectors.c:74
int CORE_dswptr_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc, const double *Akk, int ldak)
Definition: core_dlaswp.c:224
int CORE_dgbrce(PLASMA_enum uplo, int N, PLASMA_desc *A, double *V, double *TAU, int st, int ed, int eltsize)
Definition: core_dgbrce.c:78
int CORE_dgelqt(int M, int N, int IB, double *A, int LDA, double *T, int LDT, double *TAU, double *WORK)
Definition: core_dgelqt.c:85
int CORE_dtsmqr_corner(int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb, double *A1, int lda1, double *A2, int lda2, double *A3, int lda3, const double *V, int ldv, const double *T, int ldt, double *WORK, int ldwork)
Definition: core_dtsmqr_corner.c:130
void CORE_dlaed2_copydef(int n, int n1, int K, const int *ctot, double *Q, int LDQ, const double *Q2, int start, int end)
Definition: core_dlaed2_compressq.c:180
void CORE_dlange(int norm, int M, int N, const double *A, int LDA, double *work, double *normA)
Definition: core_dlange.c:72
void CORE_dlaed2_compressq(int n, int n1, const int *INDX, const int *ctot, const double *Q, int LDQ, double *Q2, int start, int end)
Definition: core_dlaed2_compressq.c:85
int CORE_dttmqr(PLASMA_enum side, PLASMA_enum trans, int M1, int N1, int M2, int N2, int K, int IB, double *A1, int LDA1, double *A2, int LDA2, const double *V, int LDV, const double *T, int LDT, double *WORK, int LDWORK)
Definition: core_dttmqr.c:116
int CORE_dgbelr(PLASMA_enum uplo, int N, PLASMA_desc *A, double *V, double *TAU, int st, int ed, int eltsize)
Definition: core_dgbelr.c:81
void CORE_dpltmg_toeppd1(int gM, int m0, int M, double *W, unsigned long long int seed)
Definition: core_dpltmg_toeppd.c:70
void CORE_dlarfy(int N, double *A, int LDA, const double *V, const double *TAU, double *WORK)
Definition: core_dlarfy.c:61
int CORE_dpltmg_chebvand(int M, int N, double *A, int LDA, int gN, int m0, int n0, double *W)
Definition: core_dpltmg_chebvand.c:83
int CORE_dpltmg(PLASMA_enum mtxtype, int m, int n, double *A, int lda, int gM, int gN, int m0, int n0, unsigned long long int seed)
Definition: core_dpltmg.c:90
int CORE_dpamm(int op, PLASMA_enum side, PLASMA_enum storev, int M, int N, int K, int L, const double *A1, int LDA1, double *A2, int LDA2, const double *V, int LDV, double *W, int LDW)
Definition: core_dpamm.c:175
void CORE_dlantr(PLASMA_enum norm, PLASMA_enum uplo, PLASMA_enum diag, int M, int N, const double *A, int LDA, double *work, double *normA)
Definition: core_dlantr.c:86
int CORE_dtstrf(int M, int N, int IB, int NB, double *U, int LDU, double *A, int LDA, double *L, int LDL, int *IPIV, double *WORK, int LDWORK, int *INFO)
Definition: core_dtstrf.c:99
void CORE_dlaed3_updatevectors(int op, int wsmode, int n, int n1, int K, int il_nondef, int iu_nondef, double *Q, int ldq, double *Q2, const int *ctot, double *WORK, int start, int end)
Definition: core_dlaed3_updatevectors.c:95
void CORE_dpotrf(PLASMA_enum uplo, int N, double *A, int LDA, int *INFO)
Definition: core_dpotrf.c:68
int CORE_dgetrf(int M, int N, double *A, int LDA, int *IPIV, int *INFO)
Definition: core_dgetrf.c:60
void CORE_dtrdalg1(int n, int nb, double *A, int lda, double *V, double *TAU, int Vblksiz, int wantz, int i, int sweepid, int m, int grsiz, double *work)
Definition: core_dtrdalg1.c:91
int CORE_dhblrx(PLASMA_enum uplo, int N, PLASMA_desc *A, double *V, double *TAU, int st, int ed, int eltsize)
Definition: core_dhblrx.c:78
void CORE_dlaset2(PLASMA_enum uplo, int n1, int n2, double alpha, double *tileA, int ldtilea)
Definition: core_dlaset2.c:55
void CORE_dasum(int storev, PLASMA_enum uplo, int M, int N, const double *A, int lda, double *work)
Definition: core_dasum.c:61
void CORE_dtrsm(PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag, int M, int N, double alpha, const double *A, int LDA, double *B, int LDB)
Definition: core_dtrsm.c:80
void CORE_dswap(int m, int n, double *Q, int ldq, const double *work, const int *perm, int start, int end)
Definition: core_dswap.c:67
int CORE_dgblrx(PLASMA_enum uplo, int N, PLASMA_desc *A, double *V, double *TAU, int st, int ed, int eltsize)
Definition: core_dgblrx.c:80
int CORE_dtradd(PLASMA_enum uplo, PLASMA_enum trans, int M, int N, double alpha, const double *A, int LDA, double beta, double *B, int LDB)
Definition: core_dtradd.c:86
void CORE_dsbtype1cb(int N, int NB, double *A, int LDA, double *V, double *TAU, int st, int ed, int sweep, int Vblksiz, int WANTZ, double *WORK)
Definition: core_dsbtype1cb.c:97
int CORE_dgetrf_reclap(CORE_dgetrf_data_t *data, int M, int N, double *A, int LDA, int *IPIV, int *info)
Definition: core_dgetrf_reclap.c:125
Definition: plasma.h:34
void CORE_dlauum(PLASMA_enum uplo, int N, double *A, int LDA)
Definition: core_dlauum.c:57
int CORE_dormlq(PLASMA_enum side, PLASMA_enum trans, int M, int N, int IB, int K, const double *V, int LDV, const double *T, int LDT, double *C, int LDC, double *WORK, int LDWORK)
Definition: core_dormlq.c:108
void CORE_dsymm(PLASMA_enum side, PLASMA_enum uplo, int M, int N, double alpha, const double *A, int LDA, const double *B, int LDB, double beta, double *C, int LDC)
Definition: core_dsymm.c:88
int CORE_dtsmlq(PLASMA_enum side, PLASMA_enum trans, int M1, int N1, int M2, int N2, int K, int IB, double *A1, int LDA1, double *A2, int LDA2, const double *V, int LDV, const double *T, int LDT, double *WORK, int LDWORK)
Definition: core_dtsmlq.c:124
void CORE_dlaset(PLASMA_enum uplo, int n1, int n2, double alpha, double beta, double *tileA, int ldtilea)
Definition: core_dlaset.c:57
void CORE_dbrdalg1(PLASMA_enum uplo, int n, int nb, double *A, int lda, double *VQ, double *TAUQ, double *VP, double *TAUP, int Vblksiz, int wantz, int i, int sweepid, int m, int grsiz, double *work)
Definition: core_dbrdalg1.c:111
Definition: core_dgetrf_reclap.c:24
void CORE_dshiftw(int s, int cl, int m, int n, int L, double *A, double *W)
Definition: core_dshift.c:66
void CORE_dtrmm(PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag, int M, int N, double alpha, const double *A, int LDA, double *B, int LDB)
Definition: core_dtrmm.c:84
int CORE_dtsmlq_sytra1(PLASMA_enum side, PLASMA_enum trans, int m1, int n1, int m2, int n2, int k, int ib, double *A1, int lda1, double *A2, int lda2, const double *V, int ldv, const double *T, int ldt, double *WORK, int ldwork)
Definition: core_dtsmlq_sytra1.c:125
void CORE_dgemm(PLASMA_enum transA, PLASMA_enum transB, int M, int N, int K, double alpha, const double *A, int LDA, const double *B, int LDB, double beta, double *C, int LDC)
Definition: core_dgemm.c:90
void CORE_dgbtype3cb(PLASMA_enum uplo, int N, int NB, double *A, int LDA, double *VQ, double *TAUQ, double *VP, double *TAUP, int st, int ed, int sweep, int Vblksiz, int WANTZ, double *WORK)
Definition: core_dgbtype3cb.c:121
int CORE_dgetf2_nopiv(int m, int n, double *A, int lda)
Definition: core_dgetf2_nopiv.c:64
void CORE_dgeqp3_norms(PLASMA_desc A, int ioff, int joff, double *norms1, double *norms2)
Definition: core_dgeqp3_norms.c:62
int CORE_dtsmlq_corner(int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb, double *A1, int lda1, double *A2, int lda2, double *A3, int lda3, const double *V, int ldv, const double *T, int ldt, double *WORK, int ldwork)
Definition: core_dtsmlq_corner.c:130
int CORE_dgetrf_nopiv(int m, int n, int ib, double *A, int lda)
Definition: core_dgetrf_nopiv.c:69
int CORE_dhbelr(PLASMA_enum uplo, int N, PLASMA_desc *A, double *V, double *TAU, int st, int ed, int eltsize)
Definition: core_dhbelr.c:80
int CORE_dlascal(PLASMA_enum uplo, int m, int n, double alpha, double *A, int lda)
Definition: core_dlascal.c:52
int CORE_dlarfb_gemm(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev, int M, int N, int K, const double *V, int LDV, const double *T, int LDT, double *C, int LDC, double *WORK, int LDWORK)
Definition: core_dlarfb_gemm.c:113
void CORE_dgetrip(int m, int n, double *A, double *work)
Definition: core_dgetrip.c:51
void CORE_dlaed2_computeK(int *K, int n, int n1, double *beta, double *D, double *Q, int LDQ, double *Z, double *DLAMBDA, double *W, int *INDX, int *INDXC, int *INDXP, int *INDXQ, int *COLTYP)
Definition: core_dlaed2_computeK.c:104
int CORE_dgeadd(PLASMA_enum trans, int M, int N, double alpha, const double *A, int LDA, double beta, double *B, int LDB)
Definition: core_dgeadd.c:75
void CORE_dgeqp3_update(const double *Ajj, int lda1, double *Ajk, int lda2, const double *Fk, int ldf, int joff, int k, int koff, int nb, double *norms1, double *norms2, int *info)
Definition: core_dgeqp3_update.c:82
void CORE_dlaed3_merge(int n, int K, double *D, int *INDXQ)
Definition: core_dlaed3_merge.c:46
int CORE_dgetrf_rectil(CORE_dgetrf_data_t *data, const PLASMA_desc A, int *IPIV, int *info)
Definition: core_dgetrf_rectil.c:122
void CORE_dlaed3_reduceW(int n, int n1, int K, int l, const double *Q, int LDQ, const double *Wred, double *W)
Definition: core_dlaed3_reduceW.c:60
int CORE_dlacpy_pivot(const PLASMA_desc descA, PLASMA_enum direct, int k1, int k2, const int *ipiv, int *rankin, int *rankout, double *A, int lda, int init)
Definition: core_dlacpy_pivot.c:84
int CORE_dlaed4(int n, int K, double *D, double beta, double *Q, int LDQ, const double *D0, const double *Z, const int *INDX, int start, int end)
Definition: core_dlaed4.c:75
int CORE_dsyrfb(PLASMA_enum uplo, int N, int K, int IB, int NB, const double *A, int LDA, const double *T, int LDT, double *C, int LDC, double *WORK, int LDWORK)
Definition: core_dsyrfb.c:110
int CORE_dttmlq(PLASMA_enum side, PLASMA_enum trans, int M1, int N1, int M2, int N2, int K, int IB, double *A1, int LDA1, double *A2, int LDA2, const double *V, int LDV, const double *T, int LDT, double *WORK, int LDWORK)
Definition: core_dttmlq.c:116
void CORE_dlaswp(int N, double *A, int LDA, int I1, int I2, const int *IPIV, int INC)
Definition: core_dlaswp.c:62
void CORE_dgeqp3_pivot(PLASMA_desc A, double *F, int ldf, int jj, int k, int *jpvt, double *norms1, double *norms2, int *info)
Definition: core_dgeqp3_pivot.c:68
int CORE_dlarfx2ce(PLASMA_enum uplo, double *V, double *TAU, double *C1, double *C2, double *C3)
Definition: core_dlarfx_tbrd.c:323
int CORE_dgetrf_incpiv(int M, int N, int IB, double *A, int LDA, int *IPIV, int *INFO)
Definition: core_dgetrf_incpiv.c:83
int CORE_dpltmg_circul(int M, int N, double *A, int LDA, int gM, int m0, int n0, const double *V)
Definition: core_dpltmg_circul.c:76
void CORE_dpltmg_condexq(int M, int N, double *Q, int LDQ)
Definition: core_dpltmg_condex.c:53
void CORE_dlaed0_betaapprox(int subpbs, const int *subpbs_info, double *D, const double *E)
Definition: core_dlaed0_betaapprox.c:49
void CORE_dsygst(int itype, PLASMA_enum uplo, int N, double *A, int LDA, double *B, int LDB, int *INFO)
Definition: core_dsygst.c:80
Definition: plasma.h:24
void CORE_dgbtype1cb(PLASMA_enum uplo, int N, int NB, double *A, int LDA, double *VQ, double *TAUQ, double *VP, double *TAUP, int st, int ed, int sweep, int Vblksiz, int WANTZ, double *WORK)
Definition: core_dgbtype1cb.c:121
int CORE_dpemv(PLASMA_enum trans, PLASMA_enum storev, int M, int N, int L, double ALPHA, const double *A, int LDA, const double *X, int INCX, double BETA, double *Y, int INCY, double *WORK)
Definition: core_dpemv.c:118
void CORE_dlacpy(PLASMA_enum uplo, int M, int N, const double *A, int LDA, double *B, int LDB)
Definition: core_dlacpy.c:59
void CORE_dsyrk(PLASMA_enum uplo, PLASMA_enum trans, int N, int K, double alpha, const double *A, int LDA, double beta, double *C, int LDC)
Definition: core_dsyrk.c:80
void CORE_dgeqp3_larfg(PLASMA_desc A, int ii, int jj, int i, int j, double *tau, double *beta)
Definition: core_dgeqp3_larfg.c:78
int CORE_dlag2z(int m, int n, const double *R, int ldr, PLASMA_Complex64_t *Z, int ldz)
Definition: core_dlag2z.c:58
int CORE_dhbrce(PLASMA_enum uplo, int N, PLASMA_desc *A, double *V, double *TAU, int st, int ed, int eltsize)
Definition: core_dhbrce.c:78
void CORE_dsbtype2cb(int N, int NB, double *A, int LDA, double *V, double *TAU, int st, int ed, int sweep, int Vblksiz, int WANTZ, double *WORK)
Definition: core_dsbtype2cb.c:101
int CORE_dgessm(int M, int N, int K, int IB, const int *IPIV, const double *L, int LDL, double *A, int LDA)
Definition: core_dgessm.c:70
void CORE_dgeqp3_init(int n, int *jpvt)
Definition: core_dgeqp3_init.c:38
int CORE_dttlqt(int M, int N, int IB, double *A1, int LDA1, double *A2, int LDA2, double *T, int LDT, double *TAU, double *WORK)
Definition: core_dttlqt.c:116
int CORE_dormqr(PLASMA_enum side, PLASMA_enum trans, int M, int N, int K, int IB, const double *V, int LDV, const double *T, int LDT, double *C, int LDC, double *WORK, int LDWORK)
Definition: core_dormqr.c:108
int CORE_dparfb(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev, int M1, int N1, int M2, int N2, int K, int L, double *A1, int LDA1, double *A2, int LDA2, const double *V, int LDV, const double *T, int LDT, double *WORK, int LDWORK)
Definition: core_dparfb.c:132
int CORE_dssssm(int M1, int N1, int M2, int N2, int K, int IB, double *A1, int LDA1, double *A2, int LDA2, const double *L1, int LDL1, const double *L2, int LDL2, const int *IPIV)
Definition: core_dssssm.c:94
void CORE_dsetvar(const double *alpha, double *x)
Definition: core_dsetvar.c:37
void CORE_dlaed3_computeW(int n, int K, const double *Q, int LDQ, const double *DLAMBDA, double *W, const int *INDX, int start, int end)
Definition: core_dlaed3_computeW.c:66
int CORE_dtslqt(int M, int N, int IB, double *A1, int LDA1, double *A2, int LDA2, double *T, int LDT, double *TAU, double *WORK)
Definition: core_dtslqt.c:107
Definition: descriptor.h:41
void CORE_dplgsy(double bump, int m, int n, double *A, int lda, int bigM, int m0, int n0, unsigned long long int seed)
Definition: core_dplgsy.c:72
int CORE_dgeqrt(int M, int N, int IB, double *A, int LDA, double *T, int LDT, double *TAU, double *WORK)
Definition: core_dgeqrt.c:86
void CORE_dswpab(int i, int n1, int n2, double *A, double *work)
Definition: core_dswpab.c:63
int CORE_dtsmqr(PLASMA_enum side, PLASMA_enum trans, int M1, int N1, int M2, int N2, int K, int IB, double *A1, int LDA1, double *A2, int LDA2, const double *V, int LDV, const double *T, int LDT, double *WORK, int LDWORK)
Definition: core_dtsmqr.c:124
int CORE_dpltmg_hankel(PLASMA_enum uplo, int M, int N, double *A, int LDA, int m0, int n0, int nb, const double *V1, const double *V2)
Definition: core_dpltmg_hankel.c:88
void CORE_dsbtype3cb(int N, int NB, double *A, int LDA, const double *V, const double *TAU, int st, int ed, int sweep, int Vblksiz, int WANTZ, double *WORK)
Definition: core_dsbtype3cb.c:98
int CORE_dlaswp_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc)
Definition: core_dlaswp.c:107
void CORE_dtrtri(PLASMA_enum uplo, PLASMA_enum diag, int N, double *A, int LDA, int *info)
Definition: core_dtrtri.c:66
void CORE_dpltmg_toeppd2(int M, int N, int K, int m0, int n0, const double *W, double *A, int LDA)
Definition: core_dpltmg_toeppd.c:149
int CORE_dttqrt(int M, int N, int IB, double *A1, int LDA1, double *A2, int LDA2, double *T, int LDT, double *TAU, double *WORK)
Definition: core_dttqrt.c:116
int CORE_dlarfx2(PLASMA_enum side, int N, double V, double TAU, double *C1, int LDC1, double *C2, int LDC2)
Definition: core_dlarfx_tbrd.c:82
void CORE_dgemv(PLASMA_enum trans, int M, int N, double alpha, const double *A, int LDA, const double *x, int incx, double beta, double *y, int incy)
Definition: core_dgemv.c:78
void CORE_dlansy(int norm, PLASMA_enum uplo, int N, const double *A, int LDA, double *work, double *normA)
Definition: core_dlansy.c:74
int CORE_dlascl(PLASMA_enum type, int kl, int ku, double cfrom, double cto, int m, int n, double *A, int lda)
Definition: core_dlascl.c:77