-
- Не сократить, а раздуть. misyachniy(245 знак., 28.12.2021 09:29)
- традиционно, оптимизаций две (без кардинального изменения алгоритма и подходов к решению задач) - по скорости и по объёму кода. Как правило это взаимоисключающие вещи. Вместе бывает встречаются, но редко. А наиболее правильная оптимизация - алгоритмическая. Ну и классика жанра - выкинуть из циклов инвариантный код, который туда попадает частенько (из-за лени программиста, в основном ) :)) - Adept(28.12.2021 12:35)
- Да много за счёт чего, в частности сильно экономит использование даже метких п/п взамен макросов. Если макрос нечасто используется (не в каком-нить критическом ко времени выполнения цикле, многократно), то почти всегда выгоднее заменить его на п/п, пусть даже и с двумя-тремя асемблерными командами всего. не исключаю, что компилятор может без оптимизации именно задействовать макросы (которые тиражируются по всей программе), а с оптимизацией заменять их на call/ret Adept(2116 знак., 27.12.2021 14:41)
- В пределе, оптимизация по объёму памяти может выродится в простейший интерпретатор условного Бейсика/Си/Явы/итп. С соответствующим снижением быстродействия. В разы. - argus98(27.12.2021 13:58)
- Обычно компилятор без оптимизации должен генерировать код, не препятствующий отладке. Нельзя сворачивать действия из разных строк в одно, нельзя выкидывать переменные, даже если они больше не нужны, и т.д. Это может раздувать код очень прилично. - SciFi(27.12.2021 13:57)
- Тут кое чего. Тока не надо писать свой компилятор. Codavr(274 знак., 27.12.2021 13:41)
- Достаточно библиотеку подключить строго используя только те куски, что задействованы в программе. - Evgeny_CD(27.12.2021 13:36)
- LTO оптимизация Evgeny_CD(1 знак., 27.12.2021 13:35, ссылка)
- Думаешь у тебя получится лучше, чем у компилятора? Сомневаюсь чёта. - =AlexD=(27.12.2021 13:32)
- Оптимизация только использования регистров уже много может дать. - Evgeny_CD(27.12.2021 13:30)
- Не сократить, а раздуть. misyachniy(245 знак., 28.12.2021 09:29)