免费注册 查看新帖 |

Chinaunix

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

HP-UX上64位程序使用到4G内存就溢出了? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-08-25 11:27 |只看该作者 |倒序浏览
本帖最后由 tristan0720 于 2010-10-24 14:52 编辑

IA64机器、HP-UX 11.31、机器内存56G还有很多空闲

跑一perl脚本,因为使用了大量hash,所以相当耗内存,perl是使用64位的/opt/perl_64/bin/perl
现在用top看到程序使用内存一到4G就out of memory了

64位进程现在设置的是最多使用8G数据段,参数如下:
$ ulimit -a
core file size          (blocks, -c) 2097151
data seg size           (kbytes, -d) 4194300
file size               (blocks, -f) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 2048
pipe size            (512 bytes, -p) 16
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 257
virtual memory          (kbytes, -v) unlimited

$ kctune -v maxdsiz
Tunable             maxdsiz
Description         Maximum size of the data segment of a 32-bit process (bytes)
Module              vm
Current Value       4294963200
Value at Next Boot  4294963200
Value at Last Boot  1073741824
Default Value       1073741824
Constraints         maxdsiz >= 262144
                    maxdsiz <= 4294963200
Can Change          Immediately or at Next Boot

$ kctune -v maxdsiz_64bit
Tunable             maxdsiz_64bit
Description         Maximum size of the data segment of a 64-bit process (bytes)
Module              vm
Current Value       8589934592
Value at Next Boot  8589934592
Value at Last Boot  8589934592
Default Value       4294967296
Constraints         maxdsiz_64bit >= 262144
                    maxdsiz_64bit <= 4396972765184
Can Change          Immediately or at Next Boot

不明白为什么64位程序似乎是受到maxdsiz限制而不是maxdsiz_64bit限制

请问如何调整我的脚本使用到的内存?
还是64位perl编译有问题,根本就是32位,如何确定?

==============================================
问题已经解决,其实只要设置maxdsiz_64bit,使用64位perl就行了,之前就是这样设的,出问题的原因是系统的swap空间不足了,导致看上去有很多内存,但实际上用不了。

论坛徽章:
0
2 [报告]
发表于 2010-08-25 16:14 |只看该作者
shmmax设置为多少呢?

论坛徽章:
10
处女座
日期:2015-01-22 16:08:50技术图书徽章
日期:2018-09-13 11:25:52技术图书徽章
日期:2018-09-13 11:25:45技术图书徽章
日期:2018-09-13 11:25:37技术图书徽章
日期:2018-09-13 11:25:29黑曼巴
日期:2018-06-04 09:03:192017金鸡报晓
日期:2017-01-10 15:19:56极客徽章
日期:2016-12-07 14:03:402015年迎新春徽章
日期:2015-03-04 09:50:28技术图书徽章
日期:2018-09-13 11:26:01
3 [报告]
发表于 2010-08-26 11:27 |只看该作者
data seg size           (kbytes, -d) 4194300
这个设置改大一点啊

论坛徽章:
0
4 [报告]
发表于 2010-08-26 16:39 |只看该作者
data seg size 受到maxdsiz限制没法再调了啊
但在root下我可以把data seg size设置为unlimited,然后再跑程序可以超过4G
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP