gpt4 book ai didi

dpdk - Hugepages 存在,但不是免费的,也不是保留的。或者,我如何释放大页面?

转载 作者:行者123 更新时间:2023-12-01 01:56:57 27 4
gpt4 key购买 nike

我正在运行一个 SPDK 实验(它使用 DPDK,而后者又使用大页面)并且它昨天开始工作了。我在共享环境中运行它们(我认为还有一两个人使用这台机器做其他事情)。现在,每当我尝试运行它时,我都会收到一个没有免费的大页面错误。
/proc/meminfo 的输出是:

HugePages_Total:    1024
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
挂载输出:
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb,release_agent=/run/cgmanager/agents/cgm-release-agent.hugetlb)
在我上一个环境中起作用的东西不再起作用:
umount -a -t hugetlbfs
mount -t hugetlbfs nodev /mnt/huge
然后/proc/meminfo 的输出是
HugePages_Total:    1024
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 1024
但是如果我尝试运行它:
EAL: No free hugepages reported in hugepages-1048576kB
EAL: No free hugepages reported in hugepages-2048kB
PANIC in rte_eal_init():
Cannot get hugepage information
为什么这些页面是多余的而不是免费的?有什么办法可以释放它们吗?我想重新启动系统,因为可能有其他作业正在运行或有人在使用它。
编辑:重新启动机器,分配更多的大页面,它们是免费的。执行测试,它崩溃了,现在大页面又丢失了。
没有有效答案的相关问题(至少对我而言):
How to release hugepages from the crashed application
How to really free hugepages in Linux for use by a new process?

最佳答案

如果您按照以下说明进行操作,则可以摆脱分配的大页面:

1)让我们检查一下重启时空闲的大页面

dpdk@dpdkvm:~$ ls /mnt/huge/
empty

dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ cat /proc/meminfo
...
HugePages_Total: 256
HugePages_Free: 256
...

2)启动dpdk应用参数错误,产生错误
dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ sudo ./build/kni -c 0x03 -n 2 -- -P -p 0x03 --config="(0,0,1),(1,0,1)"
...
EAL: Error - exiting with code: 1
Cause: No supported Ethernet device found

3)当我检查大页面时,没有任何免费的
dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ cat /proc/meminfo
...
HugePages_Total: 256
HugePages_Free: 0
...

4) 现在,当我检查挂载的大页面目录时,我可以看到 dpdk 应用程序没有返回给操作系统的文件。
dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ ls /mnt/huge/
...
rtemap_0 rtemap_137 rtemap_176 rtemap_214 rtemap_253 rtemap_62
...

5)最后,如果您删除以 rtemap 开头的文件,您可以将大页面归还
dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ sudo rm /mnt/huge/*
[sudo] password for dpdk:
dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ cat /proc/meminfo
...
HugePages_Total: 256
HugePages_Free: 256
...

关于dpdk - Hugepages 存在,但不是免费的,也不是保留的。或者,我如何释放大页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39845042/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com