среда, 22 июня 2011 г.

g++ -Ox...

Один программист провел интересное исследование: сравнение эффективности одного и того же простого действия при использовании глобальной функции, inline глобальной функции, чистого функтора, лямбда-функции C++11 и лямбда-функции Boost.Phoenix. Полученные результаты оказались весьма интересны, в особенности то, насколько на таблицу результатов повлиял флаг g++ -Ox. Итак, при -O0 в лидеры вышел код с использованием лямбда-функции C++11, а при использовании -O3 лямбда-функция C++11 оказалась на последнем месте! В лидерах при максимальной оптимизации глобальная функция, чистый функтор и лямбда-функция Boost.Phoenix. Вот так.

Более подробно - см. первоисточник.

1 комментарий:

  1. Обновлённая ссылка на первоисточник: http://dshevchenko.biz/ru/content/функции-и-функторы-кто-быстрее

    ОтветитьУдалить