1. 程式人生 > >五款主流 Linux 發行版效能對比,穩而不強?

五款主流 Linux 發行版效能對比,穩而不強?

2018 即將結束,年末正是各種基準測試對比輪番出爐的時候,通過這些報告,我們可以看到 Linux 效能的各個方面在 2018 是如何發展的。但本文的這份效能對比會更加深入 —— 將研究五個主流 Linux 發行版在過去近三年裡所經歷的效能變化,而測試物件則是從 2016 年初開始的 CentOS, Clear Linux, Fedora, Ubuntu 和 openSUSE,到目前為止已安裝穩定更新的最新版本。

2018 年波及眾多 Linux 發行版的 Spectre 和 Meltdown 漏洞嚴重影響了它們的效能,所以我們不妨看看兩年前的發行版和今年的效能對比,最終結果會是如何。

本次對比客觀地測試了從 2016 年初到 2018 年底相同硬體上的 Linux 發行版效能 —— 系統會重新載入所有測試的最新版本,以瞭解效能如何變化。

先來看看本次效能對比中,執行這些 Linux 發行版的機器配置:

  • Intel Core i7 5775C

  • 板載 Iris Pro 6200 顯示卡

  • MSI Z97-G45 GAMING 主機板

  • 16GB DDR4 RAM

  • 120GB CT120BX100SSD1, Crucial BX100 SATA 3.0 SSD

可以看到,測試所使用的機器配置十分強勁,英特爾酷睿 i7 5775C 仍然是強大的 CPU,特別是其 Iris Pro 顯示卡和4核/8執行緒、3.3GHz 基頻和 3.7GHz 自動超頻。在 2016 年和現在的所有測試中,CPU 都以預設速度(stock speed)執行。唯一的變化是現在使用最新的主機板 BIOS,但這也是出於安全原因所必需的考慮,其他配置方式與 2016 年的相同。

以下是在此英特爾酷睿 i7 平臺上進行測試的作業系統的概述:

CentOS ——  執行的 CentOS 7 版本是已升級到 7.6 的最新版本, 使用 Linux 3.10 核心作為後端埠。此外,測試物件都使用了相同的 GCC 4.8.5 編譯器,而 GNOME Shell 則從 3.14 遷移到了 3.28,預設檔案系統為 XFS。在 2016 年,CentOS 預設使用此係統上的 CFQ I/O 排程程式,但現在預設為 deadline 排程程式(deadline scheduler)。至少在 2019 年,我們將看到 EL8 / CentOS 8 用於現代企業版 Linux 堆疊。

Clear Linux —— 英特爾自家的 Clear Linux 平臺在從 Linux Kernel 4.4 和 GCC 5.3 遷移到 Linux Kernel 4.19 和 GCC 8.2 時已經進行了許多升級。除此之外,還有無數的其他升級以及不同的決策,如從 CPUFreq 擴充套件驅動程式遷移到 P-State,使其與其他 Linux 發行版保持一致,但 Clear 仍預設為“效能”調控器(performance governor)。Clear Linux 也是目前測試中唯一一個預設使用 MQ-DEADLINE 的發行版,而 2016 年在這個硬體上使用的是 CFQ。

Fedora —— 從 Fedora 23 升級到 Fedora 29 意味著從 Linux Kernel 4.3 和 GCC 5.3.1 升級到 Linux Kernel 4.19 和 GCC 8.2.1,以及大量其他軟體包的更新。Fedora 繼續在此硬體上使用 CFQ I/O 排程程式。

Ubuntu —— 從 Linux Kernel 4.4 的 Ubuntu 16.04 遷移到 Linux Kernel 4.18 的 Ubuntu 18.10 是另一個重要的升級。當時 Ubuntu 也預設使用 deadline I/O 排程程式,但現在使用 CFQ。

openSUSE —— openSUSE 測試從基於 Linux Kernel 4.1 的 openSUSE 42.1 Leap 到基於 Linux Kernel 4.19 的 openSUSE Tumbleweed,與 CentOS 7 以外的其他發行版一樣,還包括許多軟體包的更新。OpenSUSE 也在此時間從 deadline 排程器轉換為使用 CFQ,用於 SATA 3.0 SSD 上。

