免费注册 查看新帖 |

Chinaunix

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

***求助大家...Linux swap的使用问题:)*** [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-01-05 13:59 |只看该作者 |倒序浏览
小弟最近在做performance的性能分析和测试。平台是RHEL AS 3 + Oracle9i
机器是Xserver 336,有4个G的内存
我安装完后,给swap分区分配了3G的分页空间。
环境搭建完成后,就开始执行一些应用(application)的performance测试,包括N多用户同时在线的压力测试。
发现如下:
                total       used       free     shared    buffers     cached
Mem:       4093508     859996    3233512          0     151848     425912
-/+ buffers/cache:     282236    3811272
Swap:      3068372          0    3068372
多个测试用例执行过之后,swap分区的利用率一直都是0,没有使用上。
就自己目前掌握的知识,目前我只知道windows的内存管理和linux有很大的区别。
一般针对windows的committed参数,指的就是分页空间的swap in 和swap  out,
,而我这次在linux上做测试的时候,用vmstat查看si和so都是0,表示压力测试过程中始终没有用过swap,这是为什么呢?
内存在不断的消耗,其实是给了cached利用。真正的内存剩余还有3811272,虽然cached也属于内存的一部分,并且在内存不够用的时候cached会自动释放,如果按照这样的说法,swap是不是就一直也用不上了?因为很多文章都说,linux平台上,swap是在内存不够的时候才被利用.
我好疑惑啊.................:)
请大家指教!谢谢了

论坛徽章:
0
2 [报告]
发表于 2007-01-05 20:01 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
3 [报告]
发表于 2007-01-06 00:11 |只看该作者
大概是Oracle還用不上那麼多的內存,大型的數據庫才用的上那麼多

论坛徽章:
0
4 [报告]
发表于 2007-01-06 00:21 |只看该作者
我看到网上很多文章说,为了保证服务器的速度,建议大内存的服务器取消swap分区。楼主的服务器属于典型的“大内存”啊

论坛徽章:
0
5 [报告]
发表于 2007-01-06 03:08 |只看该作者
There are two memory managing processes paging and swapping and they are very different. In a very simple term, when your system is running low in memory, the paging process kicks in first. It scans and releases free memory pages. As long as the paging mechanism can release enough memory for subsequent programs and processes to use, there will be no swapping. Swap will only happen when the page scan can't or not fast enough to release memory and the active process has to be swapped out to make room for subsequent processes. When swap happens, your system will be really sloooooooow.

[ 本帖最后由 briangao 于 2007-1-5 14:11 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2007-01-06 15:54 |只看该作者
原帖由 ecco 于 2007-1-6 00:21 发表
我看到网上很多文章说,为了保证服务器的速度,建议大内存的服务器取消swap分区。楼主的服务器属于典型的“大内存”啊


那些文章都是错误的,特别是对于linux kernel 2.6 . 2.6采用了新的VM管理技术. swap 担负的责任和之前2.4kernel很不一样了,就算physical memory再大,系统也会按照VM的调度策略,将一些process 刷到swap上面,腾出active space让其他的活跃process有更好的运行性能.  

redhat站点上有一个白皮书  linux 2.6 vm whitepaper.  pdf格式,那些对linux 的内存管理,交换分区概念和作用混淆不清的朋友还是好好学习一下吧.

论坛徽章:
0
7 [报告]
发表于 2007-01-06 16:00 |只看该作者
原帖由 nntp 于 2007-1-6 15:54 发表
那些文章都是错误的,特别是对于linux kernel 2.6 . 2.6采用了新的VM管理技术. swap 担负的责任和之前2.4kernel很不一样了,就算physical memory再大,系统也会按照VM的调度策略,将一些process 刷到swap上面,腾出active space让其他的活跃process有更好的运行性能.  

redhat站点上有一个白皮书  linux 2.6 vm whitepaper.  pdf格式,那些对linux 的内存管理,交换分区概念和作用混淆不清的朋友还是好好学习一下吧.  


有机会我可能会比较一下 2.4 和 2.6 的调度器、VM 等机制的异同
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP