понедельник, 3 июня 2013 г.

Оптимизация кода - ускорение приложения

Ранее (вернее до вчерашнего дня) я под ускорением приложения подразумевал оптимизацию кода.
Например заместо for(int i=0;i писал for(int i=0;s[i];i++) ...
Ну и так далее, оптимизировал циклы и прочее, часто использовал указатели на char *, нежели пользовался стандартными функциями str.
Но все изменилось вчера, собрал небольшой, но вычислительный код на машинке под Lin64.
Компилил само-собой g++, и скорость на только что свежой тачке с толи с 4, толи 8 ядерным процессором показала практически туже что и на моем рабочем компьютере - винXP32, трехлетней выдержки.

Что за нах? Подумал и поискал в инете, нашел кучу ключей и собрал уже с ключами -m64 -Ofast -flto -march=native -funroll-loops, разница была в десять(10) раз!!!

Вот такая хреновина...

3 комментария: