На коленке!Brazen wrote:Ладно, господа. Вам задали написать систему управления ядерной станции. Или аэродромного локатора и диспетчерской службы. Или систему наведения антенн спутника. На чем будете писать?

На коленке!Brazen wrote:Ладно, господа. Вам задали написать систему управления ядерной станции. Или аэродромного локатора и диспетчерской службы. Или систему наведения антенн спутника. На чем будете писать?
Например? Если я в чем то не уверен, то я говорю - возможно, может быть и т.п. а не требую предоставить тоже самое что то "незнаю как работающее" и вообще может быть несуществующее.crypto5 wrote: У меня нет доки под рукой, но следует заметить что у вас большая часть вашей аргументации состоит из утверждений, которые нужно так же детально изучать, что бы понять их применимость к данной дискуссии.
Неиспользуемые участки памяти очевидно в кеш не попадают и навредить ему не могут.ddv wrote:Но место то они все равно в памяти расходуют...О чем мы вообще говорим? Вы мне утверждаете что JIT может лучше соптимизировать чем Native C++ компилятор, и тут же раскидываетесь кучей памяти под ненужные методы.crypto5 wrote:Выбрасывать не может, но может просто не компилировать неиспользуемые методы.
А больше используемой памяти - большая возможность выхода за пределы кэша, что ведет к потери производительности намного больше чем недостаточная оптимизация кода.
Да я не путаю. Как там дела обстоят в нюансах в жабе я не в курсе, но в .NET эта возможность есть. Можно запустить JIT предварительно для всего проекта и сгенерировать native код (ngen.exe). Улучшается время запуска. Производительность может как вырасти, так и упасть в зависимости от массы факторов.ddv wrote:Да не надо путать java компилятор и JIT. Это ДВЕ СОВЕРШЕННО РАЗНЫЕ вещи. Вы спросили какой информации нет у JIT - я вам ответил. И у java компилятора нет возможности передать эту информацию JIT. А выбросить методы без native компиляции не может ни java компилятор ни JIT.
Про делегаты?ddv wrote:Например? Если я в чем то не уверен, то я говорю - возможно, может быть и т.п. а не требую предоставить тоже самое что то "незнаю как работающе" и вообще может быть несуществующееcrypto5 wrote: У меня нет доки под рукой, но следует заметить что у вас большая часть вашей аргументации состоит из утверждений, которые нужно так же детально изучать, что бы понять их применимость к данной дискуссии.
Что именно? Я признал что они являются некоторыми аналогами указателей на функции..и?crypto5 wrote:Про делегаты?
Ну так может вы напишите в чем именно заключаются ваши сомнения?ddv wrote: Мне просто стало интерестно как ФИЗИЧЕСКИ возможно сделать то что вы описали в Windows. По-моему это просто невозможно.
Элементарно. Как user space приложение может расчитать возможность попадания какого то участа памяти в cache процессора при том что есть диспетчер задач который не подвластен ему.crypto5 wrote:Ну так может вы напишите в чем именно заключаются ваши сомнения?
Ну так скажите че нить по теме (150k).fruit6 wrote:как насчет открыть отдельную тему в вопросах IT? базар про 150K был гораздо более увлекателен
Оно может рядом мер существенно повысить эту вероятность, например генерить меньше memory barrier инструкций.ddv wrote:Элементарно. Как user space приложение может расчитать возможность попадания какого то участа памяти в cache процессора при том что есть диспетчер задач который не подвластен ему.crypto5 wrote:Ну так может вы напишите в чем именно заключаются ваши сомнения?
Они место на диске расходуют, в основном. Причем мало места (bytecode сильно компактнее чем x86). В памяти оказывается уже откомпилированный код конкретного метода, причем только тот который (часто)используется, и JIT может его тасовать как угодно. Последствия для производительности могут быть любые, как в плюс, так и в минус.ddv wrote:Но место то они все равно в памяти расходуют...
Похоже что многие java программисты и вправду уверенны, что VM обладает экстрасенсорными и паронормальными возможностями,т.к. может "учитывать" не используя память , реализовывать RTTI механизмы не загружая информацию о классах в память, угадывать место расположение виртуальных методов после выкидывания ненужных вместе с информацией о полной структуре класса...и т.п.Zombie416 wrote:Они место на диске расходуют, в основном. Причем мало места (bytecode сильно компактнее чем x86). В памяти оказывается уже откомпилированный код конкретного метода, причем только тот который (часто)используется, и JIT может его тасовать как угодно. Последствия для производительности могут быть любые, как в плюс, так и в минус.
Это было потом, вначале вы категорично утверждали что масив указателей на функции в с# реализовать нельзя.ddv wrote:Что именно? Я признал что они являются некоторыми аналогами указателей на функции..и?crypto5 wrote:Про делегаты?
Ну тогда ваша очередь признавать что в java нет супер пупер memory manager'а который невозможно реализовать на C++...(хотя если бы он и был в VM то был бы реализован именно на С++crypto5 wrote:Это было потом, вначале вы категорично утверждали что масив указателей на функции в с# реализовать нельзя.