Ожидаемая производительность генерации временного кода канала MSVC

Я собираю KiCad EDA suite, используя MSVC 9 (15.0.30729.1).

Это довольно сложная часть программного обеспечения, поэтому общее время компиляции 3,5 часа для /O2 Релиз сборки на i3 вполне приемлем. Для дальнейшей оптимизации кода я включил /GL а также /LTCG использовать функцию генерации временного кода ссылки.

Рассматривая самый большой компонент: в x86 это несколько замедлило процесс компоновки (как и ожидалось), но не дало уменьшения размера кода (7,3 МБ); в x64 одиночный вызов компоновщика теперь занимает 1,5 часа сам по себе, и при этом все равно не уменьшает размер кода (10,1 МБ).

Для сравнения, gcc на x64 генерирует 11 МБ без -fltoи 9,5 МБ с -flto (потратив 10 минут на компоновщик) — хотя я знаю, что эта версия MSVC значительно старше, я, конечно, не привык к тому, что gcc генерирует меньший код за меньшее время, чем MSVC.

Поскольку мой опыт работы с инструментарием MSVC в лучшем случае поверхностен: характерно ли для генерации кода во время канала связи уменьшение размера кода? Есть ли опция компилятора, которую я мог пропустить?

2

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]