ЖЖ от 2005-09-17 17:22:00
О пользе ключей оптимизации. Скомпилировал пример из треда в ЖЖ
dz. Машина — Pentium IV Xeon 2.4GHz (gcc версии 3.2.2 20030222):
без ключей — 45 секунд
-O3 — 45 секунд
-O3 и ключи для MMX/SSE2 — 14 секунд
понятно, что пример насквозь синтетический, но сам факт!
понятно, что пример насквозь синтетический, но сам факт!
Комментарии 6
Поправил.
Но есть и ещё более смешной факт. Дело в том, что шумиха вокруг MMX/SSE1 (насчет SSE2 не скажу) является не более чем рекламным шумом. Эти наборы команд сильно ущербные и, по некоторым оценкам, не могут ускорить работу с данными даже в идеальном случае более чем на 30%!!! Откуда же берется разница в разы? Да оттуда, что до появления шумихи с ММХ никто просто не оптимизировал узкие места. Несинтетический пример для подтверждения этого тезиса — Фотошоп. Производительность некоторых операций в нем была в 3(!) раза медленнее в версиях не знавших что такое MMX\SSE.
про MMX я знаю — я ещё программировал на ассемблере, когда он вышел :) Но есть операции, которые MMX реально ускорял и упрощал, одна неприятность — можно было пользоваться