OpenCL: внутренние тесты реализации в MQL5 - страница 11

 
ilovebtc:

Сейчас OpenCL задействуется только если в самой расчетной задаче явным образом используются расчеты на GPU. А это не каждому разработчику по плечу.

Мы работаем над тем, чтобы часть тестера самостоятельно использовала OpenCL для внутренних расчетов (например, в генерации тиков) - это даст ускорение некоторым процессам тестирования.

 
Renat:

Эта утилита тоже берет данные из драйвера. То есть, если показала 1.0 - значит так и есть.

Но драйвера надо в любом случае обновлять. Старые версии драйверов умудряются подвисать на безобидных операциях в OpenCL (мы уже сталкивались с этим).

Вот ещё одна утилита, взята из OpenCL SDK  http://developer.nvidia.com/opencl-sdk-code-samples

Определяет что установлено, что включено в аппаратной части. Я качал 32-битную версию. результаты выводятся в лог

OpenCL | NVIDIA Developer Zone
OpenCL | NVIDIA Developer Zone
  • developer.nvidia.com
OpenCL™ (Open Computing Language) is a low-level API for heterogeneous computing that runs on CUDA-powered GPUs. Using the OpenCL API, developers can launch compute kernels written using a limited subset of the C programming language on a GPU. NVIDIA OpenCL SDK Code Samples OpenCL Multi Threads This sample shows the implementation of...
Файлы:
 
Renat:  2012.01.30 18:42 

По OpenCL уже много материалов в сети.

Можно начать отсюда:

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

Верхняя ссылка ведёт туда же куда и нижняя - на Хабр.  Поправьте, плиз. Там должон быть http://OpenCL.ru
OpenCL
  • opencl.ru
В статье рассматриваются основные принципы дизайна OpenCL согласно стандарту версии 1.1. Не вдаваясь в излишние на данном уровне изложения подробности описаны 4 модели, на которых держится стандарт: модель платформы, модель исполнения, модель памяти и модель программирования. В статье не приведено ни единой строчки программного кода, так как...
 
Renat:

Эта утилита тоже берет данные из драйвера. То есть, если показала 1.0 - значит так и есть.

Но драйвера надо в любом случае обновлять. Старые версии драйверов умудряются подвисать на безобидных операциях в OpenCL (мы уже сталкивались с этим).

Переустановил драйвера для видеокарты (GeForce 9600M GT) на своём ноутбуке. Последняя версия драйверов для этой карты с WHQL сертификацией 197.16. Поддержка OpenCL 1.0 была включена для этой серии видеокарт в предыдущей версии драйвера 195.62. К сожалению запуск скрипта представленного на первой странице завершается неудачей.

Проводился ли тест на корректность работы OpenCL 1.0 на какой-нибудь "старой" карте?

NVIDIA DRIVERS 197.16WHQL
  • www.nvidia.ru
Этот эталонный драйвер предоставляется в рамках программы по поддержке драйверов для ноутбуков NVIDIA Verde и поддерживается некоторыми графическими процессорами для ноутбуков от NVIDIA. Однако, пожалуйста, имейте в виду, что производители аппаратного обеспечения для ноутбуков (OEM) предлагают сертифицированные драйверы для вашего оборудования...
 
Покажите кто-нибудь видео, как это в режиме реального времени выглядит в терминале (пример в начале ветки), а то я не видел этого никогда. :) Рисунок появляется сразу, постепенно, быстро, насколько быстро и т.д. :)
 

tol64: 

Покажите кто-нибудь видео, как это в режиме реального времени выглядит в терминале (пример в начале ветки), а то я не видел этого никогда. :) Рисунок появляется сразу, постепенно, быстро, насколько быстро и т.д. :)

Вот видео. Рядом с картинкой - состояние видеокарты (загрузка, температура, скорость вентиляторов).

Лучше смотреть в 720 качестве - красивее.  Ну а в MT5 - еще лучше...

http://youtu.be/nnJYHU9g1sY
GPU1.mp4
GPU1.mp4
  • youtu.be
Работа OpenCl в MT5 (MQL5)
 
WChas:

Вот видео. Рядом с картинкой - состояние видеокарты (загрузка, температура, скорость вентиляторов).

Лучше смотреть в 720 качестве - красивее.  Ну а в MT5 - еще лучше...

http://youtu.be/nnJYHU9g1sY

 

Спасибо. Классно. Жаль, что у меня это не работает. Неужели придёться новый ноутбук покупать... :)
 
tol64:

Переустановил драйвера для видеокарты (GeForce 9600M GT) на своём ноутбуке. Последняя версия драйверов для этой карты с WHQL сертификацией 197.16. Поддержка OpenCL 1.0 была включена для этой серии видеокарт в предыдущей версии драйвера 195.62. К сожалению запуск скрипта представленного на первой странице завершается неудачей.

Проводился ли тест на корректность работы OpenCL 1.0 на какой-нибудь "старой" карте?

У меня на старенькой GeForce 8500 GT работает тест.


 
joo:

У меня на старенькой GeForce 8500 GT работает тест.

Спасибо за информацию. Я вижу у Вас драйвер 285.62. Это последний драйвер и у Вас стационарный компьютер. Значит на данный момент пока можно сделать вывод, что серия видеокарт именно для ноутбуков не поддерживает эту технологию даже, если это заявлено в документации. Можно в принципе попробовать напролом поставить последний драйвер, даже если заявлено, что он не поддерживается моей видеокартой (GeForce 9600M GT). Может получится... :)
 

В очередной версии при старте терминала показываются все найденные OpenCL устройства:

2012.02.07 21:28:58     Terminal        CPU: GenuineIntel  Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz with OpenCL 1.1 (8 cores, 3392 MHz, 16366 Mb, version 2.0)
2012.02.07 21:28:58     Terminal        GPU: Advanced Micro Devices, Inc. Redwood with OpenCL 1.1 (5 cores, 775 MHz, 1024 Mb, version CAL 1.4.1664 (VM))
2012.02.07 21:28:58     Terminal        MetaTrader 5 x64 build 583 started (MetaQuotes Software Corp.)

Это позволит пользователям легче видеть доступные возможности.

Например, в отчете выше видно 2 устройства, одно из которых реализовано на CPU. Это "софтверное" устройство встает вместе с драйверами Catalist от AMD, позволяя запускать OpenCL расчеты даже без GPU. В результате на компьютере с 24 ядрами и нативной double математикой можно получить приличную скорость, автоматически используя все ядра.

А вот NVIDIA не ставит драйвер софтверного исполнения на CPU и показывает только одно:

2012.02.07 15:41:05     Terminal        GPU: NVIDIA Corporation GeForce 9600 GT with OpenCL 1.0 (8 cores, 1500 MHz, 512 Mb, version 290.53)
Причина обращения: