PLASMA: /home/mathieu/svn/plasma/trunk/tools/plasma_2.5.0/include/core_dblas.h Source File

PLASMA 2.4.6

- Main Page
- Modules
- Data Types List

All Data Structures Functions Groups
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
30 void CORE_dasum(int storev, PLASMA_enum uplo, int M, int N,
31 const double *A, int lda, double *work);
32 void CORE_dbrdalg(PLASMA_enum uplo, int N, int NB,
33 const PLASMA_desc *pA, double *C, double *S,
34 int i, int j, int m, int grsiz);
35 int CORE_dgbelr(PLASMA_enum uplo, int N,
36 PLASMA_desc *A, double *V, double *TAU,
37 int st, int ed, int eltsize);
38 int CORE_dgbrce(PLASMA_enum uplo, int N,
39 PLASMA_desc *A, double *V, double *TAU,
40 int st, int ed, int eltsize);
41 int CORE_dgblrx(PLASMA_enum uplo, int N,
42 PLASMA_desc *A, double *V, double *TAU,
43 int st, int ed, int eltsize);
44 int CORE_dgeadd(int M, int N, double alpha,
45 const double *A, int LDA,
46 double *B, int LDB);
47 int CORE_dgelqt(int M, int N, int IB,
48 double *A, int LDA,
49 double *T, int LDT,
50 double *TAU,
51 double *WORK);
52 void CORE_dgemm(PLASMA_enum transA, PLASMA_enum transB,
53 int M, int N, int K,
54 double alpha, const double *A, int LDA,
55 const double *B, int LDB,
56 double beta, double *C, int LDC);
57 int CORE_dgeqrt(int M, int N, int IB,
58 double *A, int LDA,
59 double *T, int LDT,
60 double *TAU, double *WORK);
61 int CORE_dgessm(int M, int N, int K, int IB,
62 const int *IPIV,
63 const double *L, int LDL,
64 double *A, int LDA);
65 int CORE_dgessq(int M, int N,
66 const double *A, int LDA,
67 double *scale, double *sumsq);
68 int CORE_dgetrf(int M, int N,
69 double *A, int LDA,
70 int *IPIV, int *INFO);
71 int CORE_dgetrf_incpiv(int M, int N, int IB,
72 double *A, int LDA,
73 int *IPIV, int *INFO);
74 int CORE_dgetrf_reclap(int M, int N,
75 double *A, int LDA,
76 int *IPIV, int *info);
77 int CORE_dgetrf_rectil(const PLASMA_desc A, int *IPIV, int *info);
78 void CORE_dgetrip(int m, int n, double *A,
79 double *work);
80 int CORE_dhbelr(PLASMA_enum uplo, int N,
81 PLASMA_desc *A, double *V, double *TAU,
82 int st, int ed, int eltsize);
83 int CORE_dhblrx(PLASMA_enum uplo, int N,
84 PLASMA_desc *A, double *V, double *TAU,
85 int st, int ed, int eltsize);
86 int CORE_dhbrce(PLASMA_enum uplo, int N,
87 PLASMA_desc *A, double *V, double *TAU,
88 int st, int ed, int eltsize);
89 void CORE_dsbtype1cb(int N, int NB,
90 double *A, int LDA,
91 double *V, double *TAU,
92 int st, int ed, int sweep, int Vblksiz, int WANTZ,
93 double *WORK);
94 void CORE_dsbtype2cb(int N, int NB,
95 double *A, int LDA,
96 double *V, double *TAU,
97 int st, int ed, int sweep, int Vblksiz, int WANTZ,
98 double *WORK);
99 void CORE_dsbtype3cb(int N, int NB,
100 double *A, int LDA,
101 const double *V, const double *TAU,
102 int st, int ed, int sweep, int Vblksiz, int WANTZ,
103 double *WORK);
104 void CORE_dsygst(int itype, PLASMA_enum uplo, int N,
105 double *A, int LDA,
106 double *B, int LDB, int *INFO);
107 #ifdef COMPLEX
108 void CORE_dsymm(PLASMA_enum side, PLASMA_enum uplo,
109 int M, int N,
110 double alpha, const double *A, int LDA,
111 const double *B, int LDB,
112 double beta, double *C, int LDC);
113 void CORE_dsyrk(PLASMA_enum uplo, PLASMA_enum trans,
114 int N, int K,
115 double alpha, const double *A, int LDA,
116 double beta, double *C, int LDC);
117 void CORE_dsyr2k(PLASMA_enum uplo, PLASMA_enum trans,
118 int N, int K,
119 double alpha, const double *A, int LDA,
120 const double *B, int LDB,
121 double beta, double *C, int LDC);
122 int CORE_dhessq(PLASMA_enum uplo, int N,
123 const double *A, int LDA,
124 double *scale, double *sumsq);
125 #endif
126 int CORE_dsyrfb(PLASMA_enum uplo, int N, int K, int IB, int NB,
127 const double *A, int LDA,
128 const double *T, int LDT,
129 double *C, int LDC,
130 double *WORK, int LDWORK);
131 void CORE_dlacpy(PLASMA_enum uplo, int M, int N,
132 const double *A, int LDA,
133 double *B, int LDB);
134 void CORE_dlange(int norm, int M, int N,
135 const double *A, int LDA,
136 double *work, double *normA);
137 #ifdef COMPLEX
138 void CORE_dlansy(int norm, PLASMA_enum uplo, int N,
139 const double *A, int LDA,
140 double *work, double *normA);
141 #endif
142 void CORE_dlansy(int norm, PLASMA_enum uplo, int N,
143 const double *A, int LDA,
144 double *work, double *normA);
145 int CORE_dlarfb_gemm(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev,
146 int M, int N, int K,
147 const double *V, int LDV,
148 const double *T, int LDT,
149 double *C, int LDC,
150 double *WORK, int LDWORK);
151 int CORE_dlarfx2(PLASMA_enum side, int N,
152 double V,
153 double TAU,
154 double *C1, int LDC1,
155 double *C2, int LDC2);
156 int CORE_dlarfx2c(PLASMA_enum uplo,
157 double V,
158 double TAU,
159 double *C1,
160 double *C2,
161 double *C3);
162 int CORE_dlarfx2ce(PLASMA_enum uplo,
163 double *V,
164 double *TAU,
165 double *C1,
166 double *C2,
167 double *C3);
168 void CORE_dlarfy(int N,
169 double *A, int LDA,
170 const double *V,
171 const double *TAU,
172 double *WORK);
173 void CORE_dlaset(PLASMA_enum uplo, int n1, int n2,
174 double alpha, double beta,
175 double *tileA, int ldtilea);
176 void CORE_dlaset2(PLASMA_enum uplo, int n1, int n2, double alpha,
177 double *tileA, int ldtilea);
178 void CORE_dlaswp(int N, double *A, int LDA,
179 int I1, int I2, const int *IPIV, int INC);
180 int CORE_dlaswp_ontile( PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc);
181 int CORE_dlaswpc_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc);
182 int CORE_dlatro(PLASMA_enum uplo, PLASMA_enum trans,
183 int M, int N,
184 const double *A, int LDA,
185 double *B, int LDB);
186 void CORE_dlauum(PLASMA_enum uplo, int N, double *A, int LDA);
187 int CORE_dpamm(int op, PLASMA_enum side, PLASMA_enum storev,
188 int M, int N, int K, int L,
189 const double *A1, int LDA1,
190 double *A2, int LDA2,
191 const double *V, int LDV,
192 double *W, int LDW);
193 int CORE_dparfb(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev,
194 int M1, int N1, int M2, int N2, int K, int L,
195 double *A1, int LDA1,
196 double *A2, int LDA2,
197 const double *V, int LDV,
198 const double *T, int LDT,
199 double *WORK, int LDWORK);
200 int CORE_dpemv(PLASMA_enum trans, PLASMA_enum storev,
201 int M, int N, int L,
202 double ALPHA,
203 const double *A, int LDA,
204 const double *X, int INCX,
205 double BETA,
206 double *Y, int INCY,
207 double *WORK);
208 void CORE_dplgsy(double bump, int m, int n, double *A, int lda,
209 int bigM, int m0, int n0, unsigned long long int seed );
210 void CORE_dplgsy(double bump, int m, int n, double *A, int lda,
211 int bigM, int m0, int n0, unsigned long long int seed );
212 void CORE_dplrnt(int m, int n, double *A, int lda,
213 int bigM, int m0, int n0, unsigned long long int seed );
214 void CORE_dpotrf(PLASMA_enum uplo, int N, double *A, int LDA, int *INFO);
215 void CORE_dshift(int s, int m, int n, int L,
216 double *A);
217 void CORE_dshiftw(int s, int cl, int m, int n, int L,
218 double *A, double *W);
219 int CORE_dssssm(int M1, int N1, int M2, int N2, int K, int IB,
220 double *A1, int LDA1,
221 double *A2, int LDA2,
222 const double *L1, int LDL1,
223 const double *L2, int LDL2,
224 const int *IPIV);
225 void CORE_dsymm(PLASMA_enum side, PLASMA_enum uplo,
226 int M, int N,
227 double alpha, const double *A, int LDA,
228 const double *B, int LDB,
229 double beta, double *C, int LDC);
230 void CORE_dsyrk(PLASMA_enum uplo, PLASMA_enum trans,
231 int N, int K,
232 double alpha, const double *A, int LDA,
233 double beta, double *C, int LDC);
234 void CORE_dsyr2k(PLASMA_enum uplo, PLASMA_enum trans,
235 int N, int K,
236 double alpha, const double *A, int LDA,
237 const double *B, int LDB,
238 double beta, double *C, int LDC);
239 int CORE_dsyssq(PLASMA_enum uplo, int N,
240 const double *A, int LDA,
241 double *scale, double *sumsq);
242 void CORE_dswpab(int i, int n1, int n2,
243 double *A, double *work);
244 int CORE_dswptr_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc,
245 const double *Akk, int ldak);
246 void CORE_dtrdalg(PLASMA_enum uplo, int N, int NB,
247 const PLASMA_desc *pA, double *V, double *TAU,
248 int i, int j, int m, int grsiz);
249 void CORE_dtrmm(PLASMA_enum side, PLASMA_enum uplo,
250 PLASMA_enum transA, PLASMA_enum diag,
251 int M, int N,
252 double alpha, const double *A, int LDA,
253 double *B, int LDB);
254 void CORE_dtrsm(PLASMA_enum side, PLASMA_enum uplo,
255 PLASMA_enum transA, PLASMA_enum diag,
256 int M, int N,
257 double alpha, const double *A, int LDA,
258 double *B, int LDB);
259 void CORE_dtrtri(PLASMA_enum uplo, PLASMA_enum diag, int N,
260 double *A, int LDA, int *info);
261 int CORE_dtslqt(int M, int N, int IB,
262 double *A1, int LDA1,
263 double *A2, int LDA2,
264 double *T, int LDT,
265 double *TAU, double *WORK);
266 int CORE_dtsmlq(PLASMA_enum side, PLASMA_enum trans,
267 int M1, int N1, int M2, int N2, int K, int IB,
268 double *A1, int LDA1,
269 double *A2, int LDA2,
270 const double *V, int LDV,
271 const double *T, int LDT,
272 double *WORK, int LDWORK);
273 int CORE_dtsmlq_corner( int m1, int n1, int m2, int n2, int m3, int n3,
274 int k, int ib, int nb,
275 double *A1, int lda1,
276 double *A2, int lda2,
277 double *A3, int lda3,
278 const double *V, int ldv,
279 const double *T, int ldt,
280 double *WORK, int ldwork);
281 int CORE_dtsmlq_sytra1( PLASMA_enum side, PLASMA_enum trans,
282 int m1, int n1, int m2, int n2,
283 int k, int ib,
284 double *A1, int lda1,
285 double *A2, int lda2,
286 const double *V, int ldv,
287 const double *T, int ldt,
288 double *WORK, int ldwork);
289 int CORE_dtsmqr(PLASMA_enum side, PLASMA_enum trans,
290 int M1, int N1, int M2, int N2, int K, int IB,
291 double *A1, int LDA1,
292 double *A2, int LDA2,
293 const double *V, int LDV,
294 const double *T, int LDT,
295 double *WORK, int LDWORK);
296 int CORE_dtsmqr_corner( int m1, int n1, int m2, int n2, int m3, int n3,
297 int k, int ib, int nb,
298 double *A1, int lda1,
299 double *A2, int lda2,
300 double *A3, int lda3,
301 const double *V, int ldv,
302 const double *T, int ldt,
303 double *WORK, int ldwork);
304 int CORE_dtsmqr_sytra1( PLASMA_enum side, PLASMA_enum trans,
305 int m1, int n1, int m2, int n2,
306 int k, int ib,
307 double *A1, int lda1,
308 double *A2, int lda2,
309 const double *V, int ldv,
310 const double *T, int ldt,
311 double *WORK, int ldwork);
312 int CORE_dtsqrt(int M, int N, int IB,
313 double *A1, int LDA1,
314 double *A2, int LDA2,
315 double *T, int LDT,
316 double *TAU, double *WORK);
317 int CORE_dtstrf(int M, int N, int IB, int NB,
318 double *U, int LDU,
319 double *A, int LDA,
320 double *L, int LDL,
321 int *IPIV, double *WORK,
322 int LDWORK, int *INFO);
323 int CORE_dttmqr(PLASMA_enum side, PLASMA_enum trans,
324 int M1, int N1, int M2, int N2, int K, int IB,
325 double *A1, int LDA1,
326 double *A2, int LDA2,
327 const double *V, int LDV,
328 const double *T, int LDT,
329 double *WORK, int LDWORK);
330 int CORE_dttqrt(int M, int N, int IB,
331 double *A1, int LDA1,
332 double *A2, int LDA2,
333 double *T, int LDT,
334 double *TAU,
335 double *WORK);
336 int CORE_dttmlq(PLASMA_enum side, PLASMA_enum trans,
337 int M1, int N1, int M2, int N2, int K, int IB,
338 double *A1, int LDA1,
339 double *A2, int LDA2,
340 const double *V, int LDV,
341 const double *T, int LDT,
342 double *WORK, int LDWORK);
343 int CORE_dttlqt(int M, int N, int IB,
344 double *A1, int LDA1,
345 double *A2, int LDA2,
346 double *T, int LDT,
347 double *TAU,
348 double *WORK);
349 int CORE_dormlq(PLASMA_enum side, PLASMA_enum trans,
350 int M, int N, int IB, int K,
351 const double *V, int LDV,
352 const double *T, int LDT,
353 double *C, int LDC,
354 double *WORK, int LDWORK);
355 int CORE_dormqr(PLASMA_enum side, PLASMA_enum trans,
356 int M, int N, int K, int IB,
357 const double *V, int LDV,
358 const double *T, int LDT,
359 double *C, int LDC,
360 double *WORK, int LDWORK);
361
365 void QUARK_CORE_dasum(Quark *quark, Quark_Task_Flags *task_flags,
366 PLASMA_enum storev, PLASMA_enum uplo, int m, int n,
367 const double *A, int lda, int szeA,
368 double *work, int szeW);
369 void QUARK_CORE_dasum_f1(Quark *quark, Quark_Task_Flags *task_flags,
370 PLASMA_enum storev, PLASMA_enum uplo, int m, int n,
371 const double *A, int lda, int szeA,
372 double *work, int szeW,
373 double *fake, int szeF);
374 void QUARK_CORE_dgeadd(Quark *quark, Quark_Task_Flags *task_flags,
375 int m, int n, int nb, double alpha,
376 const double *A, int lda,
377 double *B, int ldb);
378 void QUARK_CORE_dbrdalg(Quark *quark, Quark_Task_Flags *task_flags,
379 PLASMA_enum uplo,
380 int N, int NB,
381 const PLASMA_desc *A,
382 double *C,
383 double *S,
384 int i, int j, int m, int grsiz, int BAND,
385 const int *PCOL, const int *ACOL, int *MCOL);
386 void QUARK_CORE_dgelqt(Quark *quark, Quark_Task_Flags *task_flags,
387 int m, int n, int ib, int nb,
388 double *A, int lda,
389 double *T, int ldt);
390 void QUARK_CORE_dgemm(Quark *quark, Quark_Task_Flags *task_flags,
391 PLASMA_enum transA, PLASMA_enum transB,
392 int m, int n, int k, int nb,
393 double alpha, const double *A, int lda,
394 const double *B, int ldb,
395 double beta, double *C, int ldc);
396 void QUARK_CORE_dgemm2( Quark *quark, Quark_Task_Flags *task_flags,
397 PLASMA_enum transA, PLASMA_enum transB,
398 int m, int n, int k, int nb,
399 double alpha, const double *A, int lda,
400 const double *B, int ldb,
401 double beta, double *C, int ldc);
402 void QUARK_CORE_dgemm_f2(Quark *quark, Quark_Task_Flags *task_flags,
403 PLASMA_enum transA, PLASMA_enum transB,
404 int m, int n, int k, int nb,
405 double alpha, const double *A, int lda,
406 const double *B, int ldb,
407 double beta, double *C, int ldc,
408 double *fake1, int szefake1, int flag1,
409 double *fake2, int szefake2, int flag2);
410 void QUARK_CORE_dgemm_p2(Quark *quark, Quark_Task_Flags *task_flags,
411 PLASMA_enum transA, PLASMA_enum transB,
412 int m, int n, int k, int nb,
413 double alpha, const double *A, int lda,
414 const double **B, int ldb,
415 double beta, double *C, int ldc);
416 void QUARK_CORE_dgemm_p2f1(Quark *quark, Quark_Task_Flags *task_flags,
417 PLASMA_enum transA, PLASMA_enum transB,
418 int m, int n, int k, int nb,
419 double alpha, const double *A, int lda,
420 const double **B, int ldb,
421 double beta, double *C, int ldc,
422 double *fake1, int szefake1, int flag1);
423 void QUARK_CORE_dgemm_p3(Quark *quark, Quark_Task_Flags *task_flags,
424 PLASMA_enum transA, PLASMA_enum transB,
425 int m, int n, int k, int nb,
426 double alpha, const double *A, int lda,
427 const double *B, int ldb,
428 double beta, double **C, int ldc);
429 void QUARK_CORE_dgeqrt(Quark *quark, Quark_Task_Flags *task_flags,
430 int m, int n, int ib, int nb,
431 double *A, int lda,
432 double *T, int ldt);
433 void QUARK_CORE_dgessm(Quark *quark, Quark_Task_Flags *task_flags,
434 int m, int n, int k, int ib, int nb,
435 const int *IPIV,
436 const double *L, int ldl,
437 double *A, int lda);
438 void QUARK_CORE_dgessq_f1( Quark *quark, Quark_Task_Flags *task_flags,
439 int m, int n, const double *A, int lda,
440 double *scale, double *sumsq,
441 double *fake, int szeF, int paramF );
442 void QUARK_CORE_dgetrf(Quark *quark, Quark_Task_Flags *task_flags,
443 int m, int n, int nb,
444 double *A, int lda,
445 int *IPIV,
446 PLASMA_sequence *sequence, PLASMA_request *request,
447 PLASMA_bool check_info, int iinfo);
448 void QUARK_CORE_dgetrf_incpiv(Quark *quark, Quark_Task_Flags *task_flags,
449 int m, int n, int ib, int nb,
450 double *A, int lda,
451 int *IPIV,
452 PLASMA_sequence *sequence, PLASMA_request *request,
453 PLASMA_bool check_info, int iinfo);
454 void QUARK_CORE_dgetrf_reclap(Quark *quark, Quark_Task_Flags *task_flags,
455 int m, int n, int nb,
456 double *A, int lda,
457 int *IPIV,
458 PLASMA_sequence *sequence, PLASMA_request *request,
459 PLASMA_bool check_info, int iinfo,
460 int nbthread);
461 void QUARK_CORE_dgetrf_rectil(Quark *quark, Quark_Task_Flags *task_flags,
462 PLASMA_desc A, double *Amn, int size,
463 int *IPIV,
464 PLASMA_sequence *sequence, PLASMA_request *request,
465 PLASMA_bool check_info, int iinfo,
466 int nbthread);
467 void QUARK_CORE_dgetrip(Quark *quark, Quark_Task_Flags *task_flags,
468 int m, int n, double *A, int szeA);
469 void QUARK_CORE_dgetrip_f1(Quark *quark, Quark_Task_Flags *task_flags,
470 int m, int n, double *A, int szeA,
471 double *fake, int szeF, int paramF);
472 void QUARK_CORE_dgetrip_f2(Quark *quark, Quark_Task_Flags *task_flags,
473 int m, int n, double *A, int szeA,
474 double *fake1, int szeF1, int paramF1,
475 double *fake2, int szeF2, int paramF2);
476 void QUARK_CORE_dsymm(Quark *quark, Quark_Task_Flags *task_flags,
477 PLASMA_enum side, PLASMA_enum uplo,
478 int m, int n, int nb,
479 double alpha, const double *A, int lda,
480 const double *B, int ldb,
481 double beta, double *C, int ldc);
482 void QUARK_CORE_dsygst(Quark *quark, Quark_Task_Flags *task_flags,
483 int itype, PLASMA_enum uplo, int N,
484 double *A, int LDA,
485 double *B, int LDB,
486 PLASMA_sequence *sequence, PLASMA_request *request,
487 int iinfo);
488 void QUARK_CORE_dsyrk(Quark *quark, Quark_Task_Flags *task_flags,
489 PLASMA_enum uplo, PLASMA_enum trans,
490 int n, int k, int nb,
491 double alpha, const double *A, int lda,
492 double beta, double *C, int ldc);
493 void QUARK_CORE_dsyr2k(Quark *quark, Quark_Task_Flags *task_flags,
494 PLASMA_enum uplo, PLASMA_enum trans,
495 int n, int k, int nb,
496 double alpha, const double *A, int lda,
497 const double *B, int LDB,
498 double beta, double *C, int ldc);
499 void QUARK_CORE_dsyrfb(Quark *quark, Quark_Task_Flags *task_flags,
500 PLASMA_enum uplo,
501 int n, int k, int ib, int nb,
502 const double *A, int lda,
503 const double *T, int ldt,
504 double *C, int ldc);
505 void QUARK_CORE_dhessq_f1( Quark *quark, Quark_Task_Flags *task_flags,
506 PLASMA_enum uplo, int n, const double *A, int lda,
507 double *scale, double *sumsq,
508 double *fake, int szeF, int paramF );
509 void QUARK_CORE_dlacpy(Quark *quark, Quark_Task_Flags *task_flags,
510 PLASMA_enum uplo, int m, int n, int mb,
511 const double *A, int lda,
512 double *B, int ldb);
513 void QUARK_CORE_dlange(Quark *quark, Quark_Task_Flags *task_flags,
514 int norm, int M, int N,
515 const double *A, int LDA, int szeA,
516 int szeW, double *result);
517 void QUARK_CORE_dlange_f1(Quark *quark, Quark_Task_Flags *task_flags,
518 int norm, int M, int N,
519 const double *A, int LDA, int szeA,
520 int szeW, double *result,
521 double *fake, int szeF);
522 #ifdef COMPLEX
523 void QUARK_CORE_dlansy(Quark *quark, Quark_Task_Flags *task_flags,
524 int norm, PLASMA_enum uplo, int N,
525 const double *A, int LDA, int szeA,
526 int szeW, double *result);
527 void QUARK_CORE_dlansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
528 int norm, PLASMA_enum uplo, int N,
529 const double *A, int LDA, int szeA,
530 int szeW, double *result,
531 double *fake, int szeF);
532 #endif
533 void QUARK_CORE_dlansy(Quark *quark, Quark_Task_Flags *task_flags,
534 int norm, PLASMA_enum uplo, int N,
535 const double *A, int LDA, int szeA,
536 int szeW, double *result);
537 void QUARK_CORE_dlansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
538 int norm, PLASMA_enum uplo, int N,
539 const double *A, int LDA, int szeA,
540 int szeW, double *result,
541 double *fake, int szeF);
542 void QUARK_CORE_dlaset(Quark *quark, Quark_Task_Flags *task_flags,
543 PLASMA_enum uplo, int n1, int n2, double alpha,
544 double beta, double *tileA, int ldtilea);
545 void QUARK_CORE_dlaset2(Quark *quark, Quark_Task_Flags *task_flags,
546 PLASMA_enum uplo, int n1, int n2, double alpha,
547 double *tileA, int ldtilea);
548 void QUARK_CORE_dlaswp(Quark *quark, Quark_Task_Flags *task_flags,
549 int n, double *A, int lda,
550 int i1, int i2, const int *ipiv, int inc);
551 void QUARK_CORE_dlaswp_f2(Quark *quark, Quark_Task_Flags *task_flags,
552 int n, double *A, int lda,
553 int i1, int i2, const int *ipiv, int inc,
554 double *fake1, int szefake1, int flag1,
555 double *fake2, int szefake2, int flag2);
556 void QUARK_CORE_dlaswp_ontile(Quark *quark, Quark_Task_Flags *task_flags,
557 PLASMA_desc descA, double *A,
558 int i1, int i2, const int *ipiv, int inc, double *fakepanel);
559 void QUARK_CORE_dlaswp_ontile_f2(Quark *quark, Quark_Task_Flags *task_flags,
560 PLASMA_desc descA, double *A,
561 int i1, int i2, const int *ipiv, int inc,
562 double *fake1, int szefake1, int flag1,
563 double *fake2, int szefake2, int flag2);
564 void QUARK_CORE_dlaswpc_ontile(Quark *quark, Quark_Task_Flags *task_flags,
565 PLASMA_desc descA, double *A,
566 int i1, int i2, const int *ipiv, int inc, double *fakepanel);
567 void QUARK_CORE_dlatro(Quark *quark, Quark_Task_Flags *task_flags,
568 PLASMA_enum uplo, PLASMA_enum trans, int m, int n, int mb,
569 const double *A, int lda,
570 double *B, int ldb);
571 void QUARK_CORE_dlauum(Quark *quark, Quark_Task_Flags *task_flags,
572 PLASMA_enum uplo, int n, int nb,
573 double *A, int lda);
574 void QUARK_CORE_dplgsy(Quark *quark, Quark_Task_Flags *task_flags,
575 double bump, int m, int n, double *A, int lda,
576 int bigM, int m0, int n0, unsigned long long int seed );
577 void QUARK_CORE_dplgsy(Quark *quark, Quark_Task_Flags *task_flags,
578 double bump, int m, int n, double *A, int lda,
579 int bigM, int m0, int n0, unsigned long long int seed );
580 void QUARK_CORE_dplrnt(Quark *quark, Quark_Task_Flags *task_flags,
581 int m, int n, double *A, int lda,
582 int bigM, int m0, int n0, unsigned long long int seed );
583 void QUARK_CORE_dpotrf(Quark *quark, Quark_Task_Flags *task_flags,
584 PLASMA_enum uplo, int n, int nb,
585 double *A, int lda,
586 PLASMA_sequence *sequence, PLASMA_request *request,
587 int iinfo);
588 void QUARK_CORE_dshift( Quark *quark, Quark_Task_Flags *task_flags,
589 int s, int m, int n, int L,
590 double *A);
591 void QUARK_CORE_dshiftw(Quark *quark, Quark_Task_Flags *task_flags,
592 int s, int cl, int m, int n, int L,
593 double *A, double *W);
594 void QUARK_CORE_dssssm(Quark *quark, Quark_Task_Flags *task_flags,
595 int m1, int n1, int m2, int n2, int k, int ib, int nb,
596 double *A1, int lda1,
597 double *A2, int lda2,
598 const double *L1, int ldl1,
599 const double *L2, int ldl2,
600 const int *IPIV);
601 void QUARK_CORE_dsymm(Quark *quark, Quark_Task_Flags *task_flags,
602 PLASMA_enum side, PLASMA_enum uplo,
603 int m, int n, int nb,
604 double alpha, const double *A, int lda,
605 const double *B, int ldb,
606 double beta, double *C, int ldc);
607 void QUARK_CORE_dsyrk(Quark *quark, Quark_Task_Flags *task_flags,
608 PLASMA_enum uplo, PLASMA_enum trans,
609 int n, int k, int nb,
610 double alpha, const double *A, int lda,
611 double beta, double *C, int ldc);
612 void QUARK_CORE_dsyr2k(Quark *quark, Quark_Task_Flags *task_flags,
613 PLASMA_enum uplo, PLASMA_enum trans,
614 int n, int k, int nb,
615 double alpha, const double *A, int lda,
616 const double *B, int LDB,
617 double beta, double *C, int ldc);
618 void QUARK_CORE_dsyssq_f1( Quark *quark, Quark_Task_Flags *task_flags,
619 PLASMA_enum uplo, int n, const double *A, int lda,
620 double *scale, double *sumsq,
621 double *fake, int szeF, int paramF );
622 void QUARK_CORE_dswpab(Quark *quark, Quark_Task_Flags *task_flags,
623 int i, int n1, int n2,
624 double *A, int szeA);
625 void QUARK_CORE_dswptr_ontile(Quark *quark, Quark_Task_Flags *task_flags,
626 PLASMA_desc descA, double *Aij,
627 int i1, int i2, const int *ipiv, int inc,
628 const double *Akk, int ldak);
629 void QUARK_CORE_dtrdalg(Quark *quark, Quark_Task_Flags *task_flags,
630 PLASMA_enum uplo,
631 int N, int NB,
632 const PLASMA_desc *A,
633 double *C,
634 double *S,
635 int i, int j, int m, int grsiz, int BAND,
636 const int *PCOL, const int *ACOL, int *MCOL);
637 void QUARK_CORE_dtrmm(Quark *quark, Quark_Task_Flags *task_flags,
638 PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
639 int m, int n, int nb,
640 double alpha, const double *A, int lda,
641 double *B, int ldb);
642 void QUARK_CORE_dtrmm_p2(Quark *quark, Quark_Task_Flags *task_flags,
643 PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
644 int m, int n, int nb,
645 double alpha, const double *A, int lda,
646 double **B, int ldb);
647 void QUARK_CORE_dtrsm(Quark *quark, Quark_Task_Flags *task_flags,
648 PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
649 int m, int n, int nb,
650 double alpha, const double *A, int lda,
651 double *B, int ldb);
652 void QUARK_CORE_dtrtri(Quark *quark, Quark_Task_Flags *task_flags,
653 PLASMA_enum uplo, PLASMA_enum diag, int n, int nb,
654 double *A, int lda,
655 PLASMA_sequence *sequence, PLASMA_request *request,
656 int iinfo);
657 void QUARK_CORE_dtslqt(Quark *quark, Quark_Task_Flags *task_flags,
658 int m, int n, int ib, int nb,
659 double *A1, int lda1,
660 double *A2, int lda2,
661 double *T, int ldt);
662 void QUARK_CORE_dtsmlq(Quark *quark, Quark_Task_Flags *task_flags,
663 PLASMA_enum side, PLASMA_enum trans,
664 int m1, int n1, int m2, int n2, int k, int ib, int nb,
665 double *A1, int lda1,
666 double *A2, int lda2,
667 const double *V, int ldv,
668 const double *T, int ldt);
669 void QUARK_CORE_dtsmlq_sytra1(Quark *quark, Quark_Task_Flags *task_flags,
670 PLASMA_enum side, PLASMA_enum trans,
671 int m1, int n1, int m2, int n2, int k, int ib, int nb,
672 double *A1, int lda1,
673 double *A2, int lda2,
674 const double *V, int ldv,
675 const double *T, int ldt);
676 void QUARK_CORE_dtsmlq_corner(Quark *quark, Quark_Task_Flags *task_flags,
677 int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb,
678 double *A1, int lda1,
679 double *A2, int lda2,
680 double *A3, int lda3,
681 const double *V, int ldv,
682 const double *T, int ldt);
683 void QUARK_CORE_dtsmqr(Quark *quark, Quark_Task_Flags *task_flags,
684 PLASMA_enum side, PLASMA_enum trans,
685 int m1, int n1, int m2, int n2, int k, int ib, int nb,
686 double *A1, int lda1,
687 double *A2, int lda2,
688 const double *V, int ldv,
689 const double *T, int ldt);
690 void QUARK_CORE_dtsmqr_sytra1(Quark *quark, Quark_Task_Flags *task_flags,
691 PLASMA_enum side, PLASMA_enum trans,
692 int m1, int n1, int m2, int n2, int k, int ib, int nb,
693 double *A1, int lda1,
694 double *A2, int lda2,
695 const double *V, int ldv,
696 const double *T, int ldt);
697 void QUARK_CORE_dtsmqr_corner(Quark *quark, Quark_Task_Flags *task_flags,
698 int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb,
699 double *A1, int lda1,
700 double *A2, int lda2,
701 double *A3, int lda3,
702 const double *V, int ldv,
703 const double *T, int ldt);
704 void QUARK_CORE_dtsqrt(Quark *quark, Quark_Task_Flags *task_flags,
705 int m, int n, int ib, int nb,
706 double *A1, int lda1,
707 double *A2, int lda2,
708 double *T, int ldt);
709 void QUARK_CORE_dtstrf(Quark *quark, Quark_Task_Flags *task_flags,
710 int m, int n, int ib, int nb,
711 double *U, int ldu,
712 double *A, int lda,
713 double *L, int ldl,
714 int *IPIV,
715 PLASMA_sequence *sequence, PLASMA_request *request,
716 PLASMA_bool check_info, int iinfo);
717 void QUARK_CORE_dttmqr(Quark *quark, Quark_Task_Flags *task_flags,
718 PLASMA_enum side, PLASMA_enum trans,
719 int m1, int n1, int m2, int n2, int k, int ib, int nb,
720 double *A1, int lda1,
721 double *A2, int lda2,
722 const double *V, int ldv,
723 const double *T, int ldt);
724 void QUARK_CORE_dttqrt(Quark *quark, Quark_Task_Flags *task_flags,
725 int m, int n, int ib, int nb,
726 double *A1, int lda1,
727 double *A2, int lda2,
728 double *T, int ldt);
729 void QUARK_CORE_dttmlq(Quark *quark, Quark_Task_Flags *task_flags,
730 PLASMA_enum side, PLASMA_enum trans,
731 int m1, int n1, int m2, int n2, int k, int ib, int nb,
732 double *A1, int lda1,
733 double *A2, int lda2,
734 const double *V, int ldv,
735 const double *T, int ldt);
736 void QUARK_CORE_dttlqt(Quark *quark, Quark_Task_Flags *task_flags,
737 int m, int n, int ib, int nb,
738 double *A1, int lda1,
739 double *A2, int lda2,
740 double *T, int ldt);
741 void QUARK_CORE_dpamm(Quark *quark, Quark_Task_Flags *task_flags,
742 int op, PLASMA_enum side, PLASMA_enum storev,
743 int m, int n, int k, int l,
744 const double *A1, int lda1,
745 double *A2, int lda2,
746 const double *V, int ldv,
747 double *W, int ldw);
748 void QUARK_CORE_dplssq( Quark *quark, Quark_Task_Flags *task_flags,
749 int m, const double *A, double *result );
750 void QUARK_CORE_dormlq(Quark *quark, Quark_Task_Flags *task_flags,
751 PLASMA_enum side, PLASMA_enum trans,
752 int m, int n, int ib, int nb, int k,
753 const double *A, int lda,
754 const double *T, int ldt,
755 double *C, int ldc);
756 void QUARK_CORE_dormqr(Quark *quark, Quark_Task_Flags *task_flags,
757 PLASMA_enum side, PLASMA_enum trans,
758 int m, int n, int k, int ib, int nb,
759 const double *A, int lda,
760 const double *T, int ldt,
761 double *C, int ldc);
762
766 void CORE_dasum_quark(Quark *quark);
767 void CORE_dasum_f1_quark(Quark *quark);
768 void CORE_dgeadd_quark(Quark *quark);
769 void CORE_dbrdalg_quark(Quark *quark);
770 void CORE_dgelqt_quark(Quark *quark);
771 void CORE_dgemm_quark(Quark *quark);
772 void CORE_dgeqrt_quark(Quark *quark);
773 void CORE_dgessm_quark(Quark *quark);
774 void CORE_dgessq_quark(Quark *quark);
775 void CORE_dgessq_f1_quark(Quark *quark);
776 void CORE_dgetrf_quark(Quark *quark);
777 void CORE_dgetrf_incpiv_quark(Quark *quark);
778 void CORE_dgetrf_reclap_quark(Quark *quark);
779 void CORE_dgetrf_rectil_quark(Quark* quark);
780 void CORE_dgetrip_quark(Quark *quark);
781 void CORE_dgetrip_f1_quark(Quark *quark);
782 void CORE_dgetrip_f2_quark(Quark *quark);
783 #ifdef COMPLEX
784 void CORE_dsymm_quark(Quark *quark);
785 void CORE_dsyrk_quark(Quark *quark);
786 void CORE_dsyr2k_quark(Quark *quark);
787 #endif
788 void CORE_dsygst_quark(Quark *quark);
789 void CORE_dsyrfb_quark(Quark *quark);
790 void CORE_dhessq_quark(Quark *quark);
791 void CORE_dhessq_f1_quark(Quark *quark);
792 void CORE_dlacpy_quark(Quark *quark);
793 void CORE_dlatro_quark(Quark *quark);
794 void CORE_dlange_quark(Quark *quark);
795 void CORE_dlange_f1_quark(Quark *quark);
796 #ifdef COMPLEX
797 void CORE_dlansy_quark(Quark *quark);
798 void CORE_dlansy_f1_quark(Quark *quark);
799 #endif
800 void CORE_dlansy_quark(Quark *quark);
801 void CORE_dlansy_f1_quark(Quark *quark);
802 void CORE_dlaset_quark(Quark *quark);
803 void CORE_dlaset2_quark(Quark *quark);
804 void CORE_dlatro_quark(Quark *quark);
805 void CORE_dlauum_quark(Quark *quark);
806 void CORE_dpamm_quark(Quark *quark);
807 void CORE_dplgsy_quark(Quark *quark);
808 void CORE_dplgsy_quark(Quark *quark);
809 void CORE_dplrnt_quark(Quark *quark);
810 void CORE_dplssq_quark(Quark *quark);
811 void CORE_dpotrf_quark(Quark *quark);
812 void CORE_dshift_quark(Quark *quark);
813 void CORE_dshiftw_quark(Quark *quark);
814 void CORE_dssssm_quark(Quark *quark);
815 void CORE_dsymm_quark(Quark *quark);
816 void CORE_dsyrk_quark(Quark *quark);
817 void CORE_dsyr2k_quark(Quark *quark);
818 void CORE_dsyssq_quark(Quark *quark);
819 void CORE_dsyssq_f1_quark(Quark *quark);
820 void CORE_dswpab_quark(Quark *quark);
821 void CORE_dswptr_ontile_quark(Quark *quark);
822 void CORE_dtrdalg_quark(Quark *quark);
823 void CORE_dtrmm_quark(Quark *quark);
824 void CORE_dtrsm_quark(Quark *quark);
825 void CORE_dtrtri_quark(Quark *quark);
826 void CORE_dtslqt_quark(Quark *quark);
827 void CORE_dtsmlq_quark(Quark *quark);
828 void CORE_dtsmlq_sytra1_quark(Quark *quark);
829 void CORE_dtsmlq_corner_quark(Quark *quark);
830 void CORE_dtsmqr_quark(Quark *quark);
831 void CORE_dtsmqr_sytra1_quark(Quark *quark);
832 void CORE_dtsmqr_corner_quark(Quark *quark);
833 void CORE_dtsqrt_quark(Quark *quark);
834 void CORE_dtstrf_quark(Quark *quark);
835 void CORE_dttmqr_quark(Quark *quark);
836 void CORE_dttqrt_quark(Quark *quark);
837 void CORE_dttmlq_quark(Quark *quark);
838 void CORE_dttlqt_quark(Quark *quark);
839 void CORE_dormlq_quark(Quark *quark);
840 void CORE_dormqr_quark(Quark *quark);
841
842 void CORE_dlaswp_quark(Quark* quark);
843 void CORE_dlaswp_f2_quark(Quark* quark);
844 void CORE_dlaswp_ontile_quark(Quark *quark);
845 void CORE_dlaswp_ontile_f2_quark(Quark *quark);
846 void CORE_dlaswpc_ontile_quark(Quark *quark);
847 void CORE_dtrmm_p2_quark(Quark* quark);
848 void CORE_dgemm_f2_quark(Quark* quark);
849 void CORE_dgemm_p2_quark(Quark* quark);
850 void CORE_dgemm_p2f1_quark(Quark* quark);
851 void CORE_dgemm_p3_quark(Quark* quark);
852
853 #ifdef __cplusplus
854 }
855 #endif
856
857 #undef COMPLEX
858
859 #endif