Почему gcc 4.9 (багажник) так медленно?
Я создал обновленный ванильный GCC от svn с этими флагами:
../configure \
--enable-languages=c,c++ \
--disable-nls \
--enable-multilib \
--prefix=/opt/other/gcc-svn \
--program-suffix=-svn \
--with-system-zlib
Сначала с clang 3.4
, тогда я думал, что это может быть clang fault (с зерном соли) и перестроен GCC один раз
больше с GCC 4.8.1
, что привело к такому же результату.
Получаемый GCC примерно на 17 секунд медленнее, чем GCC 4.8.1, когда я пытаюсь скомпилировать проект С++ с ок. 150k строк кода.
Это build раз, когда я получаю (-O3):
-
g++ 4.9
: 48 секунд
-
g++ 4.8
: 31 секунд
-
clang 3.4
: 13 секунд
Пропустил ли я флаг configure
или GCC 4.9
действительно намного медленнее?!
Ответы
Ответ 1
(Проблема была решена в комментариях, это запись для будущих посетителей.)
Если компилятор работает медленнее, чем ожидалось, передача -ftime-report
может помочь выяснить, что происходит.
К счастью, это также помогло в этом случае: С -ftime-report
GCC напечатано
'Включены дополнительные диагностические проверки; компилятор может работать медленно. Настроить с помощью --enable-check = release для отключения проверок.
Thomas перестроил компилятор из источника, и проблема исчезла!