Re: Перекомпиляция основных программ
On Saturday 16 of October 2010 23:52:25 Н. Артём wrote:
>
> Не, ну мне же не нужна функциональность USE флагов.
> Для меня достаточно пересборки с нужным -march/-mtune, одинаковыми для
> всех, и иже с ними.
>
Лет 10 назад занимался опртимизацией своей собственной программы.
С тех пор вынес следующее впечатления:
1) Разница между -O0 и -O2, на обычных задачах, незаметна вообще.
Только на числодробительных что-то можно заметить.
Прочие опции компилятора, чаще всего не помогают, но могут ухудшить.
2) Основной ресурс оптимизации -- это грамотное расположение кода и данных,
чтобы правилно забить кэш процессора.
Но
а) это большая морока
б) имеет смысл только на числодробительных задачах
3) многозадачность убивает напроч любую подобную оптимизацию,
если, конечно, программа не числодробилка.
Дело в том, что числодробилка, в основном, складывает и вычитает, умножает и
делит.
Чтобы улучшить производительность числодробилки, нужно чтобы арифметика
работала побыстрее, а прочих команд было поменьше.
Вот для этого и нужны MMX, SSE и опции компилятора.
А прочие программы, в основном, занимаются копированием данных туда-сюда.
Тут никакая оптимизация не поможет.
--
Скажи, кузнечик,
О своей жизни в траве
Не упрыгивай!
Reply to: