JVM优化之整合大内存储器分页(LargePage)

本文探讨了内存储器分页原理,特别是大内存储器分页(LargePage)如何提升JVM性能。通过调整页大小,可以减少TLB miss,提高内存访问效率。文章介绍了Linux和Windows下启用和配置大页面的方法,同时也提到了大页面可能带来的负面影响,如区域划分不均。建议在调整页面大小时进行基准测试,以确保最佳性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
正文将从内存储器分页的原理,何以整合分页大小两节内容,向你阐明LargePage对JVM的性能有何晋升功用,并在文末指明了大内分页的反作用。OK,让我们开始吧!

内存储器分页大小对性能的擢升原理
第一,我们亟需回溯一小部分电脑构成原理,这对了解大内存储器分页对于JVM性能的提拔是有好处的。

什么是内存储器分页?
我们晓得,CPU是透过寻址来访问内存储器的。32位CPU的寻址宽度是 零~零xFFFFFFFF ,计算后失去的大小是四G,且不说可支持的物理内存储器最大是四G。

但在实践过程中,遇到了这么的问题,程序应用四G内存储器,而可用物理内存储器小于四G,以致程序只能减低内存储器占用。
为理解决该类问题,当代CPU引来了 MMU(Memory Management Unit 内存储器治理单元)。

MMU 中的核心理想是用虚拟地址代替物理地址,即CPU寻址时施用虚址,由 MMU 负责将虚址照射为物理地址。
这种设计解决了物理内存储器小于四G对程序的限制,对程序来说,自个儿就像在施用四G内存储器同样。



内存储器分页(Paging)是在应用MMU的基础上,提出的一种有效内存储器管理机制。它将虚拟地址和物理地址按固定大小(四K)切割成页(page)和页帧(page frame),而且责任书页与页帧的大小雷同。

分页的好处是,增高访问内存储器的效率,支持非连续性内存分配,在程序内存储器不够用时,可以将不惯用的物理内存储器页转移到其余储存装置上,例如磁盘,但务须以页为组织传输,这便是大伙耳闻则诵的虚拟内存。

在上文中谈到,虚拟地址与物理地址要照射。这个投射的关系, 现阶段是被 MMU 储存在物理内存储器上一个被号称页表(page table)的地方。
如次图:



从这张图中,可以明晰地看到CPU与页表,物理内存储器其间的交互关系。

更上一层楼优化,引出TLB(Translation lookaside buffer,页表寄存器缓冲)
由上一节可知,页表是储存在内存储器中的。我们晓得CPU经过总路线访问内存储器,是慢于直接访问寄存器的。
为了更进一步优化性能,当

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值