AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.05.2008, 12:48   #1  
epetrov is offline
epetrov
Участник
 
13 / 22 (1) +++
Регистрация: 27.10.2005
Адрес: Казань
Цитата:
Ой, надо бы протестировать на производительность.
Результаты тестирования System.Random против RandomGenerate
X++:
static void Job502(Args _args)
{
    System.Random  randomNet;
    RandomGenerate randomAx;
    Int r;
    ;

    randomNet = new System.Random(); // 343112 Такты
    randomAx = new RandomGenerate(); // 43827   Такты
    r = randomNet.Next(0, 10);                // 119623 Такты
    r = randomAx.randomInt(0, 10);         //  279566 Такты
}
Т.е. получилось, что .Net класс почти в 8 раз проигрывает при создании объекта, но 2.3 раза выигрывает при генерации случайного значения. При этом время создания объекта System.Random сопоставимо с временем генерации случайного значения из RandomGenerate.

Последний раз редактировалось epetrov; 06.05.2008 в 12:55.
За это сообщение автора поблагодарили: mazzy (5).
Старый 06.05.2008, 13:00   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
спасибо.
Т.е. как и Аксаптовский, дотнетовский рандом лучше создавать один раз, а потом вызывать-вызывать-вызывать.

еще бы анализ случайности и воспроизводимости...
__________________
полезное на axForum, github, vk, coub.
Старый 22.05.2008, 02:58   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от epetrov Посмотреть сообщение
Результаты тестирования System.Random против RandomGenerate
X++:
static void Job502(Args _args)
{
    System.Random  randomNet;
    RandomGenerate randomAx;
    Int r;
    ;

    randomNet = new System.Random(); // 343112 Такты
    randomAx = new RandomGenerate(); // 43827   Такты
    r = randomNet.Next(0, 10);                // 119623 Такты
    r = randomAx.randomInt(0, 10);         //  279566 Такты
}
Т.е. получилось, что .Net класс почти в 8 раз проигрывает при создании объекта, но 2.3 раза выигрывает при генерации случайного значения. При этом время создания объекта System.Random сопоставимо с временем генерации случайного значения из RandomGenerate.
System.Random не создается на сервере. Надо разбираться, но сил никаких нет. Завтра...

Текст ошибки
Цитата:
Error Сообщение (03:06:33) Сбой запроса на разрешение типа "InteropPermission".
(S)\Classes\InteropPermission\demand
(S)\Classes\CLRObject\new
(S)\Classes\Random_RNR\new - line 4
(S)\Classes\Random_RNR\construct - line 3
*****************несколько классов*************
(S)\Classes\MenuFunction\runServer

Error Сообщение (03:06:33) Объект "CLRObject" не может быть создан
__________________
полезное на axForum, github, vk, coub.
Теги
random, документация, случайное число

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ruslan Goncharov: Stereogram in AX Blog bot DAX Blogs 0 30.05.2008 18:05
Программирование и перенос Layer-а на другую апликацию, выдает random-ошибки .. Delfins DAX: Программирование 10 04.04.2006 17:03
random() ? slava DAX: Программирование 2 26.09.2002 12:22

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 11:41.