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-2021 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_HAVE_LIBNVIDIA_ML 1
66
73#define STARPU_USE_OPENCL 1
74
80#define STARPU_USE_MIC 1
81
88#define STARPU_USE_MPI_MASTER_SLAVE 1
89
96#define STARPU_OPENMP 1
97
98#define STARPU_CLUSTER 1
99
100#define STARPU_SIMGRID 1
101#define STARPU_SIMGRID_MC 1
102#define STARPU_SIMGRID_HAVE_XBT_BARRIER_INIT 1
103#define STARPU_HAVE_SIMGRID_MSG_H 1
104#define STARPU_HAVE_MSG_MSG_H 1
105#define STARPU_HAVE_SIMGRID_ACTOR_H 1
106#define STARPU_HAVE_SIMGRID_SEMAPHORE_H 1
107#define STARPU_HAVE_SIMGRID_MUTEX_H 1
108#define STARPU_HAVE_SIMGRID_COND_H 1
109#define STARPU_HAVE_SIMGRID_BARRIER_H 1
110#define STARPU_HAVE_XBT_SYNCHRO_H 1
111#define STARPU_HAVE_VALGRIND_H 1
112#define STARPU_HAVE_MEMCHECK_H 1
113#define STARPU_VALGRIND_FULL 1
114#define STARPU_SANITIZE_LEAK 1
115#define STARPU_NON_BLOCKING_DRIVERS 1
116/* workers must call callbacks on sleep/wake-up */
117#define STARPU_WORKER_CALLBACKS 1
118
119#define STARPU_HAVE_ICC 1
120
126#define STARPU_USE_MPI 1
127#define STARPU_USE_MPI_MPI 1
128#define STARPU_USE_MPI_NMAD 1
129
130#define STARPU_ATLAS 1
131#define STARPU_GOTO 1
132#define STARPU_OPENBLAS 1
133#define STARPU_MKL 1
134#define STARPU_ARMPL 1
135#define STARPU_SYSTEM_BLAS 1
136#define STARPU_HAVE_BLAS 1
137
143#define STARPU_OPENCL_DATADIR 1
144#define STARPU_HAVE_MAGMA 1
145
146#define STARPU_OPENGL_RENDER 1
147#define STARPU_USE_GTK 1
148#define STARPU_HAVE_X11 1
149
150#define STARPU_HAVE_POSIX_MEMALIGN 1
151
152#define STARPU_HAVE_MEMALIGN 1
153
154#define STARPU_HAVE_MALLOC_H 1
155
156#define STARPU_HAVE_SYNC_BOOL_COMPARE_AND_SWAP 1
157#define STARPU_HAVE_SYNC_VAL_COMPARE_AND_SWAP 1
158#define STARPU_HAVE_SYNC_FETCH_AND_ADD 1
159#define STARPU_HAVE_SYNC_FETCH_AND_OR 1
160#define STARPU_HAVE_SYNC_LOCK_TEST_AND_SET 1
161#define STARPU_HAVE_SYNC_SYNCHRONIZE 1
162#define STARPU_HAVE_ATOMIC_EXCHANGE_N 1
163
164#define STARPU_DEVEL 1
165#define STARPU_MODEL_DEBUG 1
166#define STARPU_NO_ASSERT 1
167#define STARPU_DEBUG 1
168#define STARPU_VERBOSE 1
169#define STARPU_GDB_PATH 1
170
171#define STARPU_HAVE_FFTW 1
172#define STARPU_HAVE_FFTWF 1
173#define STARPU_HAVE_FFTWL 1
174#define STARPU_HAVE_CUFFTDOUBLECOMPLEX 1
175
176#define STARPU_HAVE_CURAND 1
177
185#define STARPU_MAXNODES 1
186
194#define STARPU_NMAXBUFS 1
195
202#define STARPU_MAXCPUS 1
203
210#define STARPU_MAXNUMANODES 1
211
216#define STARPU_MAXCUDADEVS 1
217
223#define STARPU_MAXOPENCLDEVS 1
224
230#define STARPU_MAXMICDEVS 1
231
236#define STARPU_NMAXWORKERS 1
237
244#define STARPU_NMAX_SCHED_CTXS 1
245
252#define STARPU_MAXIMPLEMENTATIONS 1
253
254#define STARPU_MAXMPKERNELS 1
255#define STARPU_USE_SC_HYPERVISOR 1
256#define STARPU_SC_HYPERVISOR_DEBUG 1
257#define STARPU_HAVE_GLPK_H 1
258
259#define STARPU_HAVE_CUDA_MEMCPY_PEER 1
260#define STARPU_HAVE_LIBNUMA 1
261
262#define STARPU_HAVE_WINDOWS 1
263#define STARPU_LINUX_SYS 1
264#define STARPU_HAVE_SETENV 1
265#define STARPU_HAVE_UNSETENV 1
266#define STARPU_HAVE_UNISTD_H 1
267#define STARPU_HAVE_HDF5 1
268
269#define STARPU_USE_FXT 1
270#define STARPU_FXT_LOCK_TRACES 1
271
272#ifdef _MSC_VER
273 typedef long starpu_ssize_t;
274#define __starpu_func__ __FUNCTION__
275#else
276# include <sys/types.h>
277 typedef ssize_t starpu_ssize_t;
278#define __starpu_func__ __func__
279#endif
280
281#if defined(c_plusplus) || defined(__cplusplus)
282/* inline is part of C++ */
283# define __starpu_inline inline
284#elif defined(_MSC_VER) || defined(__HP_cc)
285# define __starpu_inline __inline
286#else
287# define __starpu_inline __inline__
288#endif
289
290#define STARPU_QUICK_CHECK 1
291#define STARPU_LONG_CHECK 1
292#define STARPU_USE_DRAND48 1
293#define STARPU_USE_ERAND48_R 1
294#define STARPU_HAVE_NEARBYINTF 1
295#define STARPU_HAVE_RINTF 1
296
297#define STARPU_HAVE_HWLOC 1
298#define STARPU_HAVE_PTHREAD_SPIN_LOCK 1
299#define STARPU_HAVE_PTHREAD_BARRIER 1
300#define STARPU_HAVE_PTHREAD_SETNAME_NP 1
301#define STARPU_HAVE_STRUCT_TIMESPEC 1
302
304#define STARPU_HAVE_HELGRIND_H 1
305
307#define HAVE_MPI_COMM_F2C 1
308
309#define STARPU_HAVE_DARWIN 1
310
311#define STARPU_HAVE_CXX11 1
312#define STARPU_HAVE_STRERROR_R 1
313#define STARPU_HAVE_STATEMENT_EXPRESSIONS 1
314#define STARPU_PERF_MODEL_DIR 1
315
316#endif