URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 86867
[ Назад ]

Исходное сообщение
"Оценка эффективности различных режимов оптимизации GCC"

Отправлено opennews , 14-Окт-12 23:46 
Ресурс Phoronix опубликовал (http://www.phoronix.com/scan.php?page=article&item=gcc_47_op...) результаты выполнения серии тестов производительности, выполненных при сборке с использованием различных режимов оптимизации GCC 4.7.2. Результаты тестирования позволяют оценить насколько велики отличия в производительности при выполнении тех или иных тестов, собранных с разными флагами оптимизации (-O0, -O1, -O2, -O3, -Os, -Ofast). Как правило, отличия не столько существенны, но как и можно ожидать лидируют режимы "-O3" и "-Ofast", от которых немного отстаёт "-O2".

URL: http://www.phoronix.com/scan.php?page=article&item=gcc_47_op...
Новость: http://www.opennet.me/opennews/art.shtml?num=35080


Содержание

Сообщения в этом обсуждении
"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 14-Окт-12 23:47 
А что это ещё за режимы оптимизации?

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 02:17 
> А что это ещё за режимы оптимизации?

Читайте маны, они рулез.


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 02:36 
> Не нужно быть фанатом, нужно трезво оценивать ситуацию.

Если трезво оценивать ситуацию, любая электроника может быть бракованной. Некоторый процент брака есть всегда. Что могут - ловят на этапе тестирования. Но как вы понимаете, возможен и случай когда чип кой-как пролез на грани а при малейшей деградации или изменении каких либо параметров - запаса не осталось и начались проблемы.

Если посмотреть на интель - так у них вообще бывают совершенно лютые факапы. У них то юсб выгорал от малейшего пшика статики, унося за собой весь чипсет, т.к. чудаки зачем-то сэкономили за защите от статики в чипе. То sata порты отпадали через некоторое время работы, потому что транзисторы не к тому питанию вообще подключили, то еще какая пакость приключалась. При том это именно лажа в дизайне, а не просто случайность приведшая к неудачным параметрам конкретного кристалла, может быть одного на всю пластину. И ничо, пипл схавал :)


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено terr0rist , 15-Окт-12 01:22 
Куда интереснее вопрос: были ли когда-либо у кого-либо проблемы с -О3 или -Оfast и тем более с -О2, и если нет, то почему их до сих пор не сделали по умолчанию.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 01:35 
естественно, были, есть и будут. Потому по дефолту используют только -O2

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено sam002_tmp , 15-Окт-12 02:22 
О-о-о, да! Неизгладимые впечатления оставили глюки при сборки CLFS... Когда-то использовал рекомендации по составлению опитимизируемого кода, но глубже изучив gcc плюнул - нормальная сборка с -O3 дело случая, качественный код полезнее писать))

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено DannyBoy , 15-Окт-12 03:00 
wine например не будет пахать на системе скомпиленной на -O3. Только на -O2.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 06:48 
Пишу из Gentoo, полностью скомпилированной с "-march=amdfam10 -O3 -pipe". Wine работает.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено DannyBoy , 15-Окт-12 08:31 
Хм.. у меня вообще ни в какую. Пришлось всю на -O2 пересобирать. Пробовал отдельно глибец и вайн с -O2, но всё бестолку.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Stax , 15-Окт-12 11:20 
Обычно почти все, что начинает глючить от -O3 перестает при оптимизации  -O3 -fno-tree-vectorize

Так как большая часть злобных багов в gcc как раз в модуле автовекторизации, который включается при -O3.


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено DannyBoy , 15-Окт-12 13:29 
Интересно. Запомню, но и на -O2 уже и так хорошо.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 12:02 
> Пишу из Gentoo, полностью скомпилированной с "-march=amdfam10 -O3 -pipe". Wine работает.

