Пока нашел баг - время (по справке) показывается в миллисекундах, что не совпадает с опытом. Например, запуск индикатора на 5 секунд показал общее время OnCalculate 272 214 мс (4 минуты) [сервисдеск #434078]. p.s. ошибка в справке, время показывается в мкс.
Пока нашел баг - время (по справке) показывается в миллисекундах, что не совпадает с опытом. Например, запуск индикатора на 5 секунд показал общее время OnCalculate 272 214 мс (4 минуты) [сервисдеск #434078].
действительно похоже на глюк, типа конфликта двух таймеров (один из них профилировщика)
Silent: Попробуйте ArrayResize добавить, чтобы постоянно размер массива не дёргать при копировании.
Спасибо за совет. Ни Array resize ни задание размера массива статически не помогают. Все равно работа с буферами получается самой ресурсоемкой операцией. Но, может это так и должно быть.
Wahoo: Спасибо за совет. Ни Array resize ни задание размера массива статически не помогают. Все равно работа с буферами получается самой ресурсоемкой операцией. Но, может это так и должно быть.
Вообще да, CopyBuffer прилично времени занимает.
Вообще, лучше его в OnInit, а в OnTick просто дописывать.
Renat: Одна из важных задач профайлера - дать возможность нам провести более точную внутреннюю оптимизацию процессов внутри системы MQL5. Мы постараемся избавиться от узких мест.
Еще больше результатов мы получим после включения профайлера в одиночных проходах тестера торговых стратегий.
Не хотелось бы прослыть слоупоком. Рискну спросить, а сие уже реализовано или профилировщик в настоящее время (билд 756) только в реал-тайме работать умеет?
Она не может быть быстрой.
Посмотрим. Интересно мнение разработчиков.
Пока нашел баг - время (по справке) показывается в миллисекундах, что не совпадает с опытом. Например, запуск индикатора на 5 секунд показал общее время OnCalculate 272 214 мс (4 минуты) [сервисдеск #434078]. p.s. ошибка в справке, время показывается в мкс.
Посмотрим. Интересно мнение разработчиков.
Пока нашел баг - время (по справке) показывается в миллисекундах, что не совпадает с опытом. Например, запуск индикатора на 5 секунд показал общее время OnCalculate 272 214 мс (4 минуты) [сервисдеск #434078].
Уважаемые,
кто может подсказать, почему самой ресурсоемкой операцией в эксперте является работа с обычной средней :)??? См. скрин.
Делаю все по науке.
Инициализирую:
Потом в OnInit получаю хэндлы и т.д.
Потом в OnTick копирую буфер в массив:
А тормозит ужасно. При этом по такой же схеме я там обрабатываю и другие индикаторы, но тормозит ТОЛЬКО iMA.
Первый раз с таким сталкиваюсь. Помогите чем можете, пожалуйста.
Уважаемые,
кто может подсказать, почему самой ресурсоемкой операцией в эксперте является работа с обычной средней :)??? См. скрин.
Делаю все по науке.
Инициализирую:
Потом в OnInit получаю хэндлы и т.д.
Потом в OnTick копирую буфер в массив:
А тормозит ужасно. При этом по такой же схеме я там обрабатываю и другие индикаторы, но тормозит ТОЛЬКО iMA.
Первый раз с таким сталкиваюсь. Помогите чем можете, пожалуйста.
Попробуйте ArrayResize добавить, чтобы постоянно размер массива не дёргать при копировании.
Спасибо за совет. Ни Array resize ни задание размера массива статически не помогают. Все равно работа с буферами получается самой ресурсоемкой операцией. Но, может это так и должно быть.
Вообще да, CopyBuffer прилично времени занимает.
Вообще, лучше его в OnInit, а в OnTick просто дописывать.
Вообще да, CopyBuffer прилично времени занимает.
Вообще, лучше его в OnInit, а в OnTick просто дописывать.
Вообще да, CopyBuffer прилично времени занимает.
Вообще, лучше его в OnInit, а в OnTick просто дописывать.
На следующей неделе с новым билдом выйдет более детальная версия профайлера, который умеет показывать затраты даже заинлайненных функций.
Тем самым стало лучше видно полную картинку затрат.
Ну и ошибки в счетчиках поправили.
Одна из важных задач профайлера - дать возможность нам провести более точную внутреннюю оптимизацию процессов внутри системы MQL5. Мы постараемся избавиться от узких мест.
Еще больше результатов мы получим после включения профайлера в одиночных проходах тестера торговых стратегий.