blob: 3c4dd44d45cb7b668bd22822b6f105c1de9eaf86 [file] [log] [blame]
Hitoshi Mitakec426bba2009-11-05 09:31:31 +09001#ifndef BENCH_H
2#define BENCH_H
3
Vinson Leed1398cc2013-03-13 15:34:24 -07004/*
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.
8 *
9 * PA-RISC uses different madvise values from other architectures and
10 * needs to be special-cased.
11 */
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
27
Ingo Molnar1c13f3c2012-12-06 13:51:59 +010028extern int bench_numa(int argc, const char **argv, const char *prefix);
Ingo Molnar606bc1e2009-11-10 20:50:53 +090029extern int bench_sched_messaging(int argc, const char **argv, const char *prefix);
30extern int bench_sched_pipe(int argc, const char **argv, const char *prefix);
Irina Tirdea1d037ca2012-09-11 01:15:03 +030031extern int bench_mem_memcpy(int argc, const char **argv,
32 const char *prefix __maybe_unused);
Jan Beulichbe3de802012-01-24 10:03:22 -020033extern int bench_mem_memset(int argc, const char **argv, const char *prefix);
Davidlohr Buesoa0439712013-12-14 20:31:55 -080034extern int bench_futex_hash(int argc, const char **argv, const char *prefix);
Davidlohr Bueso27db7832013-12-14 20:31:56 -080035extern int bench_futex_wake(int argc, const char **argv, const char *prefix);
Davidlohr Bueso0fb298c2013-12-14 20:31:57 -080036extern int bench_futex_requeue(int argc, const char **argv, const char *prefix);
Hitoshi Mitakec426bba2009-11-05 09:31:31 +090037
Ingo Molnar606bc1e2009-11-10 20:50:53 +090038#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
Hitoshi Mitake242aa142009-11-10 08:19:59 +090042
Ingo Molnar606bc1e2009-11-10 20:50:53 +090043#define BENCH_FORMAT_UNKNOWN -1
Hitoshi Mitake242aa142009-11-10 08:19:59 +090044
45extern int bench_format;
Davidlohr Buesob6f06292014-06-16 11:14:19 -070046extern unsigned int bench_repeat;
Hitoshi Mitake242aa142009-11-10 08:19:59 +090047
Hitoshi Mitakec426bba2009-11-05 09:31:31 +090048#endif