2011年3月6日星期日

升级8G内存了

其实从很早就开始叫嚣着要升级8G内存,但是一直没下决心。不过最近Xcode4用的很卡,所以一冲动就买了。不过这可能是这台本子最后能升级的部件了——除非SSD会在近1,2年降价很多。。。


其实升内存没啥说的,因为升级到8G之后,大多数时候并感觉不到性能提升。今天之所以写本文是因为测试内存时的一段小代码。

我为了测试单进程能用到4G以上,费尽心机。用光8G内存不难,只要把系统里的程序一个个的打开就能吃光内存了——特别是打开Ps,Ai,AutoCAD之类的软件。不过单进程就有点困难了。

于是,想到了吃内存大户:Java。我参考了网上关于eclipse调优的文章,把-Xmx参数设置为6G,不过eclipse的内存一点都没有占,而且,在系统监视器里居然看不到java的进程!!!更奇怪的是iStats Menus里居然能看到java的进程,不过内存占用并不高。企图宣告失败。

然后在饭否里求助了。@softboysxp 贴了一小段代码,瞬间解决了我的问题:

#include <stdlib.h>

int main(void) {
    while(1) {
        malloc(1024);
    }
}

编译执行,这段代码会慢慢吞食掉系统的物理内存。

上图是执行程序的内存占用曲线图。可以看到,leak进程吃掉的内存一路飚到了5G以上。不过这时候,操作系统出来干预了,操作系统会回收被leak过度占用的内存,写入分页文件。

另外说两个:

1. 我买的两条三星的内存居然是序列号一样的。搜索了一下,据说三星就是会出现序列号一样的情况。Orz。不知道真的假的。假的也认了,反正能用。
2. MacBook(MC207,Late 2009,MacBook 6,1)也是支持8G内存的。虽然官方标称最大支持4G内存。
【另外,MacBook MC240(Mid 2009,MacBook 5,2),MC516(Mid 2010,MacBook 7,1)也都是支持8G内存的。这个别人也都证实过了。】
【还有一个消息是,有人发现苹果似乎秘密的发布过一个固件升级,让08年发布的MacBook(MacBook 5,1)和MacBook Pro(MacBookPro5,1)也支持8G内存。(via)】

1 条评论:

  1. 我 unibody macbook 466 目前还没有再次升级的打算,已升级 4G内存+64G SSD, 其实SSD才是明显提升整体性能的。。。

    回复删除