StarPU Handbook
starpu_config.h
Go to the documentation of this file.
1 /* StarPU --- Runtime system for heterogeneous multicore architectures.
2  *
3  * Copyright (C) 2009-2020 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
4  * Copyright (C) 2020 Federal University of Rio Grande do Sul (UFRGS)
5  *
6  * StarPU is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU Lesser General Public License as published by
8  * the Free Software Foundation; either version 2.1 of the License, or (at
9  * your option) any later version.
10  *
11  * StarPU is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14  *
15  * See the GNU Lesser General Public License in COPYING.LGPL for more details.
16  */
17 
18 /*
19  * This is the public config.h file, installed along libstarpu.
20  *
21  * It should only contain the build-time #defines which have an effect on the
22  * API & ABI.
23  */
24 
25 #ifndef __STARPU_CONFIG_PUBLIC_H__
26 #define __STARPU_CONFIG_PUBLIC_H__
27 
33 #define STARPU_MAJOR_VERSION 1
34 
40 #define STARPU_MINOR_VERSION 1
41 
47 #define STARPU_RELEASE_VERSION 1
48 
49 #define STARPU_USE_CPU 1
50 
57 #define STARPU_USE_CUDA 1
58 
65 #define STARPU_USE_OPENCL 1
66 
72 #define STARPU_USE_MIC 1
73 
80 #define STARPU_USE_MPI_MASTER_SLAVE 1
81 
88 #define STARPU_OPENMP 1
89 
90 #define STARPU_CLUSTER 1
91 
92 #define STARPU_SIMGRID 1
93 #define STARPU_SIMGRID_MC 1
94 #define STARPU_SIMGRID_HAVE_XBT_BARRIER_INIT 1
95 #define STARPU_HAVE_SIMGRID_MSG_H 1
96 #define STARPU_HAVE_MSG_MSG_H 1
97 #define STARPU_HAVE_SIMGRID_ACTOR_H 1
98 #define STARPU_HAVE_SIMGRID_SEMAPHORE_H 1
99 #define STARPU_HAVE_SIMGRID_MUTEX_H 1
100 #define STARPU_HAVE_SIMGRID_COND_H 1
101 #define STARPU_HAVE_SIMGRID_BARRIER_H 1
102 #define STARPU_HAVE_XBT_SYNCHRO_H 1
103 #define STARPU_HAVE_VALGRIND_H 1
104 #define STARPU_HAVE_MEMCHECK_H 1
105 #define STARPU_VALGRIND_FULL 1
106 #define STARPU_SANITIZE_LEAK 1
107 #define STARPU_NON_BLOCKING_DRIVERS 1
108 /* workers must call callbacks on sleep/wake-up */
109 #define STARPU_WORKER_CALLBACKS 1
110 
111 #define STARPU_HAVE_ICC 1
112 
118 #define STARPU_USE_MPI 1
119 #define STARPU_USE_MPI_MPI 1
120 #define STARPU_USE_MPI_NMAD 1
121 
122 #define STARPU_ATLAS 1
123 #define STARPU_GOTO 1
124 #define STARPU_OPENBLAS 1
125 #define STARPU_MKL 1
126 #define STARPU_ARMPL 1
127 #define STARPU_SYSTEM_BLAS 1
128 
134 #define STARPU_OPENCL_DATADIR 1
135 #define STARPU_HAVE_MAGMA 1
136 
137 #define STARPU_OPENGL_RENDER 1
138 #define STARPU_USE_GTK 1
139 #define STARPU_HAVE_X11 1
140 
141 #define STARPU_HAVE_POSIX_MEMALIGN 1
142 
143 #define STARPU_HAVE_MEMALIGN 1
144 
145 #define STARPU_HAVE_MALLOC_H 1
146 
147 #define STARPU_HAVE_SYNC_BOOL_COMPARE_AND_SWAP 1
148 #define STARPU_HAVE_SYNC_VAL_COMPARE_AND_SWAP 1
149 #define STARPU_HAVE_SYNC_FETCH_AND_ADD 1
150 #define STARPU_HAVE_SYNC_FETCH_AND_OR 1
151 #define STARPU_HAVE_SYNC_LOCK_TEST_AND_SET 1
152 #define STARPU_HAVE_SYNC_SYNCHRONIZE 1
153 
154 #define STARPU_DEVEL 1
155 #define STARPU_MODEL_DEBUG 1
156 #define STARPU_NO_ASSERT 1
157 #define STARPU_DEBUG 1
158 #define STARPU_VERBOSE 1
159 #define STARPU_GDB_PATH 1
160 
161 #define STARPU_HAVE_FFTW 1
162 #define STARPU_HAVE_FFTWF 1
163 #define STARPU_HAVE_FFTWL 1
164 #define STARPU_HAVE_CUFFTDOUBLECOMPLEX 1
165 
166 #define STARPU_HAVE_CURAND 1
167 
175 #define STARPU_MAXNODES 1
176 
184 #define STARPU_NMAXBUFS 1
185 
192 #define STARPU_MAXCPUS 1
193 
200 #define STARPU_MAXNUMANODES 1
201 
206 #define STARPU_MAXCUDADEVS 1
207 
213 #define STARPU_MAXOPENCLDEVS 1
214 
220 #define STARPU_MAXMICDEVS 1
221 
226 #define STARPU_NMAXWORKERS 1
227 
234 #define STARPU_NMAX_SCHED_CTXS 1
235 
242 #define STARPU_MAXIMPLEMENTATIONS 1
243 
244 #define STARPU_MAXMPKERNELS 1
245 #define STARPU_USE_SC_HYPERVISOR 1
246 #define STARPU_SC_HYPERVISOR_DEBUG 1
247 #define STARPU_HAVE_GLPK_H 1
248 
249 #define STARPU_HAVE_CUDA_MEMCPY_PEER 1
250 #define STARPU_HAVE_LIBNUMA 1
251 
252 #define STARPU_HAVE_WINDOWS 1
253 #define STARPU_LINUX_SYS 1
254 #define STARPU_HAVE_SETENV 1
255 #define STARPU_HAVE_UNSETENV 1
256 #define STARPU_HAVE_UNISTD_H 1
257 #define STARPU_HAVE_HDF5 1
258 
259 #define STARPU_USE_FXT 1
260 #define STARPU_FXT_LOCK_TRACES 1
261 
262 #ifdef _MSC_VER
263 typedef long starpu_ssize_t;
264 #define __starpu_func__ __FUNCTION__
265 #else
266 # include <sys/types.h>
267 typedef ssize_t starpu_ssize_t;
268 #define __starpu_func__ __func__
269 #endif
270 
271 #if defined(c_plusplus) || defined(__cplusplus)
272 /* inline is part of C++ */
273 # define __starpu_inline inline
274 #elif defined(_MSC_VER) || defined(__HP_cc)
275 # define __starpu_inline __inline
276 #else
277 # define __starpu_inline __inline__
278 #endif
279 
280 #define STARPU_QUICK_CHECK 1
281 #define STARPU_LONG_CHECK 1
282 #define STARPU_USE_DRAND48 1
283 #define STARPU_USE_ERAND48_R 1
284 #define STARPU_HAVE_NEARBYINTF 1
285 #define STARPU_HAVE_RINTF 1
286 
287 #define STARPU_HAVE_HWLOC 1
288 #define STARPU_HAVE_PTHREAD_SPIN_LOCK 1
289 #define STARPU_HAVE_PTHREAD_BARRIER 1
290 #define STARPU_HAVE_PTHREAD_SETNAME_NP 1
291 #define STARPU_HAVE_STRUCT_TIMESPEC 1
292 
293 /* This is only for building examples */
294 #define STARPU_HAVE_HELGRIND_H 1
295 
296 /* Enable Fortran to C MPI interface */
297 #define HAVE_MPI_COMM_F2C 1
298 
299 #define STARPU_HAVE_DARWIN 1
300 
301 #define STARPU_HAVE_CXX11 1
302 #define STARPU_HAVE_STRERROR_R 1
303 #define STARPU_HAVE_STATEMENT_EXPRESSIONS 1
304 #define STARPU_PERF_MODEL_DIR 1
305 
306 #endif