免费注册 查看新帖 |

Chinaunix

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

利用 sysctl 调优内核性能 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-02-06 21:31 |只看该作者 |倒序浏览

                                                有 2.5G 内存,可是一直有 1.9G 以上空闲,心疼。我觉得如果我充分利用的话,应该不会用到 swap 分区的。于是想要调整一个内核使用内存的策略。
可以通过 sysctl 实现。想法主要得益于在
这里
的文章。然后主要参考内核源码目录中 Documentation 下,sysctl vm laptops 目录下文档和 networking/ip-sysctl.txt 以及 man sysctl 。
--------------------------------------------------
# 使用swap的倾向,默认60,值越大越倾向于交换出去。
vm.swappiness = 0

# 赃内存占总内存比例为多少时,启动 pdflush 程序写磁盘
vm.dirty_background_ratio = 50

# 当 pdflush 启动时,这些“足够”赃的页写回硬盘,脏了10min了:)
vm.dirty_expire_centisecs = 59999
# 一个程序的赃内存占自身所用比例多少时,开始回写
vm.dirty_ratio = 80

# 守护程序 pdflush 两次进行回写的时间间隔,单位是 1/100 秒
vm.dirty_writeback_centisecs = 59999
# vfs 更倾向于使用缓存, 远小于100, 默认为100,表示平衡
vm.vfs_cache_pressure = 0
--------------------------------------------------
以下为设置在测试中……
vm.nr_hugepages = 50
vm.nr_overcommit_hugepages = 500
net.ipv4.icmp_echo_ignore_all = 1
net.ipv4.tcp_mem = 228480    304640    8388608
net.ipv4.tcp_rmem = 4096    87380    8388608
net.ipv4.tcp_wmem = 4096    16384    8388608
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
其实,laptop-mode 做了类似的工作,而且还有更多设置,比如硬盘、电池相关的。殊途同归,尽量多用内存,少写硬盘,也是省电的一个方面。对于其对硬盘的设置,我用 hdparm -a 2048 -S 244 /dev/sda ,写到了 /etc/rc.local 里面。
一家之言,一切都还需要检验。如果您有我同样的想法,请认真参考上面提到的资料,而不是照搬这些设置,有风险哈;)
如果您发现我的错误,希望告诉我:)
PS: 一个直观的效果是, swap 使用一直为0,内存空闲减少了,缓存多了,当然具体使用程度得看运行多少任务了。
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/83046/showart_1816195.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP