Существует ли метод автоматического поиска лучших параметров компилятора (на данной машине), что приводит к максимально быстрому выполнению?
Естественно, я использую g++ -O3
, но есть дополнительные флаги, которые могут ускорить выполнение кода, например -ffast-math
и другие, некоторые из которых зависят от оборудования.
Кто-нибудь знает код, который я могу поместить в мой файл configure.ac
(GNU autotools), чтобы флаги были автоматически добавлены в Makefile командой ./configure
?
В дополнение к автоматическому определению лучших флагов меня могут заинтересовать некоторые полезные флаги компилятора, которые можно использовать по умолчанию для большинства оптимизированных исполняемых файлов.
Обновление: Большинство людей предлагают просто попробовать разные флаги и выбрать лучшие из них эмпирически. Для этого метода у меня возник бы дополнительный вопрос: есть ли утилита, которая перечисляет все флаги компилятора, которые возможны для машины, на которой я работаю (например, проверяет, доступны ли инструкции SSE и т. Д.)?