Ускорение оптимизации в MT5 - варианты решений - страница 7

 
Edgar Akhmadeev #:

Решил потестить у себя.

Драйвер ImDisk. RAM самая дешёвая Samsumg 2*8Gb, не разогнана,

Сделал, наконец, и я, криворукий, у себя, как умные люди делают. ШОК! 

"До и после" отличаются от почти 5 до 10 крат в сравшении с моим лучшим SSD м.2!!!

ССД м.2 RAM

При этом используется то, что раньше гуляло + экономится ресурс SSD!


Осталось разобраться что куда как сохранять при опте, ну и пробовать саму опту. Уверен - хуже не будет!

Мужики, большое спасибо. ИМХО вы подсказали очень хороший способ гораздо более эффективного использования компа!

 

Заметил, что память используется всего на 21% (тест + всё обычное). Решил проверить что будет на файлах 4Гб - чуть хуже, но можно сказать в пределах погрешности, т.е. ОТЛИЧНО. 

При этом память использовалась уже на 35%, вот результат:

4 Гб

Т.к. я плохо в этом разбираюсь, решил на всякий случай проверить и на мелких (есть подозрение, что это основной режим опты - где ей брать файлы по 4 Гига?).

Тут мне трудно судить, но верхние две строчки впечатлили!

16 MiB


Странно, но общее использование памяти на мелких так и осталось 35%. По окончании теста она тоже не освободилась...

Ну да и ладно, запас остаётся хороший )

 

Я бы не стал ориентироваться на цифры скорости и % использования памяти. Я бы провёл эксперимент так:

1. Увеличил pagefile.sys до размера RAM. Если использую VRAM, прибавил бы её размер.

2. Оставил по 2 Гб на каждое [тестируемое?] ядро, остальное выделил под RAM-disk.

3. Нашёл и перенёс на RAM-disk оперативные файлы.

4. Сделал замер общего времени тестирования перебором, на несколько минут (?)

5. Повторил ровно такой же замер для другого объёма RAM (по 1, 0.5, 3, 4 Гб на ядро).

6. С выбранным размером оставляемой памяти провёл бы замеры, снижая размер pagefile.sys

Размер pagefile.sys в некоторых случаях очень влияет на скорость. Даже когда он заполняется на малый процент. Особенно при работе с VRAM.

А ещё я бы проверил, можно ли использовать pagefile.sys в RAM-диске. Но сомневаюсь, ведь при загрузке винды этот диск будет отсутствовать. Но можно попробовать задать pagefile.sys на двух дисках, на M.2 минимального размера (фейковый, лишь бы позволил загружаться), и в RAM-диске основной - не пропадёт ли эта настройка после загрузки винды и авто-монтирования RAM-диска?

При поиске самых оперативных файлов при тестировании можно использовать системный "Монитор ресурсов". На вкладке "Диск" в подокне "Работа диска" включить сортировку по "Всего". И наверху будут самые используемые файлы. Включая pagefile.sys.

 
Edgar Akhmadeev #:
Я бы провёл эксперимент так:

Для меня это слишком круто. К тому же надо будет исследовать не только в приложении к моей задаче, но и как это отразится на других процессах системы и программах.

У меня задача прикладная и даже на неё мне непросто выкроить время и собраться с духом. Так что вглыбь нырять пока не буду.

Первый этап выполнен - он меня впечатлил. Второй этап (имени fxsaber) еще не выполнен.

Если на третьем этапе (на тестах оптимизации) веселые картинки подтвердятся хотя бы на 25%, буду очень доволен, т.к. это будет означать увеличение скорости оптимизации в разы. Для меня это очень существенно, т.к. использую много параметров на большой истории (минимум 5 лет м1-м3).

Ну и сюда буду захаживать - я теперь знаю где живут толковые спецы по этому вопросу  )

 

Печалька, хотел как проще, получилось как всегда - убил время впустую.

