2011-09-27 59 views
1

我很久以來Borland用戶(自Turbo C以來)(直到BC5.2)。 我一直在使用MingW/GCC CodeBlocks大約一年,主要是 爲額外的支持尤其。原生64位整數。Borland vs. MingW/GCC編譯速度..

無論如何,我有一個關於編譯速度的查詢。

我有一個C(Win32)文件,它的長度爲60,000行。 在Borland 5.2上,這個文件需要apx 3-5秒來編譯。 在GCC上需要35秒多一點的時間。

我正在使用的GCC命令行選項是。

-std = C99 -s -O2(IVE還試圖-O)

最終EXE尺寸幾乎是相同的+/- 50KB。

爲什麼編譯時間差別很大?並有 一種方法來加速海灣合作委員會媲美BC5.2?

+6

來吧,現在沒有理由使用Borland十年了。它實際上不是一個C++編譯器。 –

+1

'gcc -O'與'gcc -O1'相同。要(幾乎)完全停用優化,使用'gcc -O0'。 – pmg

+1

Borland和GCC之間所產生的二進制文件的執行時間是否不同? –

回答

3

Borland的編譯器從設計開始就設計得很快,至少根據marketing和當時發佈的基準測試,並在業界廣泛承認。他們瞄準單一架構,即x86家族。

gcc的設計不是很快。它的目的是:爲多種架構

  • 目標代碼,從嵌入式控制器到超級計算機
  • 可以在多種架構託管
  • 跟上不斷變化的C++語言標準

發散步伐的預期用途無疑會影響其性能。

+1

是否有一個已針對intel/86平臺進行了優化的gcc build/branch .. –