2009年3月26日

該用64bit Linux嗎?(新測試已逆轉)

剛剛朋友問我,它們公司在考慮新環境是否該改用64bit Linux,問我是否適合換成64 bit,換了有什麼好處?效能表現差異多大?

我曾經在摩托學園詢問過Intel 64 bit 在 Debian 上要怎麼設定?,另外也搜尋到大家的 x86-64 CPU 都跑 amd64 還是 i386 呢?,看起來大部分都還是建議用32bit Linux。

而一般來說,64 bit Linux的效能應該會比較好,那以效能表現來說,64 bit Linux效能能好多少?是否以效能為考量的Linux Server用64 bit會比較好呢?
於是我用「32bit 64bit linux performance」為關鍵字在Google搜尋,找到下面2篇:
AMD Phenom 32-bit vs. 64-bit Performance
Ubuntu: 32-bit v. 64-bit Performance

這邊要特別注意,Ubuntu: 32-bit v. 64-bit Performance這篇是2006年的測試。

從上述2個網頁中,作者針對32bit和64bit的Linux的比較,我發現到幾個事情:
1. 在遊戲相關的效能中比較,64 bit Linux幾乎都比32 bit Linux差,而且差不少
2. 在I/O相關的行為上,包括RAM的讀寫...等,32 bit Linux和64 bit Linux表現差不多,32 bit Linux略快
3. 針對CPU處理頻繁的工作,包括kernel make(gcc compiler)、MP3轉檔(lame)、檔案壓縮(gzip)上,64 bit Linux的表現要比32 bit Linux好
4. 可能是因為硬體不同,也可能是新版有針對64 bit做最佳化,2006年的那份測試和2008年的測試,gzip的表現反應差異較大,lame的表現差距幅度也有差異

整體來說,我認為64 bit Linux應該只有在CPU關聯性大的工作會有較突出的效能表現,其他部份「效能不一定比較好」,此外,在摩托學園的討論中看得出來,目前64 bit Linux還是有不少應用程式不支援。
所以我認為,目前還不是全面使用64 bit Linux的時候,除非對於CPU效能極度要求的情況下,那麼我個人的建議是,先瞭解該Linux Server要運作的應用程式或服務,目前對64 bit Linux的支援狀況(包括相容性、是否針對64 bit指令集EM64T最佳化...等),全部確定後,一切ok再上路
如果是個人PC或桌面系統,那麼正如上面說的,我認為目前還不是使用64 bit Linux的時候。


感謝回覆留言的匿名網友,從最新的測試中可以發現,現在64 bit Linux在64 bit平台上效能已經超越32 bit,而且超越很多,上述評估已經不正確了。

1 則留言:

匿名 提到...

您好!

phoronix 在 2006 年做了您文章中提到的測試

上個月,也就是去年十二月(2009),又做了類似的測試,不知您有何看法?

http://www.phoronix.com/vr.php?view=14477