Часть 3
Крис Касперски
Большое тестовое сравнение Linux-компиляторов продолжается! Тема
сегодняшнего исследования – циклы и их оптимизация. В основном мы будем
говорить о трех наиболее популярных компиляторах – GCC 3.3.4, Intel C++ 8.0
и Microsoft Visual C++ 6.0, к которым теперь присоединился и
GCC 4.0.0 со своим новым оптимизатором циклов.
По статистике до 90% времени исполнения приходится на глубоко вложенные
циклы, от качества оптимизации которых зависит быстродействие всей программы в
целом. Современные компиляторы поддерживают множество прогрессивных технологий
оптимизации и способны буквально творить чудеса!
Стратегия оптимизации циклов тесно связана с
архитектурой процессора, кэш-контроллера и контроллера оперативной памяти. Это
слишком объемная, можно даже сказать, монументальная тема, и в рамках настоящей
статьи она не обсуждается. Читайте документацию, распространяемую фирмами Intel
и AMD (причем не только по процессорам, но и по чипсету) или мою книгу «Техника
оптимизации программ – эффективная работа с оперативной памятью», в ней эти
вопросы освещены достаточно подробно.