Гонки на вымирание, девяносто пятые выживают

дохлое дело. Религиозные войны. Фанатизм.


Сравнение компиляторов — дохлое дело. Религиозные войны. Фанатизм. Бенчмарки. Объективных критериев оценки ни у кого нет, да и не может быть по определению (что русскому хорошо…) Всегда найдутся условия, на которых ваш компилятор уделывает всех остальных. Комплексные тесты только запутывают дело. Отображаемая ими "среднегодовая" температура не имеет ничего общего ни с тропической жарой, ни с арктическими морозами. Может, человеку целочисленное приложение компилировать надо, а основной вклад в комплексный тест дают плавающие операции.
Адепты максимальной оптимизации, собирающие все пакеты вручную, испытывают большие трудности с выбором "единственного правильного" компилятора. Многообразие версий GCC их угнетает, а тут еще мощный конкурент в лице Intel нарисовался. Основным системным компилятором большинство дистрибьютивов Линуха назначают GCC 2.95. В портах лежит GCC 3.2/GCC 3.3. Более свежие версии приходится добывать в Интернете самостоятельно.
Возникает естественный вопрос — оправдывает ли себя переход с GCC 2.95 на GCC 3.x или, может быть, лучше эмигрировать на другой компилятор? Если говорить кратко — на вкус и цвет товарищей нет. GCC 2.95 – это максимальная совместимость и быстрота компиляции. ICC 8.x – наивысшая производительность откомпилированного кода. GCC 3.x – рекордсмен по оптимизации векторных приложений под Атлон и другие процессоры фирмы AMD.
А теперь обо всем этом и многом другом поподробнее.

Содержание раздела