В нескольких статьях из моей области исследований я только что обнаружил утверждение авторов о том, что отключение оптимизации компилятора полностью делает измерение производительности двух кодов справедливым.
Я не согласен, потому что:
- Оптимизация компилятора используется в каждом производственном коде.
- Оптимизация избавит от лишних временных объектов, циклы фиксированного размера будут развернуты и т. Д. c, не влияя на правильность вывода, так почему бы не программировать с учетом этих вещей?
- Конечно, алгоритмы должны разрабатываться с учетом эффективности в тех случаях, когда это имеет значение, не полагаясь исключительно на то, что компилятор сделает код быстрым, но оптимизация компилятора не может нанести вреда, не так ли?
Если это помогает, я прошу C ++ коды для научных c вычислений.
При составлении отчетов об измерениях производительности вы используете оптимизацию компилятора или нет и почему? Любые ссылки на литературу HP C помогут. Я обнаружил эту замечательную статью о измерениях HP C , в которой говорится, что
обычно сравнивается влияние оптимизации или системы на различные приложения
Скажем, у нас есть коды A и B. Если код A быстрее, чем код B в оптимизированном режиме (статистически), и медленнее без оптимизации, вы бы сказали, что A быстрее, чем B?