ScalFmmConfig.h.cmake 4.55 KB
Newer Older
1 2
// See LICENCE file at project root

3 4
#ifndef SSCALFMMCONFIG_H
#define SSCALFMMCONFIG_H
5 6 7 8 9
///////////////////////////////////////////////////////
// Debug
///////////////////////////////////////////////////////

// Uncomment the next line to use debug mode
10
#cmakedefine SCALFMM_USE_LOG
11

berenger-bramas's avatar
berenger-bramas committed
12 13 14 15
///////////////////////////////////////////////////////
// Blas
///////////////////////////////////////////////////////

16 17
#cmakedefine SCALFMM_USE_BLAS
#cmakedefine SCALFMM_USE_MKL_AS_BLAS
18 19 20 21
// Fortran Mangling
#cmakedefine SCALFMM_BLAS_ADD_
#cmakedefine SCALFMM_BLAS_UPCASE
#cmakedefine SCALFMM_BLAS_NOCHANGE
22 23
////////////////////////////////////////////////////////
// FFT
berenger-bramas's avatar
berenger-bramas committed
24
///////////////////////////////////////////////////////
25

26 27
#cmakedefine SCALFMM_USE_FFT
#cmakedefine SCALFMM_USE_MKL_AS_FFTW
28
#cmakedefine SCALFMM_USE_ESSL_AS_FFTW
29 30

//////////////////////////////////////////////////////
berenger-bramas's avatar
berenger-bramas committed
31 32 33
// MPI
///////////////////////////////////////////////////////

34
#cmakedefine SCALFMM_USE_MPI
35

36 37 38 39
///////////////////////////////////////////////////////
// Memory trace
///////////////////////////////////////////////////////

40
#cmakedefine SCALFMM_USE_MEM_STATS
41

42 43 44 45
///////////////////////////////////////////////////////
// CUDA
///////////////////////////////////////////////////////

46
#cmakedefine SCALFMM_USE_CUDA
47

48 49 50 51
///////////////////////////////////////////////////////
// OPENCL
///////////////////////////////////////////////////////

52
#cmakedefine SCALFMM_USE_OPENCL
53

54 55 56 57
///////////////////////////////////////////////////////
// STARPU
///////////////////////////////////////////////////////

58
#cmakedefine SCALFMM_USE_STARPU
59
#cmakedefine SCALFMM_DISABLE_NATIVE_OMP4
60

61 62 63 64
///////////////////////////////////////////////////////
// SSE
///////////////////////////////////////////////////////

65
#cmakedefine SCALFMM_USE_SSE
66
#cmakedefine __AVXPE_INTEL_COMPILER
67

68 69 70 71
///////////////////////////////////////////////////////
// AVX
///////////////////////////////////////////////////////

72
#cmakedefine SCALFMM_USE_AVX
73
#cmakedefine __SSEPE_INTEL_COMPILER
74

75 76 77 78 79
///////////////////////////////////////////////////////
// EZTRACE
///////////////////////////////////////////////////////

#cmakedefine SCALFMM_USE_EZTRACE
COULAUD Olivier's avatar
COULAUD Olivier committed
80 81 82
#cmakedefine SCALFMM_TRACE_ALGO
#cmakedefine SCALFMM_TRACE_P2P
#cmakedefine SCALFMM_TRACE_P2M
COULAUD Olivier's avatar
COULAUD Olivier committed
83
#cmakedefine SCALFMM_TRACE_M2L
COULAUD Olivier's avatar
COULAUD Olivier committed
84 85
#cmakedefine SCALFMM_TRACE_L2L
#cmakedefine SCALFMM_TRACE_L2P
86 87


88 89 90 91
///////////////////////////////////////////////////////
// Assert tests
///////////////////////////////////////////////////////

92
#cmakedefine SCALFMM_USE_ASSERT
93

94 95

#ifdef __INTEL_COMPILER
96 97
#pragma warning (disable : 858 )
#pragma warning (disable : 2326 )
98 99
#endif

COULAUD Olivier's avatar
COULAUD Olivier committed
100
///////////////////////////////////////////////////////
101
// Path to the SCALFMM DATA (For UTests)
COULAUD Olivier's avatar
COULAUD Olivier committed
102 103 104 105
///////////////////////////////////////////////////////
#include <string>
const std::string SCALFMMDataPath("@CMAKE_SOURCE_DIR@/Data/");

106 107 108 109

///////////////////////////////////////////////////////
// Flags and libs used to compile
///////////////////////////////////////////////////////
110 111
const std::string SCALFMMCompileFlags("@SCALFMM_COMPILE_FLAGS@");
const std::string SCALFMMCompileLibs("@SCALFMM_COMPILE_LIBS@");
112

113 114 115 116 117 118
///////////////////////////////////////////////////////
// To use commute for KSTAR OMP4
///////////////////////////////////////////////////////

#cmakedefine OPENMP_SUPPORT_COMMUTE

119 120 121 122 123 124
///////////////////////////////////////////////////////
// To use priority for KSTAR OMP4
///////////////////////////////////////////////////////

#cmakedefine OPENMP_SUPPORT_PRIORITY

125 126 127 128 129 130
///////////////////////////////////////////////////////
// To use a taskname clause for tasks with KSTAR OMP4
///////////////////////////////////////////////////////

#cmakedefine OPENMP_SUPPORT_TASK_NAME

131 132 133 134 135 136
///////////////////////////////////////////////////////
// To record omp4 task times for statistics
///////////////////////////////////////////////////////

#cmakedefine SCALFMM_TIME_OMPTASKS

137 138 139 140 141 142
///////////////////////////////////////////////////////
// To catch signals and print backtrace
///////////////////////////////////////////////////////

#cmakedefine SCALFMM_USE_SIGNALS

143 144 145 146 147 148
///////////////////////////////////////////////////////
// To control starpu config
///////////////////////////////////////////////////////

#cmakedefine SCALFMM_STARPU_USE_COMMUTE
#cmakedefine SCALFMM_STARPU_USE_REDUX
149
#cmakedefine SCALFMM_STARPU_USE_PRIO
150
#cmakedefine SCALFMM_STARPU_FORCE_NO_SCHEDULER
151
#cmakedefine SCALFMM_USE_STARPU_EXTRACT
152

153 154 155 156 157
///////////////////////////////////////////////////////
// To control simgrid config
///////////////////////////////////////////////////////

#cmakedefine SCALFMM_SIMGRID_NODATA
158
#cmakedefine STARPU_SIMGRID_MLR_MODELS
159

160
#endif // CONFIG_H