Новая версия платформы MetaTrader 5 build 2815: Доступ к стакану цен из Python, улучшения в отладчике и профилировщике - страница 19

 
Vladimir Pastushak:

Какой смысл отключать агентов если оптимизатор все равно грузит все агенты и потоки?

Почему нельзя реально не задействовать 1-2 агента что бы дать возможность спокойно работать на ПК?

64 потока, при оптимизации ПК становиться колом...


Считаем процессы...
 
Aliaksandr Hryshyn:
Считаем процессы...

Причем тут процессы?

 
Vladimir Pastushak:

Причем тут процессы?

Один процесс-один агент.
Там можно посчитать реальное количество
 
Aliaksandr Hryshyn:
Один процесс-один агент.
Там можно посчитать реальное количество

С чего это вдруг один процесс один агент? Если агент отключен в терминале в оптимизации он не должен получать нагрузку из оптимизатора. Сама винда не может постоянна так сильно нагружать два ядра и 4 потока...

 
Vladimir Pastushak:

С чего это вдруг один процесс один агент? Если агент отключен в терминале в оптимизации он не должен получать нагрузку из оптимизатора. Сама винда не может постоянна так сильно нагружать два ядра и 4 потока...

Так посмотрите нагрузку агентов.
У вас не 2 ядра или четыре потока остаётся по процессорному времени.
По нему остаётся только, можно сказать, только одно ядро с одним потоком! Точнее, аналог этому.
Не только винда, но и планировщик заданий тестера
Так что всё правильно.
 

Снимаю и ставлю галочки настроек профайлера. Информация, которую он показывает при любых настройках, абсолютно не может быть использована для поиска слабых мест.

Что делаю не так? В профайлере MT4 отлично видны тормозные места. MT5 - никак не получается эффективно профилировать.


Вроде, говорили, что какие-то настройки MT5-профайлера делают MT4-вариант. Но это, к сожалению, не так. Никак не получается найти в коде медленное место, которое есть.

В MT4-варианте давно бы уже все обнаружил и исправил. Как пользоваться текущим профайлером?!


Режим отображения "Functions by Lines" всегда показывает пустоту. Не могу узнать, сколько вызывалась и сколько длилось выполнение определенной функции. В MT4 это элементарно узнать сходу!

В чем преимущества нового профайлера, если ни одной практической задачи по улучшению кода выполнить не получается?

 
Ilyas:

@Ilyas, похоже, нашел баг оптимизатора компилятора. Добавляю инклуд, в котором ни одна функция не вызывается, и происходит замедление выполнения на 10%.

Все варианты самообмана, вроде, проверил. Никак не получается понять причину, поэтому грешу на компилятор. Если интересно, дайте знать. Скину тогда в ЛС (проект далеко не лаконичный).

 
2021.03.24 06:12:28.920 Terminal        MetaTrader 5 x64 build 2842 started for MetaQuotes Software Corp.
2021.03.24 06:12:28.921 Terminal        Windows 10 build 19042, Intel Core i7-9750H  @ 2.60GHz, 25 / 31 Gb memory, 841 / 947 Gb disk, IE 11, UAC, GMT+2
2021.03.24 06:12:28.921 Terminal        C:\Users\barab\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075

При попытке создания mqh файла редактор вылетает.

Пытаюсь создать:

Редактор вылетает.

Если открыть лош-файл - там будет

0       2021.03.24 08:04:55.393 Storage 4147 index records loaded in 43 msc
2       2021.03.24 08:05:34.704 Terminal        crashlog generated
2       2021.03.24 08:05:34.768 Terminal        crashlog finalized

при этом папка C:\Users\barab\AppData\Roaming\MetaQuotes\Crashes пустая

странно, теперь краш появился ...

Файлы:
MT5CLWIDE64.zip  186 kb
 

Добавлю: оказывается в build 2842 редактор крашится даже при попытке создать советника ...

Создаю советник, редактор аварийно завершает работу. Открываю редактор снова - вижу, что файл советника есть. При попытке двойного клика из редактора по этому новому советнику редактор снова аварийно завершает работу.

Если созданный файл открыть в блокноте (Notepad ++) то видно, что созданный файл советника совсем пустой:

 
Vladimir Karputov:

При попытке создания mqh файла редактор вылетает.

Пытаюсь создать:

Редактор вылетает.

Креш будет исправлен в следующем билде.

Причина обращения: