>>> Врезка еще тесты
![](image/vrezka-eshhe-testy_1.jpg)
Рисунок4 сравнительные тесты ICC 8.1 и 3.3.1 на EEMBC 1.1 бенчмарке (EEMBC расшифровывается как Embedded Microprocessor Benchmark Consortium, а меряет эта штука усредненную производительность на репрезентативной выборке из сетевых, офисных и вычислительных тестах).
"Advanced Optimization" подразумевает следующие ключи:
Intel C++ Compiler: -03 -ipo –xW
GCC 3.3.1: -03 -march=pentium4 -mcpu=pentium4 -msse -msse2 –mmmx
-funroll-loops -ffast-math -fomit-frame-pointer -mfpmath=sse (подробнее об это можно почитать на www.qnx.com/download/download/10028/Intel_Compiler_Product_Brief.pdf)
![](image/vrezka-eshhe-testy_2.jpg)
Рисунок 5 сравнение качества кодогенерации по данным теста stream (производительность на операциях с памятью, Мбайт в сек)
Интел более агрессивно выравнивает структуры данных и учитывает архитектуру кэш-контроллера, за счет чего выигрывает несколько процентов производительности
![](image/index-image007.jpg)
Рисунок 6 сравнение качества кодогенерации по данным теста winstone (комплексный текст с включением мультимедийных приложений, вертикальная шкала — MIPS)
безоговорочное превосходство icc — результат использования SSE-регистров, о которых gcc 2.95 ничего не знает