Звучит как "пишу из горящего танка" :)


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Anonimus Vulgaris , 15-Окт-12 20:30 
DannyBoy, спасибо! Пересобрал сейчас wine с -О2 - и оно заработало! С -О3 у меня на Debian'e запускался криво, и вообще был считай неработоспособен...

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено неО , 15-Окт-12 21:30 
> wine например не будет пахать на системе скомпиленной на -O3. Только на
> -O2.

откуда мыслишки?


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено DannyBoy , 15-Окт-12 03:14 
И да. -O2 это безопасная оптимизация. Т.е. прога к чертям не полетит от неё.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 06:36 
> Куда интереснее вопрос: были ли когда-либо у кого-либо проблемы с -О3

Да запросто. Безопасно только -O2, а на -O3 на ряде программ вполне могут вылезти очень странные, а иногда еше и трудноуловимые глюки.


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено pro100master , 15-Окт-12 09:44 
большинство (FreeBSD) работают, в часности, мир переживает О3 и проблем не наблюдается. А вот некоторые программы, типа мускуля/посгре/файрбёрд, почти всегда в корке - их обычно отдельно с О2 собирают.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено XoRe , 15-Окт-12 11:54 
> большинство (FreeBSD) работают, в часности, мир переживает О3 и проблем не наблюдается.
> А вот некоторые программы, типа мускуля/посгре/файрбёрд, почти всегда в корке -
> их обычно отдельно с О2 собирают.

Бывало ловили глюки и на O3, и на O2.
http://sysoev.ru/freebsd/digest1.html


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено pro100master , 22-Окт-12 01:00 
> Бывало ловили глюки и на O3, и на O2.
> http://sysoev.ru/freebsd/digest1.html

FreeBSD 5? Давай, до свидания (c) :)


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 12:01 
> большинство (FreeBSD) работают, в часности, мир переживает О3 и проблем не наблюдается.

"Если вам кажется что дела идут хорошо, значит вы просто чего-то не заметили".


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 10:31 
А раньше озон сливал.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Аноним , 15-Окт-12 17:17 
Полным ламером это написано:

> Компилятор таких изменений в процессорной линейке не фиксирует и определить не способен. Они учитываются адекватными разработчиками адекватных дистрибутивов

на деле все наоборот, адекватные разработчики знать не знают о фишках ваших процессоров, и собирают пакеты под г-нo мамонта, плюс любят перестраховываться, собирая порой чуть ли не без оптимизаций вообще. В то же время компилятор с -march=native сам разберётся что у вас за процессор и соберет всё правильно. А O3 никто не мешает включать не для всего, а только там где он реально нужен - т.е. для числодробилок. И увеличением скорости всяких рейтрейсеров и физических рассчётов потом неосилятором оптимизаций в рoжу плевать.


"Оценка эффективности различных режимов оптимизации GCC"
Отправлено darkshvein , 15-Окт-12 18:30 
И опять же, насчёт -O3. Почему все виновато молчат и никто не говорит о чьих-нибудь кривых руках?

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Анонище , 15-Окт-12 19:14 
Для применения -03 желательно понимать, что вся эта оптимизация хороша только на хорошем коде. Программисту надо знать, как gcc разбирает специфичные блоки кода и что в итоге получается на выходе.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено darkshvein , 15-Окт-12 19:36 
Спасибо за ликбез

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено John , 16-Окт-12 16:06 
IMHO: сомнительные результаты - достаточно большое различие -O2 и -Os.
Например, здесь http://www.linux-mag.com/id/7574/1/ результаты несколько другие (правда для другого CPU и другой версии GCC).

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено воланд , 16-Окт-12 16:44 
А какие тесты Phoronix не сомнительны? У них такие эпикфейлы есть, вообще странно, что еще хоть кто-то воспринимает их всерьез.

"Оценка эффективности различных режимов оптимизации GCC"
Отправлено Andrey Mitrofanov , 16-Окт-12 20:30 
> А какие тесты Phoronix не сомнительны? У них такие эпикфейлы есть, вообще
> странно, что еще хоть кто-то воспринимает их всерьез.

"Вот никаких и не читайте." ? "Вы не любите пролетариат!" :-P