SpecTips/optflags: различия между версиями
< SpecTips
PhpCoder (обсуждение | вклад) (Import from freesource.info) |
Нет описания правки |
||
Строка 15: | Строка 15: | ||
<pre>Date: Thu, 29 Sep 2005 03:52:23 +0400 | <pre>Date: Thu, 29 Sep 2005 03:52:23 +0400 | ||
From: "Dmitry V. Levin" <ldv@> | From: "Dmitry V. Levin" <ldv@> | ||
To: | To: Sisyphus discussion list <sisyphus@> | ||
Subject: Re: [sisyphus] компиляция с использованием параметров оптимизации | Subject: Re: [sisyphus] компиляция с использованием параметров оптимизации | ||
Версия от 12:41, 6 августа 2008
Оптимизация
Макросы
Сильно рекомендуется использовать обычный %optflags. [TODO: раскрыть тему %remove_optflags]
Текущее значение можно получить командой rpm --eval %optflags (зависит от платформы).
Соображения и рекомендации
Date: Thu, 29 Sep 2005 03:52:23 +0400 From: "Dmitry V. Levin" <ldv@> To: Sisyphus discussion list <sisyphus@> Subject: Re: [sisyphus] компиляция с использованием параметров оптимизации On Thu, Sep 29, 2005 at 03:44:27AM +0400, Alexey Tourbin wrote: > On Wed, Sep 28, 2005 at 12:21:13PM +0300, Led wrote: > > > медленно). С -O3 собиратся будет раза в два медленнее, но и работать будет > > > быстрее. > Не будет. > > > Тут есть ньюансы:) Бывают случаи (логически объяснимые), когда сборка с -Os > > получается самым быстрым вариантом:) > Таких случаев больше половины. Логическое объяснение -- кеш > у процессоров не резиновый. -O3 может дать небольшой прирост > производительности на интенсивных математических вычислениях, > но для типичного кода, который "скачет" по библиотекам и часто > делает системные вызовы, раскрутка циклов и т.п. заметно портит дело. > > Перл и все перловые модули сейчас собираются с -Os. Я когда-то > профилировал, по сравнение с -O2 выигрыш примерно 7%. > > Короче, лучше не париться, %optflags сойдёт. Общее правило такое: До тех пор, пока вы сами либо те, кому вы доверяете, не выполнили сравнение производительности данного конкретного исполняемого файла, собранного с использованием разных параметров оптимизации, для сборки этого файла следует использовать %optflags.