Re: [dpdk-dev] [PATCH v5] build: optional NUMA and cpu counts detection
From: Piotr Kubaj <hidden>
Date: 2021-09-01 08:50:20
On 21-08-31 07:54:16, Juraj Linkeš wrote:
quoted
-----Original Message----- From: Piotr Kubaj <redacted> Sent: Tuesday, August 31, 2021 2:55 AM To: Juraj Linkeš <redacted> Cc: David Christensen <redacted>; thomas@monjalon.net; david.marchand@redhat.com; bruce.richardson@intel.com; Honnappa.Nagarahalli@arm.com; Ruifeng.Wang@arm.com; ferruh.yigit@intel.com; jerinjacobk@gmail.com; jerinj@marvell.com; stephen@networkplumber.org; dev@dpdk.org Subject: Re: [PATCH v5] build: optional NUMA and cpu counts detection Hi, sorry for the late answer.Thanks for the answer anyway, better late than never.quoted
I suppose you mean sysctl command, not systemctl.That's right. What does lscpu say? Are the NUMA nodes non-contiguous like this?: NUMA node0 CPU(s): 0-63 NUMA node8 CPU(s): 64-127 NUMA node252 CPU(s): NUMA node253 CPU(s): NUMA node254 CPU(s): NUMA node255 CPU(s):quoted
On dual CPU systems, it returns 2. On single CPU ones, 1.I asked the previous question so that we know the actual numa node number of the second CPU. If it's 8, then sysctl does some renumeration and we can't use it. Bruce, maybe we should just parse lscpu output? That introduces a dependency, but that may not be such a big deal as lscpu is pretty common.
There's no lscpu on FreeBSD in the base system. There is one in packages, but it's written only for amd64 / i386 since it uses CPUID. https://github.com/NanXiao/lscpu
quoted
On 21-08-03 10:21:50, Juraj Linkeš wrote:quoted
quoted
-----Original Message----- From: David Christensen <redacted> Sent: Tuesday, August 3, 2021 1:29 AM To: Juraj Linkeš <redacted>; thomas@monjalon.net; david.marchand@redhat.com; bruce.richardson@intel.com; Honnappa.Nagarahalli@arm.com; Ruifeng.Wang@arm.com; ferruh.yigit@intel.com; jerinjacobk@gmail.com; jerinj@marvell.com; stephen@networkplumber.org; Piotr Kubaj [off-list ref] Cc: dev@dpdk.org Subject: Re: [PATCH v5] build: optional NUMA and cpu counts detection On 8/2/21 5:44 AM, Juraj Linkeš wrote:quoted
quoted
+if os.name == 'posix': + if os.path.isdir('/sys/devices/system/node'): + numa_nodes = glob.glob('/sys/devices/system/node/node*') + numa_nodes.sort() + print(int(os.path.basename(numa_nodes[-1])[4:]) + 1) + else: + subprocess.run(['sysctl', '-n', 'vm.ndomains'], +check=False) +Bruce, David, Thomas, Is DPDK actually supported on Power9 FreeBSD? Is anyone using thiscombination? How can we address the open question of what exactly does sysctl -n vm.ndomains return on a Power9 FreeBSD system? Or should we just leave it as is? Or maybe add 1 to the output (as we do in othercases)?quoted
quoted
Not supported within IBM, but you can buy OpenPOWER boxes from 3rd parties such as Raptor Computing Systems so there may be customers using DPDK on POWER with FreeBSD that I don't track. Adding Piotr Kubaj who has commented on POWER/FreeBSD issues in this past. DaveThanks, David. Piotr, to provide more context, we're trying to figure out what the highestNUMA node on a system is.quoted
On P9 systems, here's how NUMA nodes look like in Linux: NUMA node0 CPU(s): 0-63 NUMA node8 CPU(s): 64-127 NUMA node252 CPU(s): NUMA node253 CPU(s): NUMA node254 CPU(s): NUMA node255 CPU(s): The highest NUMA with CPUs is node8. We're trying to get the highest NUMA with CPUs on P9 FreeBSD systems, butwe don't know whether FreeBSD NUMA layout looks the same (does FreeBSD report non-contiguous NUMA nodes as Linxu above, or does it renumerate) a what does "systemctl -n vm.ndomains" return. Could you check these for us?
--