前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >透明巨页和巨页的详解

透明巨页和巨页的详解

作者头像
233333
发布2022-12-02 16:35:34
9020
发布2022-12-02 16:35:34
举报
文章被收录于专栏:linux驱动个人学习

大页内存

大页内存(HugePages),有时也叫“大内存页”、“内存大页”、“标准大页”。操作系统以内存页为单位管理内存,内存页的大小对系统性能有影响。内存页设得太小,内存页会很多,管理内存页的数组会比较大,耗内存,同时TLB(Translation Lookaside Buffer,页表寄存缓冲器,可理解为页表缓冲)大小是固定的,导致TLB MISS增加。在不同的应用场合,内存页的大小的最优值是不同的。所以一般的系统都支持多种内存页的取值。

大页内存的优势

“大内存页”有助于 Linux 系统进行虚拟内存管理。顾名思义,除了标准的4KB大小的页面外,它还能帮助管理内存中的巨大的页面(通常是2MB)。使用“大内存页”,你最大可以定义 1GB 的页面大小。对于那些内存操作非常频繁的业务来说,可以有效的提高性能。简而言之,通过启用大页内存,系统只需要处理较少的页面映射表,从而减少访问/维护它们的开销!

大页内存与透明大页的关系

大页内存类似专用内存,会从系统中抠出一块大内存,而想要使用这块内存,应用程序必须修改程序。 其次,如果程序内存使用较少,却申请了大页,就造成了内存浪费,这个时候就要用到透明大页(Transparent Huge Pages,THP)了。这两者的区别在于大页的分配机制:标准大页管理是预分配的方式,而透明大页管理则是动态分配的方式,且不需要修改程序源码。

透明大页之功

THP 是一个提取层,可用于自动创建、管理和使用超大页面的大多数方面。THP可以改进系统的性能,可以减少使用超大页面的复杂行,目前THP已在各种系统、配置、程序和负载中测试优化,可以改进大多数系统配置的性能。

查看大页内存方法

代码语言:javascript
复制
grep Huge /proc/meminfo
#查看大页内存使用情况
cat /sys/devices/system/node/node*/meminfo | fgrep Huge
#查看各个numa节点的大页内存情况
cat /proc/mounts
#查看大页内存挂载情况
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-11-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 大页内存
  • 大页内存的优势
  • 大页内存与透明大页的关系
  • 透明大页之功
  • 查看大页内存方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档