StarPU Internal Handbook
starpu_config.h
1 /* StarPU --- Runtime system for heterogeneous multicore architectures.
2  *
3  * Copyright (C) 2011,2012,2014,2016,2017 Inria
4  * Copyright (C) 2009-2019 Université de Bordeaux
5  * Copyright (C) 2010-2017,2019 CNRS
6  *
7  * StarPU is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU Lesser General Public License as published by
9  * the Free Software Foundation; either version 2.1 of the License, or (at
10  * your option) any later version.
11  *
12  * StarPU is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15  *
16  * See the GNU Lesser General Public License in COPYING.LGPL for more details.
17  */
18 
19 /*
20  * This is the public config.h file, installed along libstarpu.
21  *
22  * It should only contain the build-time #defines which have an effect on the
23  * API & ABI.
24  */
25 
26 #ifndef __STARPU_CONFIG_PUBLIC_H__
27 #define __STARPU_CONFIG_PUBLIC_H__
28 
29 #define STARPU_MAJOR_VERSION 1
30 #define STARPU_MINOR_VERSION 1
31 #define STARPU_RELEASE_VERSION 1
32 
33 #define STARPU_USE_CPU 1
34 #define STARPU_USE_CUDA 1
35 #define STARPU_USE_OPENCL 1
36 #define STARPU_USE_MIC 1
37 #define STARPU_USE_MPI_MASTER_SLAVE 1
38 
39 #define STARPU_OPENMP 1
40 #define STARPU_CLUSTER 1
41 
42 #define STARPU_SIMGRID 1
43 #define STARPU_SIMGRID_MC 1
44 #define STARPU_SIMGRID_HAVE_XBT_BARRIER_INIT 1
45 #define STARPU_HAVE_SIMGRID_MSG_H 1
46 #define STARPU_HAVE_SIMGRID_ACTOR_H 1
47 #define STARPU_HAVE_SIMGRID_SEMAPHORE_H 1
48 #define STARPU_HAVE_SIMGRID_MUTEX_H 1
49 #define STARPU_HAVE_SIMGRID_COND_H 1
50 #define STARPU_HAVE_SIMGRID_BARRIER_H 1
51 #define STARPU_HAVE_XBT_SYNCHRO_H 1
52 #define STARPU_HAVE_VALGRIND_H 1
53 #define STARPU_HAVE_MEMCHECK_H 1
54 #define STARPU_VALGRIND_FULL 1
55 #define STARPU_SANITIZE_LEAK 1
56 #define STARPU_NON_BLOCKING_DRIVERS 1
57 /* workers must call callbacks on sleep/wake-up */
58 #define STARPU_WORKER_CALLBACKS 1
59 
60 
61 #define STARPU_HAVE_ICC 1
62 
63 #define STARPU_USE_MPI 1
64 #define STARPU_USE_MPI_MPI 1
65 #define STARPU_USE_MPI_NMAD 1
66 
67 #define STARPU_ATLAS 1
68 #define STARPU_GOTO 1
69 #define STARPU_OPENBLAS 1
70 #define STARPU_MKL 1
71 #define STARPU_ARMPL 1
72 #define STARPU_SYSTEM_BLAS 1
73 
74 #define STARPU_OPENCL_DATADIR 1
75 #define STARPU_HAVE_MAGMA 1
76 
77 #define STARPU_OPENGL_RENDER 1
78 #define STARPU_USE_GTK 1
79 #define STARPU_HAVE_X11 1
80 
81 #define STARPU_HAVE_POSIX_MEMALIGN 1
82 
83 #define STARPU_HAVE_MEMALIGN 1
84 
85 #define STARPU_HAVE_MALLOC_H 1
86 
87 #define STARPU_HAVE_SYNC_BOOL_COMPARE_AND_SWAP 1
88 #define STARPU_HAVE_SYNC_VAL_COMPARE_AND_SWAP 1
89 #define STARPU_HAVE_SYNC_FETCH_AND_ADD 1
90 #define STARPU_HAVE_SYNC_FETCH_AND_OR 1
91 #define STARPU_HAVE_SYNC_LOCK_TEST_AND_SET 1
92 #define STARPU_HAVE_SYNC_SYNCHRONIZE 1
93 
94 #define STARPU_DEVEL 1
95 #define STARPU_MODEL_DEBUG 1
96 #define STARPU_NO_ASSERT 1
97 #define STARPU_DEBUG 1
98 #define STARPU_VERBOSE 1
99 #define STARPU_GDB_PATH 1
100 
101 #define STARPU_HAVE_FFTW 1
102 #define STARPU_HAVE_FFTWF 1
103 #define STARPU_HAVE_FFTWL 1
104 #define STARPU_HAVE_CUFFTDOUBLECOMPLEX 1
105 
106 #define STARPU_HAVE_CURAND 1
107 
108 #define STARPU_MAXNODES 1
109 #define STARPU_NMAXBUFS 1
110 #define STARPU_MAXCPUS 1
111 #define STARPU_MAXNUMANODES 1
112 #define STARPU_MAXCUDADEVS 1
113 #define STARPU_MAXOPENCLDEVS 1
114 #define STARPU_MAXMICDEVS 1
115 #define STARPU_NMAXWORKERS 1
116 #define STARPU_NMAX_SCHED_CTXS 1
117 #define STARPU_MAXIMPLEMENTATIONS 1
118 #define STARPU_MAXMPKERNELS 1
119 #define STARPU_USE_SC_HYPERVISOR 1
120 #define STARPU_SC_HYPERVISOR_DEBUG 1
121 #define STARPU_HAVE_GLPK_H 1
122 
123 #define STARPU_HAVE_CUDA_MEMCPY_PEER 1
124 #define STARPU_HAVE_LIBNUMA 1
125 
126 #define STARPU_HAVE_WINDOWS 1
127 #define STARPU_LINUX_SYS 1
128 #define STARPU_HAVE_SETENV 1
129 #define STARPU_HAVE_UNSETENV 1
130 #define STARPU_HAVE_UNISTD_H 1
131 #define STARPU_HAVE_HDF5 1
132 
133 #define STARPU_USE_FXT 1
134 #define STARPU_FXT_LOCK_TRACES 1
135 
136 #ifdef _MSC_VER
137 typedef long starpu_ssize_t;
138 #define __starpu_func__ __FUNCTION__
139 #else
140 # include <sys/types.h>
141 typedef ssize_t starpu_ssize_t;
142 #define __starpu_func__ __func__
143 #endif
144 
145 #if defined(c_plusplus) || defined(__cplusplus)
146 /* inline is part of C++ */
147 # define __starpu_inline inline
148 #elif defined(_MSC_VER) || defined(__HP_cc)
149 # define __starpu_inline __inline
150 #else
151 # define __starpu_inline __inline__
152 #endif
153 
154 #define STARPU_QUICK_CHECK 1
155 #define STARPU_LONG_CHECK 1
156 #define STARPU_USE_DRAND48 1
157 #define STARPU_USE_ERAND48_R 1
158 #define STARPU_HAVE_NEARBYINTF 1
159 #define STARPU_HAVE_RINTF 1
160 
161 #define STARPU_HAVE_HWLOC 1
162 #define STARPU_HAVE_PTHREAD_SPIN_LOCK 1
163 #define STARPU_HAVE_PTHREAD_BARRIER 1
164 #define STARPU_HAVE_PTHREAD_SETNAME_NP 1
165 #define STARPU_HAVE_STRUCT_TIMESPEC 1
166 
167 /* This is only for building examples */
168 #define STARPU_HAVE_HELGRIND_H 1
169 
170 /* Enable Fortran to C MPI interface */
171 #define HAVE_MPI_COMM_F2C 1
172 
173 #define STARPU_HAVE_DARWIN 1
174 
175 #define STARPU_HAVE_CXX11 1
176 #define STARPU_HAVE_STRERROR_R 1
177 #define STARPU_HAVE_STATEMENT_EXPRESSIONS 1
178 #define STARPU_PERF_MODEL_DIR 1
179 
180 #endif