Новая версия платформы MetaTrader 5 build 4755: общие улучшения - страница 14
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не может выделить 64 Мб, при этом говорит, что есть 6 гигов.
Выделил красным, в чем причина:
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Новая версия платформы MetaTrader 5 build 4755: общие улучшения
fxsaber, 2025.01.24 08:23
Не может выделить 64 Мб, при этом говорит, что есть 6 гигов.
Всего свободное место в памяти есть, но видимо сильно фрагментировано. Почему менеджер памяти не занимается упаковкой - не знаю.
Всего свободное место в памяти есть, но видимо сильно фрагментировано. Почему менеджер памяти не занимается упаковкой - не знаю.
Спасибо. Хорошее замечание.
Выделил красным, в чем причина:
Всего свободное место в памяти есть, но видимо сильно фрагментировано. Почему менеджер памяти не занимается упаковкой - не знаю.
Хорошо, что для себя от них отказался.
Продолжаю по старинке (как и в С++ кстати)
Динамическими массивами структур с динамическими массивами.
Подмассивы с новыми строками во все свободные места памяти легко распределит (от нескольких байт до нескольких килобайт в зависимости от числа столбцов).
Странно, что МQ выбрали такой вариант - брать под матрицу сразу огромный кусок памяти, который для изменения размера может часто искать новое место в памяти. Может и забывает (не успевает) удалять, потому и осталось 30мб максимального свободного блока.
Forester #:
Наверное огромными матрицами работает.
Нет матриц и огромных массивов.
Странно, что МQ выбрали такой вариант - брать под матрицу сразу огромный кусок памяти, который для изменения размера может часто искать новое место в памяти. Может и забывает (не успевает) удалять, потому и осталось 30мб максимального свободного блока.
Склоняюсь к тому, что где-то утечка памяти происходит.
Склоняюсь к тому, что где-то утечка памяти происходит.
Ставлю на фрагментацию и запаздывание со сборкой мусора. Правда, непонятно, это win api, или алгоритмы терминала...
Вроде переназначение заданий между агентами в локальной сети есть, но как то не до конца сделано ((
На одном из агентов 35 заданий осталось, при этом 6 агентов бездействуют. А если тест по реальным тикам и за большой период, то это очень долго 35 заданий одним агентом вычислять.
Исправьте пожалуйста.
Если машина, которая запускает тестирование с агентами из локальной сети тоже имеет добавленные агенты, то может не нужно при поиске предлагать свои же агенты и в списке локальной сети?
Можно не заметить (и не удалить вручную) и перегрузить ведущий компьютер удвоенным числом вычислений и потребления памяти..
Ставлю на фрагментацию и запаздывание со сборкой мусора. Правда, непонятно, это win api, или алгоритмы терминала...
Из за этого инцидента я у себя решил ставить ArrayFree(); в конце функций, если они создавали массивы.
Тут https://www.mql5.com/ru/docs/array/arrayfree ничего не сказано, что программа при выходе и функции освобождает память дин. массивов, а только при завершении программы.
Склоняюсь к тому, что где-то утечка памяти происходит.
Вроде переназначение заданий между агентами в локальной сети есть, но как то не до конца сделано ((
На одном из агентов 35 заданий осталось, при этом 6 агентов бездействуют. А если тест по реальным тикам и за большой период, то это очень долго 35 заданий одним агентом вычислять.
Исправьте пожалуйста.
Сбалансировали раздачу заданий, после вчерашних 3-х обновлений, сегодня - идеально! Спасибо)