Снижение производительности при использовании GCC-4.5.0

image

Теги: GCC, Open Source, GNU, Firefox

Недавно стало известно, что при использовании GCC-4.5.0 для компиляции с ключом -Os полученный исполняемый файл работает гораздо медленнее, чем скомпилированный с теми же параметрами компилятором версии 4.3.

Недавно стало известно, что при использовании GCC-4.5.0 для компиляции с ключом -Os полученный исполняемый файл работает гораздо медленнее, чем скомпилированный с теми же параметрами компилятором версии 4.3.

В списке рассылки разработчики GCC поясняют, что это связано с новой логикой разворачивания iniline-вставок при оптимизации -Os: теперь они разворачиваются только если это приведёт к уменьшению размера исполняемого файла (ревизии 158278 и 159931).

Изменения привели, например, к тому, что браузер FireFox при сборке GCC-4.5 теряет на различных тестах от 4 до 19 % производительности, причем и в 32, и в 64-битной сборке.


или введите имя

CAPTCHA
hahaha
27-06-2010 21:57:49
Какой смысл писать новость, если она не поясняет суть?.. В общем, раньше собирали фаерфокс в оптимизацией -Os потому что дескать у разработчиков она работала быстрее. А сейчас сделали более правильную политику оптимизации и ламеры доблестно рапортуют "у вас регрессия, регрессия!" - в голове у вас регрессия! Вероятно именно поэтому раньше сообщалось что виндовая сборка работает на %% быстрее, на радость и всеобщее ликование умственно отсталых.
0 |
123
27-06-2010 22:15:20
Какой смысл писать комментарий, если она не поясняет суть?.. оптимизация -Os оптимизирует по размеру, а не по скорости. Раньше и по скорости тоже оптимизировал, но сей глюк исправили. И так криво собирали только сами разработчики,и только для линуха.
0 |
----
28-06-2010 01:51:59
Суть камента в критике желтизны заголовка
0 |
Нерусь
28-06-2010 05:55:43
Объяснение для тех, кто не знает: Ключ -Os применяется для оптимизации исполняемого файла по размеру(однако, как подчеркивается в документации, меньше не означает быстрее). Для оптимизации по скорости применяют ключи -О1 ... -О3. Смысл желтизны заголовка в том, что измеряли не то: если бы написали, что с новым компилятором исполняемый файл стал больше по размеру, то это была бы правда.
0 |
AlekSi
28-06-2010 07:41:22
Space is time - http://www.sealiesoftware.com/blog/archive/2008/10/14/Space_is_time_how_your_CS_theory_class_lied_to_you.html
0 |
Нерусь
28-06-2010 11:07:24
Статья интересная, только здесь обсуждается не то, что будет, когда из-за множества запущенных программ закончится оперативка, а количество тактов процессора в отдельно взятой программе при компиляции старым и новым gcc, а это несколь разные вещи.
0 |