blob: 0fdc85269c4dc4c2bd72220526879a07e76679be [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);
Hitoshi Mitakec426bba2009-11-05 09:31:31 +090034
Ingo Molnar606bc1e2009-11-10 20:50:53 +090035#define BENCH_FORMAT_DEFAULT_STR "default"
36#define BENCH_FORMAT_DEFAULT 0
37#define BENCH_FORMAT_SIMPLE_STR "simple"
38#define BENCH_FORMAT_SIMPLE 1
Hitoshi Mitake242aa142009-11-10 08:19:59 +090039
Ingo Molnar606bc1e2009-11-10 20:50:53 +090040#define BENCH_FORMAT_UNKNOWN -1
Hitoshi Mitake242aa142009-11-10 08:19:59 +090041
42extern int bench_format;
43
Hitoshi Mitakec426bba2009-11-05 09:31:31 +090044#endif