Intel今年火力全開,今年還沒結束,就從Core Solo到Core Duo,再從Core Duo到Core 2 Duo。今年底幾乎所有的桌上型處理器都支援EM64T。隨著明年初Windows Vista王牌登場,我想這一次是真的要進入64位元記憶定址的時代了。記憶體暴增,如果你認為這表示你的程式會因此變得飛快,你可能會失望。
今年初在IBM的midrange平台上跑64-bit的JVM。由於JVM的設計規範是以三十二位元為假設,所以一開始我根本沒想到這世上還有64-bit的JVM。當同事告訴我說JVM當掉後在硬碟裡寫了200GB的core dump,一開始還被我嗤之以鼻,還算二的三十二次方給他看。書上明明有讀過的,理論值是4GB,實際heap大小是2GB。如果系統記憶體需求量大,可以起動多個JVM分散負荷。這書上都有寫的。
同事堅持要我進去看core dump。看過這不可思議的memory dump後Google了一下,才開始冒出冷汗,原來IBM一直都在他們的midrange平台上用64-bit的JVM。趕緊跟同事道歉並道謝之後,想說這下子爽了,放在64位元JVM上面跑,一定快到不行。
上線後才知道,因為記憶體大到看不見邊,反而是系統最大的地雷。問題出在Java平台本身是靠Garbage Collection管理記憶體。通常系統會等到真的沒地方存東西了才會一次把垃圾清乾淨。因此在一般JVM上面會定期隔幾分鐘看到系統慢一下下,然後記憶體就降下來的情況。同樣的情況搬到64位元上面,就不是慢一下下了。在夜闌人靜的時候,系統開始清理垃圾,因為量實在太大。清了半天還是沒清完,於是系統決定再清一次。幾分鐘之內系統就出現類似潔癖的強迫官能症,不停的清理垃圾。
對於系統最佳化我還是外行。回去把程式重新寫過以後目前是閃過了這個問題。然而進入六十四位元定址時代,似乎程式設計者也開始要用不同的方式去想事情。嗯,希望有一天我能學會這些東西。
Tuesday, October 17, 2006
Monday, October 16, 2006
Wednesday, October 11, 2006
Tuesday, October 10, 2006
意思到了就好吧
到底紅衫軍要鬧到什麼程度才會滿意,我越看越模糊。
施先生是從街頭運動起家的,反政府活動是他的舞台。施先生不怕流血,扁先生也不怕別人流血,紅衫軍這樣繼續下去,最後就會傻傻的跟著人家流血。
如果你有耐心,等他下台不過就是一年多的事。
如果你沒耐心,要罷免護扁者,現在就可以做,為什麼還要等二次罷免?
民主政治應該是個妥協的結果吧,如果大家永遠各說各話拼人氣,最後就會弄成內戰了。
施先生是從街頭運動起家的,反政府活動是他的舞台。施先生不怕流血,扁先生也不怕別人流血,紅衫軍這樣繼續下去,最後就會傻傻的跟著人家流血。
如果你有耐心,等他下台不過就是一年多的事。
如果你沒耐心,要罷免護扁者,現在就可以做,為什麼還要等二次罷免?
民主政治應該是個妥協的結果吧,如果大家永遠各說各話拼人氣,最後就會弄成內戰了。
Subscribe to:
Posts (Atom)