PLASMA 2.3.1

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

00001 
00015 #ifndef _PLASMA_CORE_BLAS_H_
00016 #define _PLASMA_CORE_BLAS_H_
00017 
00018 #include <cblas.h>
00019 #include "quark.h"
00020 
00021 #include "core_zblas.h"
00022 #include "core_dblas.h"
00023 #include "core_cblas.h"
00024 #include "core_sblas.h"
00025 #include "core_zcblas.h"
00026 #include "core_dsblas.h"
00027 
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif
00031 
00032   /* 
00033    * Coreblas Error 
00034    */
00035 #define coreblas_error(k, str) fprintf(stderr, "%s: Parameter %d / %s\n", __func__, k, str)
00036 
00037   /* 
00038    * CBlas enum 
00039    */
00040 #define CBLAS_TRANSPOSE enum CBLAS_TRANSPOSE
00041 #define CBLAS_UPLO      enum CBLAS_UPLO
00042 #define CBLAS_DIAG      enum CBLAS_DIAG
00043 #define CBLAS_SIDE      enum CBLAS_SIDE
00044 
00048 extern char *plasma_lapack_constants[];
00049 #define lapack_const(plasma_const) plasma_lapack_constants[plasma_const][0]
00050   
00051   /* 
00052    * Functions which don't depend on precision
00053    */
00054 void CORE_free_quark(Quark *quark);
00055 void CORE_foo_quark(Quark *quark);
00056 void CORE_foo2_quark(Quark *quark);
00057 
00058 void QUARK_CORE_free(Quark *quark, Quark_Task_Flags *task_flags,
00059                      void *A, int szeA);
00060 
00061 #ifdef __cplusplus
00062 }
00063 #endif
00064 
00065 #endif
 All Data Structures