歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 通過編譯 eddic 來比較 GCC 4.7 和 Clang 3.1 的性能

通過編譯 eddic 來比較 GCC 4.7 和 Clang 3.1 的性能

日期:2017/3/1 10:07:16   编辑:Linux編程

eddic 現在可以使用 Clang 進行編譯了(詳情), 我想在兩個不同的編譯器下比較編譯時間和生成可執行文件的性能。我選擇的編譯器是 GCC 4.7.2 和CLang 3.1,測試平台 Gentoo。

編譯時間

首先我使用不同的參數比較二者的編譯時間,包括 debug 模式以及 -O2 和 -O3 編譯參數,編譯結果比較:



詳細數據:

這個結果顯示 Clang 的編譯速度比 GCC 快多了,三個不同的編譯模式下,CLang 的速度比 GCC 快近乎兩倍。

運行時性能

接下來我測試生成可執行文件的性能,我測試了三件事,整個測試套件和兩個測試用例,我知道是最慢的EDDI編譯器。針對每種情況,我連續執行 5 個最慢的操作。

詳細的數據:

這次的差別就比較小,-O2 下 gcc 性能稍好,但在 -O3 下就相當了。對這個結果有一些失望,我原想會有大一點的差距。這說明了 Clang 並不是很多人說的比 GCC 優秀很多,當然這也可能取決於所編譯的程序不同。

結論

很顯然,在編譯 eddic 時,Clang 比 GCC 快得多,但是生成的可執行文件在執行性能上沒有多大區別。

英文原文,OSCHINA 原創翻譯

Copyright © Linux教程網 All Rights Reserved