
最近我注意到我的舊筆記型電腦(Toshiba Satellite L500-1DT)在基於 x64 的 Ubuntu 版本上運行得比 x32 更好。好吧,我的意思是更快 - Adobe Flash 視訊和應用程式運行得更好。軟體中心和 APT 應用程式運作得非常流暢。一切都在 x64 上完美運行。冷卻風扇的工作量要少得多(不像 x32 那樣一直冷卻系統)。在 x32 位元版本上,我有一種感覺,我的電腦會過熱。兩週前,當我運行 x32 版本時,我的電池沒電了。不知道是因為過熱還是巧合。天氣真的很熱,而且非常非常慢。我在 Celeron(R) 雙核心 CPU T3000 @ 1.80GHz × 2 和 Intel GMA45 視訊晶片組(具有 256mb 共享記憶體)上運行。記憶體 - 4 GB。 Ubuntu 11.10。
這不是我發現 x64 比所謂的「建議的 32 位元版本」更好得多的唯一情況和唯一機器。我真的很好奇這個問題,很想知道答案。
請向我解釋一下或透過連結指導我。
謝謝 !
答案1
呃,「速度是兩倍甚至更多,具體取決於運行的硬件「?啊,世界要是這樣就好了。
例如,看看這篇文章:Ubuntu 12.04 LTS:32 位元與 64 位元效能。雖然一些綜合基準測試顯示出顯著的效能提升,但也有許多基準測試顯示出輕微(10% 到 30%)的提升、沒有任何提升,甚至效能下降。這些只是綜合基準測試,通常無法深入了解在執行基準測試以外的操作時系統表現的情況。
系統效能很大程度上受到「系統」瓶頸的影響,您不能做出一概而論,例如兩倍的位數意味著兩倍的效能。
話雖如此,我仍然嘗試使用 64 位元作業系統,因為我希望效能至少會好一些。雖然 CPU 暫存器的大小增加了一倍,但更重要的可能是暫存器的數量從 x86 中的 8 個增加到 x86_64 64 位元模式中的 16 個。這使得編譯器有可能產生更快的程式碼。其中有很多指令調整雖然在任何一種情況下都可能微不足道,但在系統範圍內使用時可以增加有用的效能增益。
為 32 位元 x86 編譯的程式也幾乎沒有效能損失,因為它們可以在「相容模式」下運行。
人們經常做出這樣的概括:如果您只有 4GB 或更少的內存,那麼 32 位元和 64 位元之間沒有區別,因此沒有理由使用 64 位元版本。這是不正確的。 CPU 的指令架構在 64 位元模式下有足夠的不同(IMO),如果您的硬體支持,則喜歡使用 64 位元作業系統。
畢竟,您不想在 16 位元模式下運行 32 位元 CPU,不是嗎? :-)
答案2
簡而言之:與 x86 相比,x86_64 模式下有更多可用的操作暫存器。另外,還有令人困惑的名字x32ABI 不是 x86(_32),而是 x86_64 和純 x86 的混合。而且,順便說一句,我給您連結的文章很好地解釋了為什麼 x86_64 往往具有更高的效能。
答案3
這種極端差異並不典型,也與 64 位元模式的任何一般優勢並沒有真正相關。
我懷疑您遇到了某種與您的硬體相關的錯誤,或者您的裝置韌體中出現了由 Ubuntu 的 32 位元核心觸發的錯誤。
答案4
64 位元作業系統的運行速度是其兩倍甚至更高,具體取決於其運行的硬體。從 32 位元到 64 位元提高了作業系統處理更大資料塊的能力。因此它的運行速度要快得多。此外,64 位元作業系統將比 32 位元作業系統使用更多記憶體。一個 64 位元暫存器可以儲存 2 64 = 18446744073709551616 個不同的值,這個數字超過了 18 500 億。目前 x86-64 處理器使用 48 條實體位址線;因此,具有 64 位元記憶體位址的處理器可以直接存取 264 TB 的位元組可尋址記憶體。