Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / К каким последствиям может привести включение или выключение оптимизации при компиляции? / 10 сообщений из 10, страница 1 из 1
06.07.2021, 10:20
    #40082019
hlopotun
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
Всем доброго дня,

в одном из проектов столкнулся с тем что при компиляции релиза оптимизация включена а при компиляции версии для отладки выключена. Может это как то влиять на проблемы наподобии "Out of memory" и вообще какой вариант (включена / выключена оптимизация) к каким последствиям может привести?

Спасибо
...
Рейтинг: 0 / 0
06.07.2021, 10:39
    #40082026
swame2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
hlopotun,

Могут быть по разному инициализированы переменные, если их забыли явно инициализировать.
По разному могут выполняться циклы.
Т.е. версии релиз и дебаг будут выполняться по разному.
...
Рейтинг: 0 / 0
06.07.2021, 12:06
    #40082048
alekcvp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
Если программа с включённой оптимизацией и без работает по-разному, кроме скорости работы - это явно говорит о косяках в программе.
...
Рейтинг: 0 / 0
06.07.2021, 12:11
    #40082049
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
Отлаживать не получится куски кода, которые компилятор посчитает "ненужными" (например, в конце добавляешь отладочный код, чтобы посмотреть какой-нибудь результат расчетов, а компилятор не останавливается).
...
Рейтинг: 0 / 0
06.07.2021, 12:15
    #40082051
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
Еще один раз был нюанс (не знаю, связан ли с включаемой оптимизацией или нет) -- не все операторы в условиях вызываются/выполняются, если уже известен результат.

Пример, какой-то нужный метод может не вызваться:
Код: pascal
1.
2.
3.
if not isOK and checkAndPrintValue1() then Exit;
if not isOK and checkAndPrintValue2() then Exit;
if not isOK and checkAndPrintValue2() then Exit;
...
Рейтинг: 0 / 0
06.07.2021, 12:35
    #40082059
swame2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
JayDi,

>>не все операторы в условиях вызываются/выполняются, если уже известен результат.

Это опция Complete boolean evaluation
...
Рейтинг: 0 / 0
06.07.2021, 16:36
    #40082169
white_nigger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
А в редких случаях, включение оптимизации приводит к ошибочной кодогенерации и различным ошибкам. И в QC были тикеты на этот счёт... Если память не подводит, даже мы пару писали
...
Рейтинг: 0 / 0
06.07.2021, 20:23
    #40082212
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
Еще одна постоянно бесящая штука -- при включенной оптимизации иногда дебаггер не может показать значения временных переменных в конце процедуры или куска кода (типа они там больше не нужны и были "удалены").
...
Рейтинг: 0 / 0
07.07.2021, 08:29
    #40082255
makhaon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
JayDi,

так если их действительно физически не существует, что дебаггер покажет?
...
Рейтинг: 0 / 0
07.07.2021, 12:11
    #40082311
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
К каким последствиям может привести включение или выключение оптимизации при компиляции?
makhaon
так если их действительно физически не существует, что дебаггер покажет?
Пусть на бумажку записывает
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / К каким последствиям может привести включение или выключение оптимизации при компиляции? / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]