在RHEL/CentOS 7/8中配置大页面的3个简单步骤

在RHEL/CentOS 7/8中配置大页面的3个简单步骤

应用介绍



在本文中,我将分享配置大页面的步骤,并创建大页面池以根据Red Hat和CentOS 7 Linux的请求将页面分配给应用程序。
我们将使用hugeadm工具配置大型页面

在Red Hat/CentOS 7/8中配置大页面

我们可以使用内核可调参数vm.nr_hugepages来配置大页面。

第1步:检查大页面状态

检查vm.nr_hugepages的现有值

[root@centos8 ~]# sysctl -a | grep vm.nr_hugepages
vm.nr_hugepages = 0

因此,看来在我的CentOS 8服务器中禁用了vm.nr_hugepages。

  • 我们知道AnonHugePages和vm.nr_hugepages之间的区别吗?

  • 其中" AnonHugePages"被称为"透明HugePages",而" vm.nr_hugepages"被称为"显式透明HugePages"。

无论如何,这些主题不其中我们知道我们的大页面已禁用,因此我们将启用和配置2048个大页面,因此我们将在内核中保留2MB的大页面内存

:更新/etc/sysctl.conf中的vm.nr_hugepages

编辑/etc/sysctl.conf文件以配置大页面并在vm.nr_hugepages中指定大页面的数量:

vm.nr_hugepages = 2048

:刷新内核参数

接下来,我们必须使用sysctl -p刷新内核参数,以激活新的hugepages值

[root@centos8 ~]# sysctl -p

验证新的大页预订

[root@centos8 ~]# sysctl -a | grep vm.nr_hugepages
vm.nr_hugepages = 2048

:重新启动

  • 用一种方式,我们可以说"重新引导不是强制性的,但强烈建议"。
    因为我们知道vm.nr_hugepages现在正在向我们显示新的保留。

  • 但是由于提供的内存量必须由内核保留,因此我们必须确保"有足够的连续内存可用于保留"

  • 我们可以在以下位置阅读更多内容:Linux中的Linux内存管理入门指南

  • 只有在早期启动阶段,当应用程序或者系统进程都不会使用系统内存,并且内核可以轻松地为大型页面分配所提供的值时,才可能这样做

  • 因此,强烈建议在生产环境中配置大页面后重新启动

[root@centos8 ~]# systemctl reboot

在Red Hat/CentOS 7中配置大页面池

  • hugeadm实用程序由软件包" libhugetlbfs-utils"提供,可用于显示和配置系统大页面池。

  • 池的大小设置为"最小"和"最大"阈值。

  • "最小值"是由内核预先分配的,并保证将其保留为大页,直到池缩小为止。

  • 如果设置为" maximum",则当应用程序请求的大页面超出池的最小大小时,系统将动态分配页面。

  • 无法保证不能分配超出此最小池大小的页面。

:安装libhugetlbfs-utils

" hugeadm"实用程序由软件包" libhugetlbfs-utils"提供,可用于显示和配置系统巨大的页面池。
池的大小设置为最小和最大阈值。

执行以下命令安装" libhugetlbfs-utils"软件包。

说明:

在RHEL系统上,我们必须具有RHN的有效订阅,或者我们可以配置本地脱机存储库,通过该本地脱机存储库,yum软件包管理器可以安装提供的rpm及其依赖项。

# yum -y install libhugetlbfs libhugetlbfs-utils

:检查支援的HugePage大小

在配置大页面池之前,请列出系统支持的所有页面大小,即使没有可用的池也是如此

# hugeadm --page-sizes-all
2097152
1073741824

因此,当前我们的Red Hat和CentOS 7服务器支持2MB和1GB的大页面大小

此命令显示系统支持的每个页面大小,并配置了一个池

# hugeadm --page-sizes
2097152

因此,当前我们的服务器配置为使用2MB的大页面大小。
我们也可以从/proc/cpuinfo获取此信息。
我们还应该知道如何检查CPU是否支持大页面

