From aa649513987ada474bc3913ccc2d17ad9faa7eb2 Mon Sep 17 00:00:00 2001 From: Peter Puhov Date: Fri, 22 Nov 2019 10:05:03 -0500 Subject: [PATCH] Add NUMA nodes --- devlib/target.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/devlib/target.py b/devlib/target.py index 8fc0e8e..95561fe 100644 --- a/devlib/target.py +++ b/devlib/target.py @@ -160,6 +160,27 @@ class Target(object): num_cpus += 1 return num_cpus + @property + @memoized + def number_of_nodes(self): + num_nodes = 0 + nodere = re.compile(r'^\s*node\d+\s*$') + output = self.execute('ls /sys/devices/system/node', as_root=self.is_rooted) + for entry in output.split(): + if nodere.match(entry): + num_nodes += 1 + return num_nodes + + @property + @memoized + def list_nodes_cpus(self): + nodes_cpus = [] + for node in range(self.number_of_nodes): + path = self.path.join('/sys/devices/system/node/node{}/cpulist'.format(node)) + output = self.read_value(path) + nodes_cpus.append(ranges_to_list(output)) + return nodes_cpus + @property @memoized def config(self):