- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在运行一个 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
为什么这些页面是多余的而不是免费的?有什么办法可以释放它们吗?我想重新启动系统,因为可能有其他作业正在运行或有人在使用它。
最佳答案
如果您按照以下说明进行操作,则可以摆脱分配的大页面:
1)让我们检查一下重启时空闲的大页面
dpdk@dpdkvm:~$ ls /mnt/huge/
empty
dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ cat /proc/meminfo
...
HugePages_Total: 256
HugePages_Free: 256
...
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
dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ cat /proc/meminfo
...
HugePages_Total: 256
HugePages_Free: 0
...
dpdk@dpdkvm:~/dpdk-1.8.0/examples/kni$ ls /mnt/huge/
...
rtemap_0 rtemap_137 rtemap_176 rtemap_214 rtemap_253 rtemap_62
...
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/
我下载并构建了 dpdk-stable-16.11.4 版本(使用 x86_64-native-linuxapp-gcc 目标)。我正在运行 Ubuntu 16.04.3 LTS。根据 http://
由于 Neo4j 主要在内存中工作,我想知道在我的 Linux 内核中启用大页面( https://www.kernel.org/doc/Documentation/vm/hugetlbpage.tx
我在我的 linux 应用程序中使用了大页面,我想知道两个不同的进程是否可以共享大页面的相同挂载点。让我更具体地说明我的观点。我是这样挂载hugepage文件系统的, mount -t hugetlb
如果我将 64MB 的 2MB 大页面挂载到/mnt/huge2mb,这些页面使用了哪些 TLB 条目?我在我的 C 程序中 mmap() 编辑了它们。 cpuid 的输出: cache and
我有一个在 Docker 中运行的应用程序需要大页面才能运行。现在我尝试执行相同的命令集。 CMD ["mkdir", "-p" ,"/dev/hugepages"] CMD ["mount" ,"-
尝试执行此示例: https://github.com/torvalds/linux/blob/master/tools/testing/selftests/vm/hugepage-shm.c 但得到
我正在运行一个 SPDK 实验(它使用 DPDK,而后者又使用大页面)并且它昨天开始工作了。我在共享环境中运行它们(我认为还有一两个人使用这台机器做其他事情)。现在,每当我尝试运行它时,我都会收到一个
克隆后dpdk git repository并构建 helloworld 应用程序,我收到以下错误: $ ./examples/helloworld/build/helloworld EAL: Det
我的 php-fpm 进程在 Ubuntu 14.04 LTS(Nginx 服务器,MariaDB 数据库)上面临性能问题。 strace -f $(pidof php-fpm7.1 | sed 's
我正在尝试为 HPC 工作负载分配 DMA 缓冲区。它需要 64GB 的缓冲区空间。在计算之间,一些数据被卸载到 PCIe 卡上。与其将数据复制到由 pci_alloc_consistent 提供的一
我是一名优秀的程序员,十分优秀!