Тема: .NET CLR vs X++
Показать сообщение отдельно
Старый 23.08.2011, 14:49   #7  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от lvan Посмотреть сообщение
я думаю, что если постараться, то можно найти такой код, который будет в 10 раз быстрее работать? но зачем?
Например, чтобы понимать примерно, насколько ускорится нужный код. То есть, если мы знаем, что в нужном коде быстродействие жрет 50% X++ и 50% SQL и копиляция в CLR даст примерно 70 кратный прирост производительности X++ как такогого, то результирующее ускорение будет примерно в 2 раза.

=== ниже информация неофициальная и, возможно, ложная ===

Насколько я помню тупой код типа цикл с присваиванием переменной укоряется в 70 раз.

Еще есть разные факторы - в .NET используется недетерминированный сборщик мусора, а в X++ детерминированный (он должен убрать мусор сразу как только нет на него ссылок). В результе X++ при каждом присваивании считает циклы - что дает квадратичный, кажется, прирост времени выполнения при присваиваниях полей классов с развесистым графом объектов, например, в разноске больших журналов.

В-общем, попробуйте отпрофилировать TraceParserом ваши задачи.

Еще следует учесть что включение HotSwapping помещает ваши сборки в отдельный домен, что дает некоторое увеличение времени вызова между вашим кодом и ax32serv
За это сообщение автора поблагодарили: mazzy (2), Logger (5), alex55 (1).