首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
MCU 单片机技术
»
PowerPC
» Eclipse OpenJ9 中的类共享(9)内存占用
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
Eclipse OpenJ9 中的类共享(9)内存占用
发短消息
加为好友
look_w
当前离线
UID
1066743
帖子
8283
精华
0
积分
4142
阅读权限
90
在线时间
233 小时
注册时间
2017-6-23
最后登录
2019-5-18
论坛元老
UID
1066743
1
#
打印
字体大小:
t
T
look_w
发表于 2018-12-7 19:31
|
只看该作者
Eclipse OpenJ9 中的类共享(9)内存占用
内存占用在多个 JVM 中运行示例程序时,也很容易看出内存的节省。
下面是使用与之前的示例相同的机器获得的 4 幅 VMMap 截图。在图 4 中,在没有启用类共享的情况下,完整运行了演示的两个实例。在图 5 中,在启用了类共享的情况下,使用与之前相同的命令行完整运行了两个实例。
图 4. 没有启用类共享的两个演示实例
图 5. 启用了类共享的两个演示实例
试验中的共享缓存大小为 50MB,所以图 5 中每个实例的映射文件比图 4 中的大 50MB (56736KB – 5536KB)。
可以清楚地看到,启用共享类时的内存使用量 (Private WS) 明显要低得多。对于两个 JVM 实例,实现了约 70MB Private WS 的节省。如果在启用了类共享的情况下启动更多演示实例,就会观察到更多的内存节省。上面的测试结果是在拥有 32GB RAM、使用 Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz 的 Windows 10 笔记本电脑上获得的。
我们还在一台 Linux x64 机器上执行了同样的内存占用试验。清单 15 给出了在未启用类共享情况下启动两个 JVM 实例的结果,清单 16 给出了在启用类共享情况下启动两个 JVM 实例的结果。
如果查看结果就会发现,在启用类共享时,RSS 没有表现出太大的改善。这是因为整个共享缓存都包含在 RSS 中。但是如果我们查看 PSS,就会看到节省了约 34MB,PSS 仅为每个 JVM 计算了一半的共享缓存(因为它由这两个 JVM 共享)。
清单 15. 禁用类共享情况下 Linux 上的内存占用
1
2
3
4
5
6
7
8
9
10
11
12
pmap -X 9612
9612: xa6480_openj9/j2sdk-image/jre/bin/java -cp shcdemo.jar ClassLoadStress
Address Perm … Size Rss Pss Referenced Anonymous Swap Locked Mapping
…
======= ======= ===== ======== ========= ==== ====
2676500 118280 106192 118280 95860 0 0 KB
pmap -X 9850
9850: xa6480_openj9/j2sdk-image/jre/bin/java -cp shcdemo.jar ClassLoadStress
Address Perm … Size Rss Pss Referenced Anonymous Swap Locked Mapping
…
======= ======= ===== ======== ========= ==== ====
2676500 124852 112792 124852 102448 0 0 KB
清单 16. 启用类共享情况下 Linux 上的内存占用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
pmap -X 4501
4501: xa6480_openj9/j2sdk-image/jre/bin/java -Xshareclasses:name=demo -Xscmx50m -cp shcdemo.jar ClassLoadStress
Address Perm … Size Rss Pss Referenced Anonymous Swap Locked Mapping
…
7fe7d0e00000 rw-s 4 4 2 4 0 0 0 C290M4F1A64P_demo_G35
7fe7d0e01000 r--s 33356 33356 16678 33356 0 0 0 C290M4F1A64P_demo_G35
7fe7d2e94000 rw-s 11096 48 24 48 0 0 0 C290M4F1A64P_demo_G35
7fe7d396a000 r--s 5376 1640 832 1640 0 0 0 C290M4F1A64P_demo_G35
7fe7d3eaa000 rw-s 296 0 0 0 0 0 0 C290M4F1A64P_demo_G35
7fe7d3ef4000 r--s 1072 0 0 0 0 0 0 C290M4F1A64P_demo_G35
…
======= ======= ===== ======== ====== ====== ====
2732852 120656 90817 97988 62572 0 0 KB
pmap -X 4574
4574: xa6480_openj9/j2sdk-image/jre/bin/java -Xshareclasses:name=demo -Xscmx50m -cp shcdemo.jar ClassLoadStress
Address Perm … Size Rss Pss Referenced Anonymous Swap Locked Mapping
…
7f308ce00000 rw-s 4 4 2 4 0 0 0 C290M4F1A64P_demo_G35
7f308ce01000 r--s 33356 33356 16678 33356 0 0 0 C290M4F1A64P_demo_G35
7f308ee94000 rw-s 11080 48 24 48 0 0 0 C290M4F1A64P_demo_G35
7f308f966000 r--s 5392 1632 824 1632 0 0 0 C290M4F1A64P_demo_G35
7f308feaa000 rw-s 296 0 0 0 0 0 0 C290M4F1A64P_demo_G35
7f308fef4000 r--s 1072 0 0 0 0 0 0 C290M4F1A64P_demo_G35
…
======= ======= ===== ======== ====== ====== ====
2730800 122832 92911 102584 64812 0 0 KB
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议