# grep Hugepagesize /proc/meminfo
Hugepagesize:       2048 kB

以下命令显示hugetlbfs的所有活动安装点

# hugeadm --list-all-mounts
Mount Point          Options
/dev/hugepages       rw,relatime

对于系统支持的每个页面大小,这将显示池中巨大页面的最小,当前和最大数目。

  • 最小值由内核预先分配,并确保在缩小池之前一直保持为大页面。

  • 如果设置了最大值,则当应用程序请求的大页面超出池的最小大小时,系统将动态分配页面。

  • 无法保证可以分配的页面数超过此最小池大小。

  • 由于我们的大页面大小为2MB,我们可以看到2097152的大页面池,而对于其他大页面大小,则没有配置池

# hugeadm --pool-list
      Size  Minimum  Current  Maximum  Default
   2097152    12850    12850    12850        *
1073741824        0        0        0

其中

Minimum -   This is the size of the static pool and there will always be at
            least this number of hugepages in use by the system, either by
            applications or kept by the kernel in a reserved  pool. 
             
Current -   This value is the number of hugepages currently in use, either
            by applications or stored on the kernels free list.
             
Maximum -   This value is the largest number of hugepages that can be in
            use at any given time.

第2步:使用hugeadm配置HugePages

(--pool-pages-min)选项设置或者调整页面大小的池中的最小大页面数。
大小可以分别通过添加K,M或者G来以字节或者千字节,兆字节或者千兆字节指定,也可以以DEFAULT的形式指定,DEFAULT使用系统默认的大页面大小作为大小。

其中我们将4096设置为2MB HugePage的最小页面数。

# hugeadm --pool-pages-min 2MB:4096

(--pool-pages-max)选项设置或者调整最大页面数。
注意:虽然可以保证应用程序可以使用最小页面数,但是当应用程序请求的大页面数在最小和最大池大小之间时,不能保证系统可以按需分配页面。

# hugeadm --pool-pages-max 2MB:12850

:验证新的大页面池

再次验证池列表

# hugeadm --pool-list
      Size  Minimum  Current  Maximum  Default
   2097152     4096     4096    12850        *
1073741824        0        0        0


文件列表(部分)

名称 大小 修改日期

立即下载

相关下载

[磁耦合谐振buckss仿真] 无线电能传输技术可有效地解决电源接入问题,使充电过程便捷、安全,解决了传统依靠电导体直接进行物理接触的电源直接接触式输电模式所带来的插电火花、积碳、不易维护、易产生磨损,特别是在特殊环境下用电存在的安全隐患等问题。
[QT学习日记篇01(1)-QT界面初探- *.pro文件详解] Qt基础课程完结项目,完成一款小游戏并封装:翻金币游戏,通过点击金币进行翻面,让所有金币为同一面就游戏通过进入下一关。 过程中会使用前面学到的 “信号和槽”,“Qt图片资源显示”,“Qt播放音频”,“Qt绘图函数”,“Qt消息控件”等等知识。是一次前面所学知识的汇总。
[MMC模块化多电平换流器常用调制策略的对比分析] 在Matlab/Simulink环境下分别搭建了桥臂数量为6和10的两种调制方法的仿真模型,分析了模块数量与调制方法对输出的正弦电压的影响。
[svpwm同步调制] 同步调制下,通过把载波的频率固定为参考波频率的整数倍,同时固定两者的相位关系。通过这种方法可以消除3的倍数次谐波,并且通过适合pwm波正负半周期对称(N载波比取奇数),消除偶次谐波,总体同步调制所含谐波只为6k+1也就是5 7 11 13次谐波等。
[避雷器comsol仿真] comsol实现避雷器的电,磁,热仿真计算模型
[FPGA车牌识别代码

评论列表 共有 0 条评论

暂无评论

微信捐赠

微信扫一扫体验

立即
上传
发表
评论
返回
顶部