PLASMA 2.3.1

/home/mathieu/ICL/Plasma/svn/trunk/tools/plasma_2.4.0/include/core_dblas.h

00001 
00018 #ifndef _PLASMA_CORE_DBLAS_H_
00019 #define _PLASMA_CORE_DBLAS_H_
00020 #define REAL
00021 
00022 #ifdef __cplusplus
00023 extern "C" {
00024 #endif
00025 
00030 int CORE_dlarfx2(int side, int N,
00031                  double V,
00032                  double TAU,
00033                  double *C1, int LDC1,
00034                  double *C2, int LDC2);
00035 int CORE_dlarfx2c(int uplo,
00036                   double V,
00037                   double TAU,
00038                   double *C1,
00039                   double *C2,
00040                   double *C3);
00041 int CORE_dlarfx2ce(int uplo,
00042                 double *V,
00043                 double *TAU,
00044                 double *C1,
00045                 double *C2,
00046                 double *C3);
00047 int CORE_dhbelr(int uplo, int N,
00048                 PLASMA_desc *A,
00049                 double *V,
00050                 double *TAU,
00051                 int st,
00052                 int ed,
00053                 int eltsize);
00054 int CORE_dhbrce(int uplo, int N,
00055                 PLASMA_desc *A,
00056                 double *V,
00057                 double *TAU,
00058                 int st,
00059                 int ed,
00060                 int eltsize);
00061 int CORE_dhblrx(int uplo, int N,
00062                 PLASMA_desc *A,
00063                 double *V,
00064                 double *TAU,
00065                 int st,
00066                 int ed,
00067                 int eltsize);
00068 int CORE_dgbelr(int uplo, int N,
00069                 PLASMA_desc *A,
00070                 double *V,
00071                 double *TAU,
00072                 int st,
00073                 int ed,
00074                 int eltsize);
00075 int CORE_dgbrce(int uplo, int N,
00076                 PLASMA_desc *A,
00077                 double *V,
00078                 double *TAU,
00079                 int st,
00080                 int ed,
00081                 int eltsize);
00082 int CORE_dgblrx(int uplo, int N,
00083                 PLASMA_desc *A,
00084                 double *V,
00085                 double *TAU,
00086                 int st,
00087                 int ed,
00088                 int eltsize);
00089 void CORE_dasum(int storev, int uplo, int M, int N,
00090                  double *A, int lda, double *work);
00091 void CORE_daxpy(int M, int N,  double alpha,
00092                 double *A, int LDA,
00093                 double *B, int LDB);
00094 void CORE_dbrdalg(PLASMA_enum uplo, int N, int NB, 
00095                   PLASMA_desc *pA, double *C, double *S,
00096                   int i, int j, int m, int grsiz);
00097 int  CORE_dgelqt(int M, int N, int IB,
00098                  double *A, int LDA,
00099                  double *T, int LDT,
00100                  double *TAU, double *WORK);
00101 void CORE_dgemm(int transA, int transB,
00102                 int M, int N, int K,
00103                 double alpha, double *A, int LDA,
00104                 double *B, int LDB,
00105                 double beta, double *C, int LDC);
00106 int  CORE_dgeqrt(int M, int N, int IB,
00107                  double *A, int LDA,
00108                  double *T, int LDT,
00109                  double *TAU, double *WORK);
00110 int  CORE_dgessm(int M, int N, int K, int IB,
00111                  int *IPIV,
00112                  double *L, int LDL,
00113                  double *A, int LDA);
00114 int  CORE_dgetrf(int M, int N, 
00115                  double *A, int LDA,
00116                  int *IPIV, int *INFO);
00117 int  CORE_dgetrf_incpiv(int M, int N, int IB,
00118                         double *A, int LDA,
00119                         int *IPIV, int *INFO);
00120 int  CORE_dgetrf_reclap(const int M, const int N,
00121                         double *A, const int LDA,
00122                         int *IPIV, int *info);
00123 int  CORE_dgetrf_rectil(const PLASMA_desc A, int *IPIV, int *info);
00124 void CORE_dgetrip(int m, int n, double *A, 
00125                   double *work);
00126 #ifdef COMPLEX
00127 void CORE_dsygst(int itype, int uplo, int N,
00128                  double *A, int LDA,
00129                  double *B, int LDB, int *INFO);
00130 void CORE_dsymm(int side, int uplo,
00131                 int M, int N,
00132                 double alpha, double *A, int LDA,
00133                 double *B, int LDB,
00134                 double beta, double *C, int LDC);
00135 void CORE_dsyrk(int uplo, int trans,
00136                 int N, int K,
00137                 double alpha, double *A, int LDA,
00138                 double beta, double *C, int LDC);
00139 void CORE_dsyr2k(int uplo, int trans,
00140                  int N, int K,
00141                  double alpha, double *A, int LDA,
00142                  double *B, int LDB,
00143                  double beta, double *C, int LDC);
00144 int  CORE_dsyrfb(PLASMA_enum uplo, int N, int K, int IB, int NB,
00145                  double *A, int LDA,
00146                  double *T, int LDT,
00147                  double *C, int LDC,
00148                  double *WORK, int LDWORK);
00149 #endif
00150 void CORE_dlacpy(PLASMA_enum uplo, int M, int N,
00151                  double *A, int LDA,
00152                  double *B, int LDB);
00153 void CORE_dlange(int norm, int M, int N,
00154                  double *A, int LDA,
00155                  double *work, double *normA);
00156 #ifdef COMPLEX
00157 void CORE_dlansy(int norm, int uplo, int N,
00158                  double *A, int LDA,
00159                  double *work, double *normA);
00160 #endif
00161 void CORE_dlansy(int norm, int uplo, int N,
00162                  double *A, int LDA,
00163                  double *work, double *normA);
00164 void CORE_dlaset(PLASMA_enum uplo, int n1, int n2, double alpha,
00165                  double beta, double *tileA, int ldtilea);
00166 void CORE_dlaset2(PLASMA_enum uplo, int n1, int n2, double alpha,
00167                   double *tileA, int ldtilea);
00168 void CORE_dlaswp(int N, double *A, int LDA, 
00169                  int I1,  int I2, int *IPIV, int INC);
00170 int  CORE_dlaswp_ontile(PLASMA_desc descA, int i1, int i2, int *ipiv, int inc);
00171 void CORE_dlauum(int uplo, int N, double *A, int LDA);
00172 void CORE_dplgsy(double bump, int m, int n, double *A, int lda,
00173                  int bigM, int m0, int n0, unsigned long long int seed );
00174 void CORE_dplgsy(double bump, int m, int n, double *A, int lda,
00175                  int bigM, int m0, int n0, unsigned long long int seed );
00176 void CORE_dplrnt(int m, int n, double *A, int lda,
00177                  int bigM, int m0, int n0, unsigned long long int seed );
00178 void CORE_dpotrf(int uplo, int N, double *A, int LDA, int *INFO);
00179 void CORE_dshift(int s, int m, int n, int L,
00180                  double *A);
00181 void CORE_dshiftw(int s, int cl, int m, int n, int L,
00182                   double *A, double *W);
00183 int  CORE_dssssm(int M1, int N1, int M2, int N2, int K, int IB,
00184                  double *A1, int LDA1,
00185                  double *A2, int LDA2,
00186                  double *L1, int LDL1,
00187                  double *L2, int LDL2,
00188                  int *IPIV);
00189 void CORE_dsymm(int side, int uplo,
00190                 int M, int N,
00191                 double alpha, double *A, int LDA,
00192                 double *B, int LDB,
00193                 double beta, double *C, int LDC);
00194 void CORE_dsyrk(int uplo, int trans,
00195                 int N, int K,
00196                 double alpha, double *A, int LDA,
00197                 double beta, double *C, int LDC);
00198 void CORE_dsyr2k(int uplo, int trans,
00199                  int N, int K,
00200                  double alpha, double *A, int LDA,
00201                  double *B, int LDB,
00202                  double beta, double *C, int LDC);
00203 void CORE_dswpab(int i, int n1, int n2,
00204                  double *A, double *work);
00205 int  CORE_dswptr_ontile(PLASMA_desc descA, int i1, int i2, int *ipiv, int inc,
00206                         double *Akk, int ldak);
00207 void CORE_dtrdalg(PLASMA_enum uplo, int N, int NB, 
00208                   PLASMA_desc *pA, double *C, double *S,
00209                   int i, int j, int m, int grsiz);
00210 void CORE_dtrmm(int side, int uplo,
00211                 int transA, int diag,
00212                 int M, int N,
00213                 double alpha, double *A, int LDA,
00214                 double *B, int LDB);
00215 void CORE_dtrsm(int side, int uplo,
00216                 int transA, int diag,
00217                 int M, int N,
00218                 double alpha, double *A, int LDA,
00219                 double *B, int LDB);
00220 void CORE_dtrtri(int uplo, int diag, int N, double *A, int LDA, int *info);
00221 int  CORE_dtslqt(int M, int N, int IB,
00222                  double *A1, int LDA1,
00223                  double *A2, int LDA2,
00224                  double *T, int LDT,
00225                  double *TAU, double *WORK);
00226 int  CORE_dtsmlq(int side, int trans,
00227                  int M1, int N1, int M2, int N2, int K, int IB,
00228                  double *A1, int LDA1,
00229                  double *A2, int LDA2,
00230                  double *V, int LDV,
00231                  double *T, int LDT,
00232                  double *WORK, int LDWORK);
00233 int CORE_dtsmlq_corner( int m1, int n1, int m2, int n2, int m3, int n3,
00234                         int k, int ib, int nb,
00235                         double *A1, int lda1,
00236                         double *A2, int lda2,
00237                         double *A3, int lda3,
00238                         double *V, int ldv,
00239                         double *T, int ldt,
00240                         double *WORK, int ldwork);
00241 int CORE_dtsmlq_sytra1( int side, int trans,
00242                         int m1, int n1, int m2, int n2,
00243                         int k, int ib,
00244                         double *A1, int lda1,
00245                         double *A2, int lda2,
00246                         double *V, int ldv,
00247                         double *T, int ldt,
00248                         double *WORK, int ldwork);
00249 int  CORE_dtsmqr(int side, int trans,
00250                  int M1, int N1, int M2, int N2, int K, int IB,
00251                  double *A1, int LDA1,
00252                  double *A2, int LDA2,
00253                  double *V, int LDV,
00254                  double *T, int LDT,
00255                  double *WORK, int LDWORK);
00256 int CORE_dtsmqr_corner( int m1, int n1, int m2, int n2, int m3, int n3,
00257                         int k, int ib, int nb,
00258                         double *A1, int lda1,
00259                         double *A2, int lda2,
00260                         double *A3, int lda3,
00261                         double *V, int ldv,
00262                         double *T, int ldt,
00263                         double *WORK, int ldwork);
00264 int CORE_dtsmqr_sytra1( int side, int trans,
00265                         int m1, int n1, int m2, int n2,
00266                         int k, int ib,
00267                         double *A1, int lda1,
00268                         double *A2, int lda2,
00269                         double *V, int ldv,
00270                         double *T, int ldt,
00271                         double *WORK, int ldwork);
00272 int  CORE_dtsqrt(int M, int N, int IB,
00273                  double *A1, int LDA1,
00274                  double *A2, int LDA2,
00275                  double *T, int LDT,
00276                  double *TAU, double *WORK);
00277 int  CORE_dtsrfb(int side, int trans, int direct, int storev,
00278                  int M1, int N1, int M2, int N2, int IB,
00279                  double *A1, int LDA1,
00280                  double *A2, int LDA2,
00281                  double *V, int LDV,
00282                  double *T, int LDT,
00283                  double *WORK, int LDWORK);
00284 int  CORE_dtstrf(int M, int N, int IB, int NB,
00285                  double *U, int LDU,
00286                  double *A, int LDA,
00287                  double *L, int LDL,
00288                  int *IPIV, double *WORK,
00289                  int LDWORK, int *INFO);
00290 int  CORE_dttmqr(int side, int trans,
00291                  int M1, int N1, int M2, int N2, int K, int IB,
00292                  double *A1, int LDA1,
00293                  double *A2, int LDA2,
00294                  double *V, int LDV,
00295                  double *T, int LDT,
00296                  double *WORK, int LDWORK);
00297 int  CORE_dttqrt(int M, int N, int IB,
00298                  double *A1, int LDA1,
00299                  double *A2, int LDA2,
00300                  double *T, int LDT,
00301                  double *TAU,
00302                  double *WORK);
00303 int  CORE_dttmlq(int side, int trans,
00304                  int M1, int N1, int M2, int N2, int K, int IB,
00305                  double *A1, int LDA1,
00306                  double *A2, int LDA2,
00307                  double *V, int LDV,
00308                  double *T, int LDT,
00309                  double *WORK, int LDWORK);
00310 int  CORE_dttlqt(int M, int N, int IB,
00311                  double *A1, int LDA1,
00312                  double *A2, int LDA2,
00313                  double *T, int LDT,
00314                  double *TAU,
00315                  double *WORK);
00316 int  CORE_dttrfb(int side, int trans, int direct, int storev,
00317                  int M1, int N1, int M2, int N2, int IB,
00318                  double *A1, int LDA1,
00319                  double *A2, int LDA2,
00320                  double *V, int LDV,
00321                  double *T, int LDT,
00322                  double *WORK, int LDWORK);
00323 int  CORE_dormlq(int side, int trans,
00324                  int M, int N, int IB, int K,
00325                  double *V, int LDV,
00326                  double *T, int LDT,
00327                  double *C, int LDC,
00328                  double *WORK, int LDWORK);
00329 int  CORE_dormqr(int side, int trans,
00330                  int M, int N, int K, int IB,
00331                  double *V, int LDV,
00332                  double *T, int LDT,
00333                  double *C, int LDC,
00334                  double *WORK, int LDWORK);
00335 
00339 void QUARK_CORE_dasum(Quark *quark, Quark_Task_Flags *task_flags,
00340                        PLASMA_enum storev, PLASMA_enum uplo, int m, int n,
00341                        double *A, int lda, int szeA,
00342                        double *work, int szeW);
00343 void QUARK_CORE_dasum_f1(Quark *quark, Quark_Task_Flags *task_flags,
00344                           PLASMA_enum storev, PLASMA_enum uplo, int m, int n,
00345                           double *A, int lda, int szeA,
00346                           double *work, int szeW,
00347                           double *fake, int szeF);
00348 void QUARK_CORE_daxpy(Quark *quark, Quark_Task_Flags *task_flags,
00349                       int m, int n, int nb, double alpha,
00350                       double *A, int lda,
00351                       double *B, int ldb);
00352 void QUARK_CORE_dbrdalg(Quark *quark, Quark_Task_Flags *task_flags,
00353                         int uplo,
00354                         int N, int NB,
00355                         PLASMA_desc *A,
00356                         double *C,
00357                         double *S,
00358                         int i, int j, int m, int grsiz, int BAND,
00359                         int *PCOL, int *ACOL, int *MCOL);
00360 void QUARK_CORE_dgelqt(Quark *quark, Quark_Task_Flags *task_flags,
00361                        int m, int n, int ib, int nb,
00362                        double *A, int lda,
00363                        double *T, int ldt);
00364 void QUARK_CORE_dgemm(Quark *quark, Quark_Task_Flags *task_flags,
00365                       int transA, int transB,
00366                       int m, int n, int k, int nb,
00367                       double alpha, double *A, int lda,
00368                       double *B, int ldb,
00369                       double beta, double *C, int ldc);
00370 void QUARK_CORE_dgemm2( Quark *quark, Quark_Task_Flags *task_flags,
00371                         int transA, int transB,
00372                         int m, int n, int k, int nb,
00373                         double alpha, double *A, int lda,
00374                         double *B, int ldb,
00375                         double beta, double *C, int ldc);
00376 void QUARK_CORE_dgemm_f2(Quark *quark, Quark_Task_Flags *task_flags,
00377                          int transA, int transB,
00378                          int m, int n, int k, int nb,
00379                          double alpha, double *A, int lda,
00380                          double *B, int ldb,
00381                          double beta, double *C, int ldc,
00382                          double *fake1, int szefake1, int flag1,
00383                          double *fake2, int szefake2, int flag2);
00384 void QUARK_CORE_dgemm_p2(Quark *quark, Quark_Task_Flags *task_flags,
00385                          int transA, int transB,
00386                          int m, int n, int k, int nb,
00387                          double alpha, double *A, int lda,
00388                          double **B, int ldb,
00389                          double beta, double *C, int ldc);
00390 void QUARK_CORE_dgemm_p2f1(Quark *quark, Quark_Task_Flags *task_flags,
00391                            int transA, int transB,
00392                            int m, int n, int k, int nb,
00393                            double alpha, double *A, int lda,
00394                            double **B, int ldb,
00395                            double beta, double *C, int ldc,
00396                            double *fake1, int szefake1, int flag1);
00397 void QUARK_CORE_dgemm_p3(Quark *quark, Quark_Task_Flags *task_flags,
00398                          int transA, int transB,
00399                          int m, int n, int k, int nb,
00400                          double alpha, double *A, int lda,
00401                          double *B, int ldb,
00402                          double beta, double **C, int ldc);
00403 void QUARK_CORE_dgeqrt(Quark *quark, Quark_Task_Flags *task_flags,
00404                        int m, int n, int ib, int nb,
00405                        double *A, int lda,
00406                        double *T, int ldt);
00407 void QUARK_CORE_dgessm(Quark *quark, Quark_Task_Flags *task_flags,
00408                        int m, int n, int k, int ib, int nb,
00409                        int *IPIV,
00410                        double *L, int ldl,
00411                        double *A, int lda);
00412 void QUARK_CORE_dgetrf(Quark *quark, Quark_Task_Flags *task_flags,
00413                        int m, int n, int nb,
00414                        double *A, int lda,
00415                        int *IPIV,
00416                        PLASMA_sequence *sequence, PLASMA_request *request,
00417                        PLASMA_bool check_info, int iinfo);
00418 void QUARK_CORE_dgetrf_incpiv(Quark *quark, Quark_Task_Flags *task_flags,
00419                               int m, int n, int ib, int nb,
00420                               double *A, int lda,
00421                               int *IPIV,
00422                               PLASMA_sequence *sequence, PLASMA_request *request,
00423                               PLASMA_bool check_info, int iinfo);
00424 void QUARK_CORE_dgetrf_reclap(Quark *quark, Quark_Task_Flags *task_flags,
00425                               int m, int n, int nb,
00426                               double *A, int lda,
00427                               int *IPIV,
00428                               PLASMA_sequence *sequence, PLASMA_request *request,
00429                               PLASMA_bool check_info, int iinfo,
00430                               int nbthread);
00431 void QUARK_CORE_dgetrf_rectil(Quark *quark, Quark_Task_Flags *task_flags,
00432                               PLASMA_desc A, double *Amn, int size,
00433                               int *IPIV,
00434                               PLASMA_sequence *sequence, PLASMA_request *request,
00435                               PLASMA_bool check_info, int iinfo,
00436                               int nbthread);
00437 void QUARK_CORE_dgetrip(Quark *quark, Quark_Task_Flags *task_flags,
00438                         int m, int n, double *A, int szeA);
00439 void QUARK_CORE_dgetrip_f1(Quark *quark, Quark_Task_Flags *task_flags,
00440                            int m, int n, double *A, int szeA,
00441                            double *fake, int szeF, int paramF);
00442 void QUARK_CORE_dgetrip_f2(Quark *quark, Quark_Task_Flags *task_flags,
00443                            int m, int n, double *A, int szeA,
00444                            double *fake1, int szeF1, int paramF1,
00445                            double *fake2, int szeF2, int paramF2);
00446 void QUARK_CORE_dsymm(Quark *quark, Quark_Task_Flags *task_flags,
00447                       int side, int uplo,
00448                       int m, int n, int nb,
00449                       double alpha, double *A, int lda,
00450                       double *B, int ldb,
00451                       double beta, double *C, int ldc);
00452 void QUARK_CORE_dsygst(Quark *quark, Quark_Task_Flags *task_flags,
00453                        int itype, int uplo, int N,
00454                        double *A, int LDA,
00455                        double *B, int LDB,
00456                        PLASMA_sequence *sequence, PLASMA_request *request,
00457                        int iinfo);
00458 void QUARK_CORE_dsyrk(Quark *quark, Quark_Task_Flags *task_flags,
00459                       int uplo, int trans,
00460                       int n, int k, int nb,
00461                       double alpha, double *A, int lda,
00462                       double beta, double *C, int ldc);
00463 void QUARK_CORE_dsyr2k(Quark *quark, Quark_Task_Flags *task_flags,
00464                        int uplo, int trans,
00465                        int n, int k, int nb,
00466                        double alpha, double *A, int lda,
00467                        double *B, int LDB,
00468                        double beta, double *C, int ldc);
00469 void QUARK_CORE_dsyrfb(Quark *quark, Quark_Task_Flags *task_flags,
00470                        int uplo,
00471                        int n, int k, int ib, int nb,
00472                        double *A, int lda,
00473                        double *T, int ldt,
00474                        double *C, int ldc);
00475 void QUARK_CORE_dlacpy(Quark *quark, Quark_Task_Flags *task_flags,
00476                        PLASMA_enum uplo, int m, int n, int mb,
00477                        double *A, int lda,
00478                        double *B, int ldb);
00479 void QUARK_CORE_dlange(Quark *quark, Quark_Task_Flags *task_flags,
00480                        int norm, int M, int N,
00481                        double *A, int LDA, int szeA,
00482                        int szeW, double *result);
00483 void QUARK_CORE_dlange_f1(Quark *quark, Quark_Task_Flags *task_flags,
00484                           int norm, int M, int N,
00485                           double *A, int LDA, int szeA,
00486                           int szeW, double *result,
00487                           double *fake, int szeF);
00488 #ifdef COMPLEX
00489 void QUARK_CORE_dlansy(Quark *quark, Quark_Task_Flags *task_flags,
00490                        int norm, int uplo, int N,
00491                        double *A, int LDA, int szeA,
00492                        int szeW, double *result);
00493 void QUARK_CORE_dlansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
00494                           int norm, int uplo, int N,
00495                           double *A, int LDA, int szeA,
00496                           int szeW, double *result,
00497                           double *fake, int szeF);
00498 #endif
00499 void QUARK_CORE_dlansy(Quark *quark, Quark_Task_Flags *task_flags,
00500                        int norm, int uplo, int N,
00501                        double *A, int LDA, int szeA,
00502                        int szeW, double *result);
00503 void QUARK_CORE_dlansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
00504                           int norm, int uplo, int N,
00505                           double *A, int LDA, int szeA,
00506                           int szeW, double *result,
00507                           double *fake, int szeF);
00508 void QUARK_CORE_dlaset(Quark *quark, Quark_Task_Flags *task_flags,
00509                        PLASMA_enum uplo, int n1, int n2, double alpha,
00510                        double beta, double *tileA, int ldtilea);
00511 void QUARK_CORE_dlaset2(Quark *quark, Quark_Task_Flags *task_flags,
00512                         PLASMA_enum uplo, int n1, int n2, double alpha,
00513                         double *tileA, int ldtilea);
00514 void QUARK_CORE_dlaswp(Quark *quark, Quark_Task_Flags *task_flags,
00515                        int n, double *A, int lda, 
00516                        int i1,  int i2, int *ipiv, int inc);
00517 void QUARK_CORE_dlaswp_f2(Quark *quark, Quark_Task_Flags *task_flags,
00518                           int n, double *A, int lda, 
00519                           int i1,  int i2, int *ipiv, int inc,
00520                           double *fake1, int szefake1, int flag1,
00521                           double *fake2, int szefake2, int flag2);
00522 void QUARK_CORE_dlaswp_ontile(Quark *quark, Quark_Task_Flags *task_flags,
00523                               PLASMA_desc descA, double *A, 
00524                               int i1,  int i2, int *ipiv, int inc, double *fakepanel);
00525 void QUARK_CORE_dlaswp_ontile_f2(Quark *quark, Quark_Task_Flags *task_flags,
00526                                  PLASMA_desc descA, double *A, 
00527                                  int i1,  int i2, int *ipiv, int inc, 
00528                                  double *fake1, int szefake1, int flag1,
00529                                  double *fake2, int szefake2, int flag2);
00530 void QUARK_CORE_dlauum(Quark *quark, Quark_Task_Flags *task_flags,
00531                        int uplo, int n, int nb,
00532                        double *A, int lda);
00533 void QUARK_CORE_dplgsy(Quark *quark, Quark_Task_Flags *task_flags,
00534                        double bump, int m, int n, double *A, int lda,
00535                        int bigM, int m0, int n0, unsigned long long int seed );
00536 void QUARK_CORE_dplgsy(Quark *quark, Quark_Task_Flags *task_flags,
00537                        double bump, int m, int n, double *A, int lda,
00538                        int bigM, int m0, int n0, unsigned long long int seed );
00539 void QUARK_CORE_dplrnt(Quark *quark, Quark_Task_Flags *task_flags,
00540                        int m, int n, double *A, int lda,
00541                        int bigM, int m0, int n0, unsigned long long int seed );
00542 void QUARK_CORE_dpotrf(Quark *quark, Quark_Task_Flags *task_flags,
00543                        int uplo, int n, int nb,
00544                        double *A, int lda,
00545                        PLASMA_sequence *sequence, PLASMA_request *request,
00546                        int iinfo);
00547 void QUARK_CORE_dshift( Quark *quark, Quark_Task_Flags *task_flags,
00548                         int s, int m, int n, int L,
00549                         double *A);
00550 void QUARK_CORE_dshiftw(Quark *quark, Quark_Task_Flags *task_flags,
00551                         int s, int cl, int m, int n, int L,
00552                         double *A, double *W);
00553 void QUARK_CORE_dssssm(Quark *quark, Quark_Task_Flags *task_flags,
00554                        int m1, int n1, int m2, int n2, int k, int ib, int nb,
00555                        double *A1, int lda1,
00556                        double *A2, int lda2,
00557                        double *L1, int ldl1,
00558                        double *L2, int ldl2,
00559                        int *IPIV);
00560 void QUARK_CORE_dsymm(Quark *quark, Quark_Task_Flags *task_flags,
00561                       int side, int uplo,
00562                       int m, int n, int nb,
00563                       double alpha, double *A, int lda,
00564                       double *B, int ldb,
00565                       double beta, double *C, int ldc);
00566 void QUARK_CORE_dsyrk(Quark *quark, Quark_Task_Flags *task_flags,
00567                       int uplo, int trans,
00568                       int n, int k, int nb,
00569                       double alpha, double *A, int lda,
00570                       double beta, double *C, int ldc);
00571 void QUARK_CORE_dsyr2k(Quark *quark, Quark_Task_Flags *task_flags,
00572                        int uplo, int trans,
00573                        int n, int k, int nb,
00574                        double alpha, double *A, int lda,
00575                        double *B, int LDB,
00576                        double beta, double *C, int ldc);
00577 void QUARK_CORE_dswpab(Quark *quark, Quark_Task_Flags *task_flags,
00578                        int i, int n1, int n2,
00579                        double *A, int szeA);
00580 void QUARK_CORE_dswptr_ontile(Quark *quark, Quark_Task_Flags *task_flags,
00581                               PLASMA_desc descA, double *Aij, 
00582                               int i1,  int i2, int *ipiv, int inc, 
00583                               double *Akk, int ldak);
00584 void QUARK_CORE_dtrdalg(Quark *quark, Quark_Task_Flags *task_flags,
00585                         int uplo,
00586                         int N, int NB,
00587                         PLASMA_desc *A,
00588                         double *C,
00589                         double *S,
00590                         int i, int j, int m, int grsiz, int BAND,
00591                         int *PCOL, int *ACOL, int *MCOL);
00592 void QUARK_CORE_dtrmm(Quark *quark, Quark_Task_Flags *task_flags,
00593                       int side, int uplo, int transA, int diag,
00594                       int m, int n, int nb,
00595                       double alpha, double *A, int lda,
00596                       double *B, int ldb);
00597 void QUARK_CORE_dtrmm_p2(Quark *quark, Quark_Task_Flags *task_flags,
00598                          int side, int uplo, int transA, int diag,
00599                          int m, int n, int nb,
00600                          double alpha, double *A, int lda,
00601                          double **B, int ldb);
00602 void QUARK_CORE_dtrsm(Quark *quark, Quark_Task_Flags *task_flags,
00603                       int side, int uplo, int transA, int diag,
00604                       int m, int n, int nb,
00605                       double alpha, double *A, int lda,
00606                       double *B, int ldb);
00607 void QUARK_CORE_dtrtri(Quark *quark, Quark_Task_Flags *task_flags,
00608                        int uplo, int diag, int n, int nb,
00609                        double *A, int lda,
00610                        PLASMA_sequence *sequence, PLASMA_request *request,
00611                        int iinfo);
00612 void QUARK_CORE_dtslqt(Quark *quark, Quark_Task_Flags *task_flags,
00613                        int m, int n, int ib, int nb,
00614                        double *A1, int lda1,
00615                        double *A2, int lda2,
00616                        double *T, int ldt);
00617 void QUARK_CORE_dtsmlq(Quark *quark, Quark_Task_Flags *task_flags,
00618                        int side, int trans,
00619                        int m1, int n1, int m2, int n2, int k, int ib, int nb,
00620                        double *A1, int lda1,
00621                        double *A2, int lda2,
00622                        double *V, int ldv,
00623                        double *T, int ldt);
00624 void QUARK_CORE_dtsmlq_sytra1(Quark *quark, Quark_Task_Flags *task_flags,
00625                               int side, int trans,
00626                               int m1, int n1, int m2, int n2, int k, int ib, int nb,
00627                               double *A1, int lda1,
00628                               double *A2, int lda2,
00629                               double *V, int ldv,
00630                               double *T, int ldt);
00631 void QUARK_CORE_dtsmlq_corner(Quark *quark, Quark_Task_Flags *task_flags,
00632                               int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb,
00633                               double *A1, int lda1,
00634                               double *A2, int lda2,
00635                               double *A3, int lda3,
00636                               double *V, int ldv,
00637                               double *T, int ldt);
00638 void QUARK_CORE_dtsmqr(Quark *quark, Quark_Task_Flags *task_flags,
00639                        int side, int trans,
00640                        int m1, int n1, int m2, int n2, int k, int ib, int nb,
00641                        double *A1, int lda1,
00642                        double *A2, int lda2,
00643                        double *V, int ldv,
00644                        double *T, int ldt);
00645 void QUARK_CORE_dtsmqr_sytra1(Quark *quark, Quark_Task_Flags *task_flags,
00646                               int side, int trans,
00647                               int m1, int n1, int m2, int n2, int k, int ib, int nb,
00648                               double *A1, int lda1,
00649                               double *A2, int lda2,
00650                               double *V, int ldv,
00651                               double *T, int ldt);
00652 void QUARK_CORE_dtsmqr_corner(Quark *quark, Quark_Task_Flags *task_flags,
00653                               int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb,
00654                               double *A1, int lda1,
00655                               double *A2, int lda2,
00656                               double *A3, int lda3,
00657                               double *V, int ldv,
00658                               double *T, int ldt);
00659 void QUARK_CORE_dtsqrt(Quark *quark, Quark_Task_Flags *task_flags,
00660                        int m, int n, int ib, int nb,
00661                        double *A1, int lda1,
00662                        double *A2, int lda2,
00663                        double *T, int ldt);
00664 void QUARK_CORE_dtstrf(Quark *quark, Quark_Task_Flags *task_flags,
00665                        int m, int n, int ib, int nb,
00666                        double *U, int ldu,
00667                        double *A, int lda,
00668                        double *L, int ldl,
00669                        int *IPIV,
00670                        PLASMA_sequence *sequence, PLASMA_request *request,
00671                        PLASMA_bool check_info, int iinfo);
00672 void QUARK_CORE_dttmqr(Quark *quark, Quark_Task_Flags *task_flags,
00673                        int side, int trans,
00674                        int m1, int n1, int m2, int n2, int k, int ib, int nb,
00675                        double *A1, int lda1,
00676                        double *A2, int lda2,
00677                        double *V, int ldv,
00678                        double *T, int ldt);
00679 void QUARK_CORE_dttqrt(Quark *quark, Quark_Task_Flags *task_flags,
00680                        int m, int n, int ib, int nb,
00681                        double *A1, int lda1,
00682                        double *A2, int lda2,
00683                        double *T, int ldt);
00684 void QUARK_CORE_dttmlq(Quark *quark, Quark_Task_Flags *task_flags,
00685                        int side, int trans,
00686                        int m1, int n1, int m2, int n2, int k, int ib, int nb,
00687                        double *A1, int lda1,
00688                        double *A2, int lda2,
00689                        double *V, int ldv,
00690                        double *T, int ldt);
00691 void QUARK_CORE_dttlqt(Quark *quark, Quark_Task_Flags *task_flags,
00692                        int m, int n, int ib, int nb,
00693                        double *A1, int lda1,
00694                        double *A2, int lda2,
00695                        double *T, int ldt);
00696 void QUARK_CORE_dormlq(Quark *quark, Quark_Task_Flags *task_flags,
00697                        int side, int trans,
00698                        int m, int n, int ib,  int nb, int k,
00699                        double *A, int lda,
00700                        double *T, int ldt,
00701                        double *C, int ldc);
00702 void QUARK_CORE_dormqr(Quark *quark, Quark_Task_Flags *task_flags,
00703                        int side, int trans,
00704                        int m, int n, int k, int ib, int nb,
00705                        double *A, int lda,
00706                        double *T, int ldt,
00707                        double *C, int ldc);
00708 
00712 void CORE_dasum_quark(Quark *quark);
00713 void CORE_dasum_f1_quark(Quark *quark);
00714 void CORE_daxpy_quark(Quark *quark);
00715 void CORE_dbrdalg_quark(Quark *quark);
00716 void CORE_dgelqt_quark(Quark *quark);
00717 void CORE_dgemm_quark(Quark *quark);
00718 void CORE_dgeqrt_quark(Quark *quark);
00719 void CORE_dgessm_quark(Quark *quark);
00720 void CORE_dgetrf_quark(Quark *quark);
00721 void CORE_dgetrf_incpiv_quark(Quark *quark);
00722 void CORE_dgetrf_reclap_quark(Quark *quark);
00723 void CORE_dgetrf_rectil_quark(Quark* quark);
00724 void CORE_dgetrip_quark(Quark *quark);
00725 void CORE_dgetrip_f1_quark(Quark *quark);
00726 void CORE_dgetrip_f2_quark(Quark *quark);
00727 #ifdef COMPLEX
00728 void CORE_dsymm_quark(Quark *quark);
00729 void CORE_dsyrk_quark(Quark *quark);
00730 void CORE_dsyr2k_quark(Quark *quark);
00731 #endif
00732 void CORE_dsygst_quark(Quark *quark);
00733 void CORE_dsyrfb_quark(Quark *quark);
00734 void CORE_dlacpy_quark(Quark *quark);
00735 void CORE_dlange_quark(Quark *quark);
00736 void CORE_dlange_f1_quark(Quark *quark);
00737 #ifdef COMPLEX
00738 void CORE_dlansy_quark(Quark *quark);
00739 void CORE_dlansy_f1_quark(Quark *quark);
00740 #endif
00741 void CORE_dlansy_quark(Quark *quark);
00742 void CORE_dlansy_f1_quark(Quark *quark);
00743 void CORE_dlaset_quark(Quark *quark);
00744 void CORE_dlaset2_quark(Quark *quark);
00745 void CORE_dlauum_quark(Quark *quark);
00746 void CORE_dplgsy_quark(Quark *quark);
00747 void CORE_dplgsy_quark(Quark *quark);
00748 void CORE_dplrnt_quark(Quark *quark);
00749 void CORE_dpotrf_quark(Quark *quark);
00750 void CORE_dshift_quark(Quark *quark);
00751 void CORE_dshiftw_quark(Quark *quark);
00752 void CORE_dssssm_quark(Quark *quark);
00753 void CORE_dsymm_quark(Quark *quark);
00754 void CORE_dsyrk_quark(Quark *quark);
00755 void CORE_dsyr2k_quark(Quark *quark);
00756 void CORE_dswpab_quark(Quark *quark);
00757 void CORE_dswptr_ontile_quark(Quark *quark);
00758 void CORE_dtrdalg_quark(Quark *quark);
00759 void CORE_dtrmm_quark(Quark *quark);
00760 void CORE_dtrsm_quark(Quark *quark);
00761 void CORE_dtrtri_quark(Quark *quark);
00762 void CORE_dtslqt_quark(Quark *quark);
00763 void CORE_dtsmlq_quark(Quark *quark);
00764 void CORE_dtsmlq_sytra1_quark(Quark *quark);
00765 void CORE_dtsmlq_corner_quark(Quark *quark);
00766 void CORE_dtsmqr_quark(Quark *quark);
00767 void CORE_dtsmqr_sytra1_quark(Quark *quark);
00768 void CORE_dtsmqr_corner_quark(Quark *quark);
00769 void CORE_dtsqrt_quark(Quark *quark);
00770 void CORE_dtstrf_quark(Quark *quark);
00771 void CORE_dttmqr_quark(Quark *quark);
00772 void CORE_dttqrt_quark(Quark *quark);
00773 void CORE_dttmlq_quark(Quark *quark);
00774 void CORE_dttlqt_quark(Quark *quark);
00775 void CORE_dormlq_quark(Quark *quark);
00776 void CORE_dormqr_quark(Quark *quark);
00777 
00778 void CORE_dlaswp_quark(Quark* quark);
00779 void CORE_dlaswp_f2_quark(Quark* quark);
00780 void CORE_dlaswp_ontile_quark(Quark *quark);
00781 void CORE_dlaswp_ontile_f2_quark(Quark *quark);
00782 void CORE_dtrmm_p2_quark(Quark* quark);
00783 void CORE_dgemm_f2_quark(Quark* quark);
00784 void CORE_dgemm_p2_quark(Quark* quark);
00785 void CORE_dgemm_p2f1_quark(Quark* quark);
00786 void CORE_dgemm_p3_quark(Quark* quark);
00787 
00788 #ifdef __cplusplus
00789 }
00790 #endif
00791 
00792 #endif
 All Data Structures