Влияние железа на производительность МТ4

 

Добрый день, уважаемые знатоки.

Нужно иметь 20 одновременно работающих МТ4.

Пытаюсь понять, сколько нужно ресурсов, чтобы их хватило.


Имеет ли значение количество ядер в случае с МТ4?

Имеет ли смысл брать SSD /NVMe ?


Памагити, в поиске инфы на просторах интернета не преуспел.

 

Для одного МТ количество ядер не имеет значения. Имеет значение только частота ядра. Ну и памяти чтобы было не менее 3Гб (2Гб стандартно доступных для 32-хразрядных приложений + 1Гб каким-то образом умеет адресовать сам МТ).

Если МТ будет более одного, то, по идее, ОС сможет повесить каждый из них на свое ядро (не проверял, но по логике так должно быть). По памяти же - 3Гб х количество МТ.

 

https://www.mql5.com/ru/forum/118388#comment_3143449

было 22 терминала, расход памяти зависит от самого советника и свойств графика (количество баров)

по моему кто то и в этом году упоминал число 22 терминала, но могу ошибаться

Ihor Herasko:

 (2Гб стандартно доступных для 32-хразрядных приложений + 1Гб каким-то образом умеет адресовать сам МТ).

была какая то опция для линкера , чтобы адресное пространство до 3-х Гб для 32-х разрядного приложения увеличить, гуглить нужно, не помню 

Ihor Herasko:

 По памяти же - 3Гб х количество МТ.

памяти меньше нужно, это 3Гб адресное пространство, а физическая память сколько приложение запрашивает у ОС, плюс часть физической памяти ОС освобождает путем сброса в файл подкачки


ЗЫ: а зачем топикстартеру 20 терминалов? 20 советников могут и на одном терминале работать, или нужно 20 торговых счетов подключать ?

 
Igor Makanu:

памяти меньше нужно, это 3Гб адресное пространство, а физическая память сколько приложение запрашивает у ОС, плюс часть физической памяти ОС освобождает путем сброса в файл подкачки

Если экономить на памяти, то это выход. Но если нужна производительность, то файл подкачки приведет к дополнительным тормозам.

 
NVMe обязательно!
 

не проверял, но скорее всего будет работать без проблем так:

устанавливаем виртуальную машину, на нее Вин7 + десяток терминалов, клонируем виртуальную машину = 2 виртуалки и в общей сложности 20 терминалов = профит


ставил летом Oracle VM VirtualBox на i3 с 8 Гб памяти, работал в VS2017 в виртуалке, даже не сказал бы, что особо, что то тормозило

чистая установка Вин7, если даже не чистить диск и ничего не удалять менее 10Гб диска нужно

единственное, что нужно для такого "фокуса" - нужно оперативки не жалеть, покупал пару недель назад планку 8Гб DDR3 что то около 1300 рублей, для апгрейда совсем не значительная сумма, имхо

 
Ihor Herasko:


Если МТ будет более одного, то, по идее, ОС сможет повесить каждый из них на свое ядро (не проверял, но по логике так должно быть)
Интересно, а как проверить можно?
 
Igor Makanu:

ЗЫ: а зачем топикстартеру 20 терминалов? 20 советников могут и на одном терминале работать, или нужно 20 торговых счетов подключать ?

нужно 20 счетов. При этом важна скорость работы, т.к. советник пипсует. Выходит задача непростая.

Igor Makanu:


устанавливаем виртуальную машину, на нее Вин7 + десяток терминалов, клонируем виртуальную машину = 2 виртуалки и в общей сложности 20 терминалов = профит

Спасибо, а почему именно Вин7? И зачем клонировать ВМ?
Igor Makanu:

единственное, что нужно для такого "фокуса" - нужно оперативки не жалеть, покупал пару недель назад планку 8Гб DDR3 что то около 1300 рублей, для апгрейда совсем не значительная сумма, имхо

Оперативки не жалко) я арендую VPS, там можно этого добра добавить сколько угодно. И памяти, и ядер, хоть 20 штук. Главное, чтобы в этом был смысл. Если с памятью все понятно, то с ядрами пока не разобрался.
 
Dimon1000000:

.... Если с памятью все понятно, то с ядрами пока не разобрался.

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

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

 
Dimon1000000:
Интересно, а как проверить можно?

Запустить много терминалов и посмотреть в диспетчере задач (вкладка "Быстродействие") загрузку по ядрам. Если загрузка неравномерная (одно ядро занято под завязку, а остальные простаивают), то "не получилось".

 

вопрос на который не может быть ответа, т.к. терминал - это оболочка, в которой вы запускаете что-то своё. требования для запуска терминала очень низкие, даже по стандартам 10ти летней давности. но вот эту оболочку вы сами заполняете, поэтому никто не скажет вам наперёд сколько чего нужно. один эксперт на одном графике может откушать ресурсов больше, чем все 20 относительно "пустых" терминалов вместе взятые!

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