[v2] usertools: show hugepages on POWER systems
Checks
Commit Message
The IBM PowerNV systems include NUMA nodes that don't have associated
CPUs or hugepage memory. Here is an example on an IBM AC922 system:
$ lscpu
...
NUMA node0 CPU(s): 0-63
NUMA node8 CPU(s): 64-127
NUMA node252 CPU(s):
...
$ numastat -m
...
Node 0 Node 8 Node 252
--------------- --------------- ---------------
MemTotal 126763.19 130785.06 0.00
MemFree 119513.38 125294.44 0.00
MemUsed 7249.81 5490.62 0.00
...
HugePages_Total 4.00 1734.00 0.00
HugePages_Free 0.00 4.00 0.00
HugePages_Surp 4.00 1730.00 0.00
...
Modify dpdk-hugepages.py to test for the ../hugepages directory before
attempting to parse the hugepage entries.
Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
---
v2:
- reduce indentation and use continue to skip non-existent paths
---
usertools/dpdk-hugepages.py | 2 ++
1 file changed, 2 insertions(+)
Comments
02/12/2020 21:57, David Christensen:
> The IBM PowerNV systems include NUMA nodes that don't have associated
> CPUs or hugepage memory. Here is an example on an IBM AC922 system:
>
> $ lscpu
> ...
> NUMA node0 CPU(s): 0-63
> NUMA node8 CPU(s): 64-127
> NUMA node252 CPU(s):
> ...
>
> $ numastat -m
> ...
> Node 0 Node 8 Node 252
> --------------- --------------- ---------------
> MemTotal 126763.19 130785.06 0.00
> MemFree 119513.38 125294.44 0.00
> MemUsed 7249.81 5490.62 0.00
> ...
> HugePages_Total 4.00 1734.00 0.00
> HugePages_Free 0.00 4.00 0.00
> HugePages_Surp 4.00 1730.00 0.00
> ...
>
> Modify dpdk-hugepages.py to test for the ../hugepages directory before
> attempting to parse the hugepage entries.
>
> Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Applied, thanks
@@ -70,6 +70,8 @@ def show_numa_pages():
for numa_path in glob.glob('/sys/devices/system/node/node*'):
node = numa_path[29:] # slice after /sys/devices/system/node/node
path = numa_path + '/hugepages'
+ if not os.path.exists(path):
+ continue
for hdir in os.listdir(path):
pages = get_hugepages(path + '/' + hdir)
if pages > 0: