xref: /petsc/src/mat/impls/baij/seq/baijmkl/baijmkl.h (revision ccb4e88a40f0b86eaeca07ff64c64e4de2fae686)
1 #define MKL_Complex16 PetscScalar
2 #define MKL_Complex8 PetscScalar
3 #define CHKERRMKL(stat) do {if (stat != SPARSE_STATUS_SUCCESS){PetscFunctionReturn(PETSC_ERR_LIB);}}while (0)
4 #if !defined(PETSC_USE_COMPLEX)
5 # if defined(PETSC_USE_REAL_SINGLE)
6 #   define mkl_sparse_x_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) mkl_sparse_s_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values)
7 # elif defined(PETSC_USE_REAL_DOUBLE)
8 #   define mkl_sparse_x_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) mkl_sparse_d_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values)
9 # endif
10 #else
11 # if defined(PETSC_USE_REAL_SINGLE)
12 #   define mkl_sparse_x_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) mkl_sparse_c_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values)
13 # elif defined(PETSC_USE_REAL_DOUBLE)
14 #   define mkl_sparse_x_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values) mkl_sparse_z_create_bsr(A,indexing,block_layout,rows,cols,block_size,rows_start,rows_end,col_indx,values)
15 # endif
16 #endif
17 
18 #if !defined(PETSC_USE_COMPLEX)
19 # if defined(PETSC_USE_REAL_SINGLE)
20 #   define mkl_sparse_x_mv(operation,alpha,A,descr,x,beta,y) mkl_sparse_s_mv(operation,alpha,A,descr,x,beta,y)
21 # elif defined(PETSC_USE_REAL_DOUBLE)
22 #   define mkl_sparse_x_mv(operation,alpha,A,descr,x,beta,y) mkl_sparse_d_mv(operation,alpha,A,descr,x,beta,y)
23 # endif
24 #else
25 # if defined(PETSC_USE_REAL_SINGLE)
26 #   define mkl_sparse_x_mv(operation,alpha,A,descr,x,beta,y) mkl_sparse_c_mv(operation,alpha,A,descr,x,beta,y)
27 # elif defined(PETSC_USE_REAL_DOUBLE)
28 #   define mkl_sparse_x_mv(operation,alpha,A,descr,x,beta,y) mkl_sparse_z_mv(operation,alpha,A,descr,x,beta,y)
29 # endif
30 #endif
31