Привет. Я пытаюсь оптимизировать код C, который включает в себя несколько вызовов функций из разных файлов. Самые дорогостоящие в вычислительном отношении функции включают указатели для получения и возврата параметров. Я проверил различные флаги, такие как
-O3, -Ofast, -fast и некоторые функции оптимизации команд, такие как -xHost и т. Д.
опция:
icc -O3 -быстрый ...
Ускоряет программу почти на 10 , и это самое высокое ускорение из вышеупомянутых опций, но когда я использую
icc -O3 -ipo ...
Я получаю еще большее ускорение (x15) .
Я пытаюсь выяснить, что включает эти флаги и заставляет мой код работать быстрее, чем флаги -O3 и -fast.
Как я уже читал, этот флаг представляет собой Межпроцедурную оптимизацию , которая оптимизирует вызовы функций.
Кто-нибудь знает, что это значит?
или же
Кто-нибудь знает более подробную информацию об этом флаге?
Наконец, у gcc есть похожие флаги?