Re[21]: 32 bit
От: TailWind  
Дата: 18.03.23 01:35
Оценка:
ЕМ>Ну и уж явно нет никакого смысла кодом, генерируемым хоть каким JIT, измерять время работы команды инкремента, верно?

Да там вообще непонятно почему эти инкременты не были выброшены
Дальше то они не используются
Re[20]: 32 bit
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 18.03.23 08:20
Оценка:
Здравствуйте, pilgrim_, Вы писали:

_>Для .NET есть разница в запуске релиза под отладчиком и без. При запуске релизной сборки (сам .NET "код" в релизе и дебаге одинаковый, для релиза просто соотв. флаг проставляется, так было в старом .NET) под отладчиком JIT генерит нативный код, отличный от того, если запустить сборку без оного.


Значит, и нечего делать с помощью .NET чуждые ему вещи — в частности, измерение времени работы отдельных команд процессора.
Re[19]: 32 bit
От: Sharov Россия  
Дата: 18.03.23 18:52
Оценка:
Здравствуйте, pilgrim_, Вы писали:


S>>Сборки в dotnet имеют два осн. типа -- debug и release. Для первого типа компилятор не делает слишком много оптимизаций,

S>>чтобы облегчить жизнь отладчику -- не инлайнит ф-ии, переменные, не удаляет недостижимый код и т.п.
_>Вероятно речь про jit-компилятор.

Нет, я имел в виду как раз csc компилятор. Кстати, хороший вопрос, а знает ли jit про debug и release,
или ему это параллельно. Т.е. я знаю, что jit может методы инлайнить, но вот я не уверен, что он
может в тело методов лезть и что-то там делать\оптимизировать, это епархия csc. Но могу ошибаться.
К тому же я говорил, например, про мертвый код( размер сборки), который при release удаляется, а в debug отсается. Это точно
не про jit.

_>Но обсуждение началось с паскаля, компилятор которого генерит нативный код.


Спор зашел про дотнет, вроде Философ начал, а там и про отладочную версию программы.
Кодом людям нужно помогать!
Re[21]: 32 bit
От: Sharov Россия  
Дата: 18.03.23 18:54
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

S>>Как минимум перелючение типа сборки из debug в release.

ЕМ>Вставьте в программу операцию, заведомо вызывающую необрабатываемое исключение, переключите в Release, соберите и запустите. Кто обработает исключение?

Могу ошибаться, но зависит от. Может отладчик подрубиться (ОС предложит запустить), если студия установлена.
В противном случае будет просто окно с ошибкой.
Кодом людям нужно помогать!
Re[22]: 32 bit
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 18.03.23 19:15
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Могу ошибаться, но зависит от. Может отладчик подрубиться (ОС предложит запустить), если студия установлена.


Ничего не понял. Переключив студию в Release и собрав программу, Вы затем всегда запускаете программу независимо от студии? Если да, то зачем?
Re[7]: 32 bit
От: maks1180  
Дата: 18.03.23 20:22
Оценка:
A>Это, кстати, интересная тема. Надо бы замутить опрос по размеру выходных артефактов разрабатываемого ПО. У нас это мегабайты — десятки мегабайт. Меньше не получается, иначе полный функционал продукта невозможно реализовать.

Какой объём исходников ?
Ядро Линукс намного меньше занимает, но исходников там много!
Было бы интересно опрос провести на тему объем исходников и объём кода.
===============================================
(реклама, удалена модератором)
Re[8]: 32 bit
От: Aquilaware  
Дата: 20.03.23 06:05
Оценка:
Здравствуйте, maks1180, Вы писали:

M>Какой объём исходников ?


Посмотрел в одном из проектов — около 200000 строк, это компилируется в ~7 Mб исполняемого кода.
Re[9]: 32 bit
От: maks1180  
Дата: 21.03.23 06:36
Оценка:
A>Посмотрел в одном из проектов — около 200000 строк, это компилируется в ~7 Mб исполняемого кода.

Лучше конечно объём мерить в MB, так есть разные стили, одни пишут в 1 строку, то что некоторые в 4 строки напишут.

У меня например исходники (без картинок) 4,05 MB (из них 2,27MB исходники несколько либ), exe получился 800 KB (с картинками)
===============================================
(реклама, удалена модератором)
Отредактировано 21.03.2023 6:38 maks1180 . Предыдущая версия .
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.