JVM启动速度大页内存验证
大页内存设置
先查看
cat /proc/meminfo |grep -i huge
获取大页内存的大小信息.
AnonHugePages: 42022912 kB
HugePages_Total: 158720
HugePages_Free: 1005
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
需要注意, 我这个里面带一个Oracle数据库.
所以在用大页都是Oracle数据库的.
增加部分系统设置内容:
vim /etc/security/limits.conf
* soft memlock unlimited
* hard memlock unlimited
* soft nofile unlimited
* hard nofile unlimited
* soft nproc unlimited
* hard nproc unlimited
大页内存的设置
增加设置信息
vim /etc/sysctl.conf
增加一行, 修改之前的配置
注意 因为默认页大小是 2MB 我增加60G的空间给JVM使用
本来是数据库服务器的资源使用较大:
vm.nr_hugepages = 189440
#vm.nr_hugepages = 158720
注释掉之前的数据 , 增加新的数值.
注意需要使用 sysctl -p 的方式使之生效
注意 扩展 大页内存 需要耗时较久的时间
需要多等一下命令执行完成.
jvm 启动参数的配置
在启动脚本里面增加内容为:
-XX:+UseLargePages -XX:LargePageSizeInBytes=2m -Xms48G -Xmx48G
注意将大页内存设置为 48左右.
现阶段大页内存的信息为:
HugePages_Total: 189440
HugePages_Free: 31725
修改端口避免有冲突进行启动jvm
nohup ./startup.sh >20230206.txt 2>&1 &
查看启动速度.
注意修改大页之前的启动速度分别为:
824.045 seconds
787.267 seconds
777.949 seconds
修改脚本之后的启动速度为:
826.263 seconds
790.765 seconds
851.384 seconds
发现大页内存的启动速度会变慢.
注意 启动过程中可以观察 大页内存的使用.
HugePages_Total: 189440
HugePages_Free: 22989
HugePages_Rsvd: 16809
HugePages_Surp: 0
Hugepagesize: 2048 kB
总结
启动速度会少许变慢.
但是不知道性能有否提升, 需要进行一次严格的压测才可以.
感觉可以验证一下 在高并发情况下性能的情况.
性能优化的思路 感觉至少在如下方面:
1. 内存分配方面.
2. 进程切换方面.
3. IO(网络和文件系统)优化方面.
4. 池化资源优化方面.
5. 部分激进的内存处理调优方面.
感觉以后可以从这些方面进行深入处理.
JVM启动速度大页内存验证的更多相关文章
- 大页内存(HugePages)在通用程序优化中的应用
今天给大家介绍一种比较新奇的程序性能优化方法-大页内存(HugePages),简单来说就是通过增大操作系统页的大小来减小页表,从而避免快表缺失.这方面的资料比较贫乏,而且网上绝大多数资料都是介绍它在O ...
- [development][dpdk][hugepage] 大页内存的挂载
参考: [development][dpdk][hugepage] 为不同的结点分配不同大小的大页内存 完成了以上内容之后, 下一步需要做的是挂载, 大页内存只有被挂载了之后,才能被应用程序使用. 挂 ...
- [development][dpdk][hugepage] 为不同的结点分配不同大小的大页内存
这个事来自dpdk, 所以, 先参考. http://dpdk.org/doc/guides/linux_gsg/sys_reqs.html 当前, 假设你已经读过上边内容, 知道大页内存时候, dp ...
- 大页内存(HugePages)
原文转载自:http://blog.csdn.net/yutianzuijin/article/details/41912871 今天给大家介绍一种比较新奇的程序性能优化方法—大页内存(HugePag ...
- OpenStack 高性能虚拟机之大页内存
目录 文章目录 目录 前文列表 虚拟存储器系统 页式虚拟存储器 大页内存 Linux 的大页内存 大页的实现原理 大页内存配置 透明巨型页 THP 大页面对内存的影响 Nova 虚拟机的大页内存设置 ...
- Linux大页内存管理等---菜鸟初学
1. 查看linux的内存情况: free -m 2. 查看是否开启大页的方法: cat /proc/meminfo |grep -i HugePage AnonHugePages: 276480 k ...
- Linux 之 hugepage 大页内存理论
HugePages是通过使用大页内存来取代传统的4kb内存页面,使得管理虚拟地址数变少,加快了从虚拟地址到物理地址的映射以及通过摒弃内存页面的换入换出以提高内存的整体性能.尤其是对于8GB以上的内存以 ...
- UIO,大页内存,CPU亲和性,NUMA机制等
Linux环境下的UIO(Userspace I/O) UIO 用户空间下驱动程序的支持机制.DPDK使用UIO机制使网卡驱动程序运行在用户态,并采用轮询和零拷贝方式从网卡收取报文,提高收发报文的性能 ...
- Linux内存大页设置
实际环境中,遇到3次由于内存大页设置参数不合理或者错误,导致系统内存不足,或者数据库内存不足的问题. 按照如下方式,推荐设置大页参考下发设置! 参考HugePages on Oracle Linux ...
- [转帖] 学习 Linux 大页的内存知识
一.在解释什么情况下需要开启大页和为啥需要开启大页前先了解下Linux下页的相关的知识:以下的内容是基于32位的系统,4K的内存页大小做出的计算1)目录表,用来存放页表的位置,共包含1024个目录en ...
随机推荐
- “绝影”机器狗如何利用ModelArts强化学习算法更改导航轨迹
摘要:利用ModelArts平台云端协同进行强化学习AI能力部署,导航机器狗绕开火焰关闭可燃气体开关灭火. 在刚刚结束的HC Keynote中,为大家演示了基于华为ModelArts和Atlas 20 ...
- 云小课 | 一个三分钟快速定制OCR应用的神器,要不?
摘要:ModelArts Pro提供了文字识别套件,基于丰富的文字识别算法和行业知识积累,帮助客户快速构建满足不同业务场景需求的文字识别服务.三分钟即可快速定制OCR服务,实现多种版式图像的文字信息结 ...
- 跟我读论文丨ACL2021 NER BERT化隐马尔可夫模型用于多源弱监督命名实体识别
摘要:本文是对ACL2021 NER BERT化隐马尔可夫模型用于多源弱监督命名实体识别这一论文工作进行初步解读. 本文分享自华为云社区<ACL2021 NER | BERT化隐马尔可夫模型用于 ...
- head/reset/revert/rebase代码回滚全解:git提交记录的背后原理
多人合作程序开发的过程中,我们有时会出现错误提交的情况,此时我们希望能撤销提交操作,让程序回到提交前的样子,操作有: 回退(reset):reset是彻底回退到指定的commit版本,该commit后 ...
- ByConity 社区回顾|ByConity 和开发者们一起展望未来,携手共进!
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 新年伊始,我们想在这里感谢一群 ByConity 社区的小伙伴们. 正是因为有社区的开发者的支持,截止到 2023 ...
- Solon 的热插拔能力框架 “solon.hotplug” 介绍
<dependency> <groupId>org.noear</groupId> <artifactId>solon.hotplug</arti ...
- C++11实用特性1
1 原始字面量 有时候在输出一个路径字符串时,编译器会将其中的部分内容识别成转义字符进行输出,可以用R "xxx(原始字符串)xxx"其中()两边的字符串可以省略.原始字面量R可以 ...
- SpringBoot Serverless 实战 | 监控调试
SpringBoot 是基于 Java Spring 框架的套件,它预装了 Spring 的一系列组件,让开发者只需要很少的配置就可以创建独立运行的应用程序.在云原生的世界,有大量的平台可以运行 Sp ...
- vue学习笔记 十七、父子组件 ---> 子组件传值
系列导航 vue学习笔记 一.环境搭建 vue学习笔记 二.环境搭建+项目创建 vue学习笔记 三.文件和目录结构 vue学习笔记 四.定义组件(组件基本结构) vue学习笔记 五.创建子组件实例 v ...
- MySQL驱动扯后腿?Spring Boot用虚拟线程可能比用物理线程还差
之前已经分享过多篇关于Spring Boot中使用Java 21新特性虚拟线程的性能测试案例: Spring Boot 3.2虚拟线程搭建静态文件服务器有多快? Spring Boot 虚拟线程与We ...