Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Несколько прогонов советников с разными параметрами - разве не векторная операция? Параллелизация прогонов напрашивается сама собой.
Всё правильно, MT5 как раз распаралеливает оптимизацию по всем логическим ядрам процессора, и тестирует сразу по нескольким разным комбинациям параметров одновременно. У кого процессор Intel core i7 или старшие модели core i5 - может одновременно тестировать сразу по 8 комбинаций параметров. Но видеокарта не способна контролировать весь процесс тестирования советника, у неё нет таких возможностей, такое распаралеливание возможно только на ядрах CPU.
MT4 например так не может, он всегда тестирует все комбинации параметров по очереди.
MT4 например так не может, он всегда тестирует все комбинации параметров по очереди.
Очень спорное утверждение. При оптимизации в МТ4 все ядра ЦП заняты. Спрашивается, чем они заняты, если не параллельными прогонами?
Всё правильно, MT5 как раз распаралеливает оптимизацию по всем логическим ядрам процессора, и тестирует сразу по нескольким разным комбинациям параметров одновременно. У кого процессор Intel core i7 или старшие модели core i5 - может одновременно тестировать сразу по 8 комбинаций параметров. Но видеокарта не способна контролировать весь процесс тестирования советника, у неё нет таких возможностей, такое распаралеливание возможно только на ядрах CPU.
Речь идет именно о аппаратной неспособности организовать распараллеливание, если да, то о каких именно?
Это не векторизация, а параллельное выполнение потоков Windows под ЦП x64. У карт своя особая архитектура, отличная от x64. Проще тогда уж это использовать, архитектуры близки. http://www.intel.ru/content/www/ru/ru/processors/xeon/xeon-phi-detail.html
Т.е. запускать параллельную обработку нескольких задач на GPU нельзя?
В терминологии Windows задачей называют программу, в которой может быть несколько потоков. Наверное, все же потоки имелись в виду?
Разумеется можно, но напрямую перенести код x86/64 на карту нельзя, вы же сами понимаете. Кстати, тут писали про OpenCL, это работает в оптимизаторе МТ5? Я проверить не могу, карта слабая - не игрок.
Разумеется можно, но напрямую перенести код x86/64 на карту нельзя, вы же сами понимаете. Кстати, тут писали про OpenCL, это работает в оптимизаторе МТ5? Я проверить не могу, карта слабая - не игрок.
Можнож и на cpu на ядра распределить, тоже скорость повысится, не обязательно gpu
Ну это MQ давно сделали, тут же карты обсуждали
mt4 не использует больше одного потока, вы наверное с mt5 путаете. Или ваш советник использует dll которая в свою очередь использует параллельные вычисления на всех ядрах. Иногда специально запускаю сразу несколько mt4 терминалов и каждому даю разные параметры для оптимизации, чтоб ускорить процесс.
Видеокарты не поддерживают инструкции intel процессоров, они просто физически неспособны выполнять такой код. Их процессоры строго заточены под только математические операции. А советнику для работы нужно ещё много чего что доступно только у CPU, регистры и стэк например. Код советника аппаратно не исполняем на процессоре gpu.
GPU может параллельно выполнять одинаковый код на большом объёме данных. Например увеличить на 1 значения сразу во всех ячейках большой таблицы. Или перемножить значения соответствующих ячеек двух таблиц. Если нужно параллельно выполнить совершенно разные операции - то gpu уже не поможет. На крайняк можно по каким-то логическим условиям в одних случаях например делить, а в других случаях умножать числа, но весь этот код всё равно должен быть внутри одной функции, которая должна получить ещё и ссылки на все исходные массивы данных.
mt4 не использует больше одного потока, вы наверное с mt5 путаете. Или ваш советник использует dll которая в свою очередь использует параллельные вычисления на всех ядрах. Иногда специально запускаю сразу несколько mt4 терминалов и каждому даю разные параметры для оптимизации, чтоб ускорить процесс.
Видеокарты не поддерживают инструкции intel процессоров, они просто физически неспособны выполнять такой код. Их процессоры строго заточены под только математические операции. А советнику для работы нужно ещё много чего что доступно только у CPU, регистры и стэк например. Код советника аппаратно не исполняем на процессоре gpu.
GPU может параллельно выполнять одинаковый код на большом объёме данных. Например увеличить на 1 значения сразу во всех ячейках большой таблицы. Или перемножить значения соответствующих ячеек двух таблиц. Если нужно параллельно выполнить совершенно разные операции - то gpu уже не поможет. На крайняк можно по каким-то логическим условиям в одних случаях например делить, а в других случаях умножать числа, но весь этот код всё равно должен быть внутри одной функции, которая должна получить ещё и ссылки на все исходные массивы данных.