Linux 4.1.18
[linux/fpc-iii.git] / tools / perf / bench / bench.h
blob3c4dd44d45cb7b668bd22822b6f105c1de9eaf86
1 #ifndef BENCH_H
2 #define BENCH_H
4 /*
5 * The madvise transparent hugepage constants were added in glibc
6 * 2.13. For compatibility with older versions of glibc, define these
7 * tokens if they are not already defined.
9 * PA-RISC uses different madvise values from other architectures and
10 * needs to be special-cased.
12 #ifdef __hppa__
13 # ifndef MADV_HUGEPAGE
14 # define MADV_HUGEPAGE 67
15 # endif
16 # ifndef MADV_NOHUGEPAGE
17 # define MADV_NOHUGEPAGE 68
18 # endif
19 #else
20 # ifndef MADV_HUGEPAGE
21 # define MADV_HUGEPAGE 14
22 # endif
23 # ifndef MADV_NOHUGEPAGE
24 # define MADV_NOHUGEPAGE 15
25 # endif
26 #endif
28 extern int bench_numa(int argc, const char **argv, const char *prefix);
29 extern int bench_sched_messaging(int argc, const char **argv, const char *prefix);
30 extern int bench_sched_pipe(int argc, const char **argv, const char *prefix);
31 extern int bench_mem_memcpy(int argc, const char **argv,
32 const char *prefix __maybe_unused);
33 extern int bench_mem_memset(int argc, const char **argv, const char *prefix);
34 extern int bench_futex_hash(int argc, const char **argv, const char *prefix);
35 extern int bench_futex_wake(int argc, const char **argv, const char *prefix);
36 extern int bench_futex_requeue(int argc, const char **argv, const char *prefix);
38 #define BENCH_FORMAT_DEFAULT_STR "default"
39 #define BENCH_FORMAT_DEFAULT 0
40 #define BENCH_FORMAT_SIMPLE_STR "simple"
41 #define BENCH_FORMAT_SIMPLE 1
43 #define BENCH_FORMAT_UNKNOWN -1
45 extern int bench_format;
46 extern unsigned int bench_repeat;
48 #endif