2018 年所有的 Linux 發行版還針對 Spectre 和 Meltdown 漏洞進行了緩解性的更新,要知道這在 2016 年還沒有發生。其他作業系統設定/軟體包都是預設設定。更多詳細資訊見下表。請記住,硬體保持不變並使用預設設定;任何報告的變化都可歸結為硬體/資訊在特定發行版中如何暴露給作業系統。

Phoronix 測試套件提供每次的測試配置檔案版本,因此能夠使用相同測試軟體的相同應用程式/軟體包版本以及相同的測試安裝重現,在相同的硬體上完成 2016 年與 2018 年的可行對比 —— 以標準化和可重現的方式執行指令碼。

測試結果解讀

如圖所示,在模擬編譯過程中進行 CompileBench 測試的情況下,2018 年所有的 Linux 發行版都比 2016 年初的慢。但是對於英特爾的 Clear Linux,它的速度是最快的,並且與其他四個發行版對比,目前的測試結果比任何版本都快得多 —— 事實上,它 2018 年的狀態比 2016 年的任何其他發行版都快。而 CompileBench 恰好是受 Spectre/Meltdown 緩解影響的工作負載之一。

對於 Compile Bench 更多繁重的 I/O 初始建立過程,Clear Linux 和 Ubuntu 是唯二逆轉執行速度較慢的 CentOS / Fedora / openSUSE 的發行版,但 Clear/Ubuntu 執行的變化很大,使得它們的測試資料不能夠十分精確,但無論 Clear Linux 還是 Ubuntu,在這個特定的測試中它們仍然是最快的。而以穩定著稱的 CentOS 7 是這個基準測試中最慢的。

使用 Himeno 壓力求解器工作負載(pressure solver workload)進行測試,從 2016 年初到 2018 年底之間,觀察到效能沒有太大變化。唯一值得注意的是 Ubuntu 和 openSUSE 具有略微的效能優勢。

在 C-Ray 多執行緒光線跟蹤器下,除了 Clear Linux 之外的所有 Linux 發行版在 2018 年都比較慢,而英特爾發行版的速度稍微快一點,並在第一名的位置處於領先地位。

與 C-Ray 測試類似,但 Smallpt 基準測試呈現的結果則是另一種情況,其中 Clear Linux 與其他發行版相比有很大改進(在 openSUSE 上也看到了很好的變化),並且由於其“強勢”的編譯器預設值,它仍然比其他發行版快得多。

對於單執行緒 MP3 音訊編碼基準測試,CentOS 的變化不大,畢竟兩者仍然在同一個 EL7 堆疊上,但對於其他四個 Linux 發行版,在其最新版本中都看到了不錯的效能改進。

使用 FFmpeg H.264 進行基準測試,能明顯看到,與 2016 年相比,Linux 發行版在 2018 年均呈現放緩的狀態,但 Clear Linux 的速度減慢得最少,並且成績也是可衡量的第一名。

Redis 是受今年 Spectre/Meltdown 漏洞影響的另一個真實案例。因此,與 2016 年相比,結果存在相當大的變化。英特爾的 Clear Linux 發行版依然繼續提供了比 CentOS,Fedora,Ubuntu 和 openSUSE 更快的效能。事實上,應用了所有預設緩解補丁的 2018 Clear Linux 效能狀態也仍然比其他四個 Linux 發行版更快。

與 2016 年初發布的版本相比,這就是 2018 年底五款主流 Linux 發行版所在的位置。Clear Linux 是當時英特爾硬體上最快的開箱即用發行版,現在仍然保持這種狀態,甚至在某些情況下它的領先優勢還有所增加。在近三年的時間裡。與 SUSE,Ubuntu 和其他企業平臺相比,CentOS 7 無疑顯示了其“時代性”的痕跡,尤其是在過去一年中,因為這些平臺都發布了新的主要版本。不過值得慶幸的是,RHEL 8 / CentOS 8 將在明年首次亮相。

當然,效能不是使用者選擇發行版時首要的考慮因素,甚至不是最主要的因素,不然怎麼解釋 CentOS 雖然效能不高,但卻有著海量的使用者群體。畢竟,在伺服器上跑,「穩」更重要

最後,在 2018 年 Linux 發行版上還運行了一些額外的基準測試,用於瞭解這些最新的 Linux 發行版在具有 Iris Pro 顯示卡的英特爾酷睿 i7 Broadwell CPU 上表現如何執行的一些額外測試:

 

原文地址:https://www.oschina.net/news/103081/linux-2016-2018