作者:瀚高PG实验室 (Highgo PG Lab)- 徐云鹤
从PostgresSQL 9.4开始添加了服务器参数huge_pages。 使用HugePage会导致更小的page表,并减少CPU在内存管理上花费的时间,从而提高性能。
通常,虚拟页面的默认粒度是4k。对于使用1M虚拟内存的进程,即将虚拟地址映射到物理地址的256个页表项。对于使用1G字节的虚拟内存进行处理,即256000个虚拟页表条目。尽管现代cpus具有tlb来加速虚拟/物理内存映射,但对于使用大型内存空间的进程来说仍有很多开销。HugePage允许粒度较小的虚拟页面,这意味着较少的页面表项和较少的查找。 x86-64 CPU架构支持2MB和1GB大小的页面。
不幸的是,PostgresSQL只支持Linux上的HugePage,并且要使用HugePage,您必须在操作系统中启用HugePage。
建议使用PG时禁用透明大页(THP),只使用普通的HugePage。
1423

被折叠的 条评论
为什么被折叠?



