t-rex Error: ERROR there is not enough huge-pages memory in your system

t-rex Error: ERROR there is not enough huge-pages memory in your system

我正在使用 t-rex 流量生成器,当我尝试使用 sudo ./t-rex-64 -i --arp-refresh-period 30 运行 时,它在出现以下错误后停止:

ERROR there is not enough huge-pages memory in your system Cause: Cannot init nodes mbuf pool nodes-0

现在我的初步理解是系统中没有足够的 space 但是 free -h 的结果显示不是这样。

          total        used        free      shared  buff/cache   available
Mem:       62G        9.2G         49G        159M        4.2G         52G
Swap:      31G        1.5M         31G

当我第一次 运行 t-rex 命令时,我发现了这条警告消息

WARNING: tried to configure 2048 hugepages for socket 0, but result is: 536

是否有可能一开始尝试为 536 个大页面分配 space 并且为了正常工作我需要先释放那些 space 并再次重新分配大页面?

非常感谢任何形式的帮助。

编辑 grep Huge /proc/meminfo的结果是:

AnonHugePages:   3686400 kB
HugePages_Total:    2048
HugePages_Free:     1536
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB

我找到了解决方案,但没有正确解释该解决方案。所以如果有人能解释一下,那将非常有帮助。

可行的解决方案是添加 --astf 标志,因此整个命令看起来像

sudo ./t-rex-64 -i --astf --arp-refresh-period 30