是否有任何編譯器在使用中對編譯速度沒有多少關注,而是在編譯時間減慢的情況下尋求最大優化?有沒有優化器不關心編譯時間?
在我看來,編譯需要幾小時/天與分鐘/秒不會是一個重大問題,一旦你非常接近最終版本。 (如果你有足夠的測試中,它應該是安全的。)
編輯:我感興趣的是什麼,其中包括優化過程,可以採取數小時甚至數天來運行溫和端程序編譯器(正常優化需要10分鐘或更少的時間,例如Linux內核,apache或GCC)。
是否有任何編譯器在使用中對編譯速度沒有多少關注,而是在編譯時間減慢的情況下尋求最大優化?有沒有優化器不關心編譯時間?
在我看來,編譯需要幾小時/天與分鐘/秒不會是一個重大問題,一旦你非常接近最終版本。 (如果你有足夠的測試中,它應該是安全的。)
編輯:我感興趣的是什麼,其中包括優化過程,可以採取數小時甚至數天來運行溫和端程序編譯器(正常優化需要10分鐘或更少的時間,例如Linux內核,apache或GCC)。
在某種程度上,他們是「慢」,它只是電腦是如此之快,並擁有這種龐大的內存,像你使用你沒有注意到的......
::逃跑做一個小實驗使用g ++ ::
挑選稍微mathy代碼,我寫了工作,我獲得(約24K LOC在C++中75ish文件製作ROOT庫的重使用,但沒有模板)
-O0
:8.88秒-O4
:13.60秒-Os
:11.32秒嗯...不加起來的編譯時間的很大一部分。也許它只是由文件訪問時間所支配。也許我應該試試mplayer
或其他真正密集的東西。
其實,是的。不是因爲優化器速度很慢,而是因爲你要求優化器做的事情需要很長時間。例如,我使用LLVM優化整個程序:已編譯的源文件以及源文件使用的所有庫。所有東西都鏈接爲中間代碼並一起優化。這種優化比鏈接單獨優化的目標文件慢得多。但我不在乎,原因有兩個:1,優化在整個程序中完成,值得等待(;-)和2,計算機一直在變快。
對於什麼語言?我肯定使用過編譯器,使用優化器需要的時間比沒有更多。另外,請考慮諸如Coverity之類的靜態分析儀。 – 2010-08-21 02:16:21
有沒有緩慢的優化器?當然,他們被稱爲人! – 2010-08-21 02:17:42
其實人們更快的優化器。優化的氣泡排序仍然很慢。 – 2010-08-21 02:46:37