免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4166 | 回复: 5
打印 上一主题 下一主题

[小机硬件] 关于AIX中进程使用内存的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-11-25 14:57 |只看该作者 |倒序浏览
一个项目,AIX环境。项目要求调用java程序将话单入库,需要摸清楚给java分配的内存空间多大才能使入库速度最快。
程序运行起来之后,我先查询一下排名前10的消耗内存的进程:
bash-3.2$ ps aux | head -1 ; ps aux | sort -rn +5 | head -10
USER        PID %CPU %MEM   SZ  RSS    TTY STAT    STIME  TIME COMMAND
web      807058 27.3  1.0  361580 361532  pts/2 A    14:13:06 35:31 /usr/java6_64/bi
root     884794  0.0  0.0 113320 113276      - A      Oct 27 10:16 hagsd grpsvcs
patrol   512002  0.0  0.0 18460 9096      - A      Aug 25 1172:29 PatrolAgent -p 3
root     831588  0.0  0.0 8808 8764      - A      Oct 27 53:06 /usr/sbin/rsct/b
patrol   532570  0.0  0.0 3800 3216      - A      Aug 25 1131:19 ./snmpmagt /home
patrol   557222  0.0  0.0 6876 2408      - A      Aug 25 50:46 bgscollect -I no
root     786604  0.0  0.0 2160 2120      - A      Oct 27 97:23 /usr/sbin/rsct/b
root      98356  0.0  0.0 2048 2048      - A      Aug 14  1:25 j2pg
root     823336  0.0  0.0 2056 2012      - A      Nov 03  3:24 /usr/sbin/rsct/b
patrol   589962  0.0  0.0 3260 1900      - A      Aug 25 32:47 /home/bmc/Patrol
可见,除了我们的程序占用了1%的内存空间(总共32GB内存)外,其他程序所占内存空间寥寥。
问题来了,接下来我查询本机内存使用情况:
bash-3.2$  svmon -G
               size       inuse        free        pin     virtual
memory      8093696     7917335      176361     1165004     4566980
pg space    8519680      266335

               work        pers        clnt       other
pin          890028           0        2758      272218
in use      4357736           0     3559599

PageSize   PoolSize      inuse       pgsp        pin    virtual
s   4 KB          -    7809911     266335    1086300    4459556
m  64 KB          -       6714          0       4919       6714
为什么系统可用内存竟只有700MB左右?
请教一下:
如何查看内存被哪些进程所占用了?
多谢!

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2010-11-25 15:12 |只看该作者
比如file cache

论坛徽章:
0
3 [报告]
发表于 2010-11-26 15:24 |只看该作者
AIX 分工作型内容、永久存储型内存 两大类,  其基本设计原理就是充分利用好物理内存的

论坛徽章:
11
数据库技术版块每日发帖之星
日期:2016-06-25 06:20:00数据库技术版块每日发帖之星
日期:2016-06-24 06:20:00数据库技术版块每日发帖之星
日期:2016-05-03 06:20:00数据库技术版块每日发帖之星
日期:2016-04-21 06:20:00数据库技术版块每日发帖之星
日期:2016-01-23 06:20:00数据库技术版块每日发帖之星
日期:2015-12-03 06:20:00综合交流区版块每周发帖之星
日期:2015-12-02 15:03:53数据库技术版块每日发帖之星
日期:2015-10-19 06:20:00数据库技术版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-07-30 06:20:00
4 [报告]
发表于 2010-11-28 14:17 |只看该作者
并不是内存越大越快!
这个你得结合你的程序去看!看到底需要多大的内存!
据说64位的JDK没32位的快!

论坛徽章:
0
5 [报告]
发表于 2010-11-29 10:15 |只看该作者
嗯同意楼上几位老大,我的理解:

AIX缺省情况把闲置的物理内存变成文件系统的缓存,以提高磁盘存取的性能,只留很小一部分供新的程序对内存请求使用,如果这部分内存不够程序请求的需要,再page-out.

至于程序使用内存的情况, 试试:

#ps gv 807058   (SIZE项是KB为单位)

#svmon -nrP 807058

所有Esid项中2和f项中对应的Virtual 的和,单位是page (4k)的数量

参考官网
Optimizing AIX 5L performance: Tuning your memory settings
http://www.ibm.com/developerwork ... -memtun2/index.html

或者
Optimizing AIX 7 memory performance: Part 2, Monitoring memory usage and analyzing the results
http://www.ibm.com/developerwork ... ptimize2/index.html

5和7 的内容差不多

论坛徽章:
5
荣誉会员
日期:2011-11-23 16:44:17CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-09-18 15:15:45未羊
日期:2014-02-25 14:37:19射手座
日期:2014-12-26 22:55:37
6 [报告]
发表于 2010-11-29 12:20 |只看该作者
话单入库用java?我服了你了。
除非你用的是DB2用LOAD API。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP