LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 794|回复: 6

如何利用大内存

[复制链接]
发表于 2011-4-2 15:45:03 | 显示全部楼层 |阅读模式
咬咬牙,上了4G内存。

我用的是amd64版本的gentoo。

请教一下如何充分利用这个大内存?

问题1:我开了virtualbox和matlab发现还使用了一定的swap,这个正常吗?

问题2:
$ free -m
             total       used       free     shared    buffers     cached
Mem:          3859       1015       2844          0         63        508
-/+ buffers/cache:        443       3416
Swap:         4104          0       4104
我发现这个cached是要上涨的,这个正常吗?
发表于 2011-4-2 15:57:36 | 显示全部楼层
fstab中加入:
  1. none         /tmp tmpfs defaults 0 0
  2. none         /var/tmp/portage        tmpfs         size=3500M   0  0
复制代码

还可以把portage工作时放入内存,升级时硬盘不用狂闪了。
http://www.linuxsir.cn/bbs/showt ... p;highlight=portage

还可以把firefox的工作目录用tmpfs挂到内存,
http://forums.gentoo.org/viewtop ... -firefox+tmpfs.html

这下硬盘不用那么辛苦了。

问题1:正常。可以在/etc/sysctl.conf 中加入下面两行,让程序尽可能的多用内存。
  1. vm.swappiness=20
  2. vm.vfs_cache_pressure=50
复制代码

问题2:正常。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-4-2 16:01:18 | 显示全部楼层
谢谢!我实验一下!
回复 支持 反对

使用道具 举报

发表于 2011-4-2 16:11:01 | 显示全部楼层
Post by waterloo2005;2133189
fstab中加入:

  1. none         /tmp tmpfs defaults 0 0
  2. none         /var/tmp/portage        tmpfs         size=3500M   0  0
复制代码


还可以把portage工作时放入内存,升级时硬盘不用狂闪了。
http://www.linuxsir.cn/bbs/showt ... p;highlight=portage

还可以把firefox的工作目录用tmpfs挂到内存,
http://forums.gentoo.org/viewtop ... -firefox+tmpfs.html

这下硬盘不用那么辛苦了。

问题1:正常。可以在/etc/sysctl.conf 中加入下面两行,让程序尽可能的多用内存。

  1. vm.swappiness=20
  2. vm.vfs_cache_pressure=50
复制代码


问题2:正常。


这么做要小心。在很多情况下,运行时占用的内存都超过500M,实际上编译的时候能用到的就不足3500M。但fstab告诉系统那个文件夹里面可以放3500M的东西,于是编译一些很巨大的软件包的时候,portage就会继续往里面写入临时文件,系统会变得非常卡。

另一种情况则是,运行时占用的内存没有超过500M,但是编译需要的临时文件超过3500M,于是就会编译出错。
回复 支持 反对

使用道具 举报

发表于 2011-4-2 17:34:05 | 显示全部楼层
4G 可一点也不大 , 还是 算了吧
编译的时候 挂个tmp/portage 还行, 其它就算了吧。 不过4G倒是可以不用swap分区了,建个64mb的swapfile 应对一下特殊的要求就行了。

话说 有12g +的内存 倒是可以考虑将 / 挂到内存上去。
回复 支持 反对

使用道具 举报

发表于 2011-4-2 17:34:31 | 显示全部楼层
tmpfs是动态管理的,它是可使用swap的。所以不必担心会出错。tmpfs如果定小了,需求超过我们设定的值编译会终止。 用3500M除了ooo都没问题。 内存不够了,tmpfs还可使用swap。

只是在编译chromium时,会发生卡的情况,不过时间很短,是在和swap交换内容。(对了,我是把portage也用tmpfs挂到内存占用了750M的内存,如果不挂portage,编chromium是不会卡的。

我就是4G内存。作了这些优化,没发生什么错误 。
回复 支持 反对

使用道具 举报

发表于 2011-4-2 17:46:37 | 显示全部楼层
Post by waterloo2005;2133203
tmpfs是动态管理的,它是可使用swap的。所以不必担心会出错。tmpfs如果定小了,需求超过我们设定的值编译会终止。 用3500M除了ooo都没问题。 内存不够了,tmpfs还可使用swap。

只是在编译chromium时,会发生卡的情况,不过时间很短,是在和swap交换内容。(对了,我是把portage也用tmpfs挂到内存占用了750M的内存,如果不挂portage,编chromium是不会卡的。

我就是4G内存。作了这些优化,没发生什么错误 。


我指的情况是需求没有超过设定的值,但是由于其它程序也在使用内存,导致实际能分给编译的空间没达到设定的值,这样当内存用光之后机器就会很卡。

不过,我倒是忘了自己没有swap分区了,用了btrfs后连swap文件都用不了。这样看来,只要swap分区或swap文件不是太小,或者运行其余程序使用了非常多的内存,一般是不会出现机器很卡的情况了。

PS:libreoffice就不能让人选择安装哪几个部件吗?我只需要看word文档和excel表格。现在编译一次就要占用7、8G的临时空间,让我压力很大。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表