Идея: разместить терминал на RAM-диске в надежде, что всё (в т.ч. чтение/запись) и будет делаться на этом диске. Таким образом чайнику в железе и всех этих командных строках удалось бы избежать использования незнакомой темы. НЕ УДАЛОСЬ.

Писал подробный отчет, но всё удалил, т.к. спецы и сами могут этот фокус повторить, а таким, как я, оно не нужно. Скажу лишь, что при таком размещении терминала скорость та же, стабильность работы тестера ухудшается. На первом прогоне так прям сильно, на втором он уже типа как привык, что ли?... 

Краткое резюме: если и удастся с помощью дополнительных ухищрений получить прирост скорости, то он точно будет зависеть не от того, где находится терминал. 

Поэтому вернул его на SSD и пошел разбираться с батниками... 

______________________

Попутно возник вопрос - почему здесь обсуждается использование GPU только в разрезе памяти, но совсем не обсуждается использование непосредственно процессора? При опте его использование от 0 до 2%. Если бы удалось подключить его хотя бы как одно дополнительное ядро - один дополнительный агент был бы не лишним. Может не так выражаюсь, во вложении картинка.

Файлы:
q91e.png  47 kb
 
Михалыч Трейдинг #:
Печалька, хотел как проще, получилось как всегда - убил время впустую.

Это правда. Мы вам всё рассказали, но...

Михалыч Трейдинг #:
Краткое резюме: если и удастся с помощью дополнительных ухищрений получить прирост скорости, то он точно будет зависеть не от того, где находится терминал.

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

 
Edgar Akhmadeev #:

Это правда. Мы вам всё рассказали, но...

Но... Пытаюсь идти по указанному вашими могучими пальцами пути и получаю... ожидаемое. Я ж в этом ноль! И уже нарвался на что бы вы думали? На нехватку памяти! Такие сообщения получены при запуске оптимизации от двух программ - сначала Опера, потом другая.

В батнике  fxsaber две буквы дисков, которые надо поменять видимо. Первый раз стартовал "как есть" - получилась задница на весь экран. Для второго раза поменял V на R (мой Рам-диск) - опта идет, но на Раме ничего не происходит и нужного эффекта похоже нет.

Короче, может кто-то из вас сделает грамотный батник для варианта, когда РАМ постоянно подключен, терминал на диске T, РАМ-диск R ?

PS: остановил ОПТу, т.к. по времени уже видно, что творю что-то тупоголовое. Видимо вторую букву надо менять, а может и еще что-то. Вот поэтому и пытался избежать этого шага. Ноль - он и в Африке ноль. Всё равно сделаю, но методом... совсем ненаучного тыка вслепую и даже не по приборам )))

Кстати, выше есть подобные вещи: " У себя нашел это тут и  пренес наРАМ диск:
C:\Windows\system32\config\systemprofile\AppData\Roaming\MetaQuotes\Terminal\Common\Files "

Ну не тупо же он перенес файлы? Это же ничего не даст! Надо объяснить терминалу куда он их должен писать?! Как?

 

Если не поможет никто - не судьба.

Удалось добиться, что на РАМ-диске создались папки логов + Темп + Тестер. Но МТ туда ничего не пишет. 

Кстати, выше ошибся - в батнике ТРИ буквы дисков. Вот это вообще... для меня загадка.

 

В батнике fxsaber-а я видел только 2 диска Y и Z. На Y он перенаправляет логи агентов и тут же прибивает диск Y, чтобы запись туда вообще не велась, хотя ИМХО подход спортный - бывали моменты, когда приходилось для диагностики ошибок именно по полным логам агентов ползать, так что они не бесполезны.

Я особо не вчитывался в ветку, так что на всякий случай напомню, что MT5 может быть под разными правами установлен, и тогда читает и пишет инфу в разные папки. В частности, Roaming-папки - для обычных пользователей, а из-под админа все будет писаться в папку самого МТ5. В зависимости от этого mklink-и и нужно создавать. Есть еще режим /portable, включенный/отключенный UAC, RDP и пр.