diff options
Diffstat (limited to 'src/common/numa.h')
-rw-r--r-- | src/common/numa.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/common/numa.h b/src/common/numa.h new file mode 100644 index 000000000..78851deef --- /dev/null +++ b/src/common/numa.h @@ -0,0 +1,24 @@ +// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- +// vim: ts=8 sw=2 smarttab + +#pragma once + +#include <include/compat.h> +#include <sched.h> +#include <ostream> +#include <set> + +int parse_cpu_set_list(const char *s, + size_t *cpu_set_size, + cpu_set_t *cpu_set); +std::string cpu_set_to_str_list(size_t cpu_set_size, + const cpu_set_t *cpu_set); +std::set<int> cpu_set_to_set(size_t cpu_set_size, + const cpu_set_t *cpu_set); + +int get_numa_node_cpu_set(int node, + size_t *cpu_set_size, + cpu_set_t *cpu_set); + +int set_cpu_affinity_all_threads(size_t cpu_set_size, + cpu_set_t *cpu_set); |