summaryrefslogtreecommitdiffstats
path: root/src/common/numa.h
blob: 78851deef514870c718e533132215380c95fb47b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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);