Используете ли вы возможности OpenCL для ускорения расчетов? (и обсуждение применения в торговле) - страница 2

 

Интересно, если пример Рената с морем реализовать чисто на канвасе, а потом сравнить. Какой будет выигрыш? Я у себя на ноутбуке попробовал этот пример и скорость меня совсем не впечатлила (не как на видео Рената, а где то 2-3 кадра в секунду), наверное совсем слабая видеокарта. В целом рассуждаю как Alexey. Интерес есть, но пока отложил на полку. Многие вещи непонятны. Я так понимаю, на маркет программы, использующие эту технологию не выложить, т.к. не у всех OpenCL установлен. Или я ошибаюсь?

 
Nikolai Semko:

Интересно, если пример Рената с морем реализовать чисто на канвасе, а потом сравнить. Какой будет выигрыш? Я у себя на ноутбуке попробовал этот пример и скорость меня совсем не впечатлила (не как на видео Рената, а где то 2-3 кадра в секунду), наверное совсем слабая видеокарта. В целом рассуждаю как Alexey. Интерес есть, но пока отложил на полку. Многие вещи непонятны. Я так понимаю, на маркет программы, использующие эту технологию не выложить, т.к. не у всех OpenCL установлен. Или я ошибаюсь?


Я когда-то достаточно много занимался установкой OpenCL в основном под карты AMD под Win и Linux в целях майнинга и эта задача не всегда тривиальна. Поэтому думаю, что да, для графических карт установлено не у всех и не у всех можно установить. Однако процессоры Intel Core обычно поддерживают технологию OpenCL, поэтому простейшие эксперименты доступны почти всем.

 
Nikolai Semko:

Интересно, если пример Рената с морем реализовать чисто на канвасе, а потом сравнить. Какой будет выигрыш? Я у себя на ноутбуке попробовал этот пример и скорость меня совсем не впечатлила (не как на видео Рената, а где то 2-3 кадра в секунду), наверное совсем слабая видеокарта. В целом рассуждаю как Alexey. Интерес есть, но пока отложил на полку. Многие вещи непонятны. Я так понимаю, на маркет программы, использующие эту технологию не выложить, т.к. не у всех OpenCL установлен. Или я ошибаюсь?

На канвасе в одном потоке такое повторите в режиме 1 кадр за 20 секунд. Опенсл можете запустить и на cpu, где задачи будут параллелиться в 4-8-n потоков, а не в сотни и тысячи.

Для серьезных расчетов ноутбучные карты не подходят вообще.

 
Renat Fatkhullin:

На канвасе в одном потоке такое повторите в режиме 1 кадр за 20 секунд. Опенсл можете запустить и на cpu, где задачи будут параллелиться в 4-8-n потоков, а не в сотни и тысячи.

Для серьезных расчетов ноутбучные карты не подходят вообще.


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

По мере развития задач будет задействовано более серьёзное оборудование.

 
Renat Fatkhullin:

Для серьезных расчетов ноутбучные карты не подходят вообще.

Ну для серьёзных возможно. А вообще для работы с OpenCL встроенные ноутбучные подходят, к примеру такая: Intel UHD Graphics 620 ?
Собираюсь менять бук и рассматриваю именно встроенные карты. Вот то что хочу взять: https://market.yandex.ru/product/1809203702/spec?track=tabs - будет там OpenCL или нет ?

 

Шаг 1. Первые эксперименты. 

Пробуем запускать программы из комплекта поставки МТ5:

Wavelet.mq5

Wavelet

Видно, что видеоподсистема довольно медленная, но нас пока интересует только принципиальная работоспособность, а с этим тут все нормально.

MatrixMult.mq5

MatrixMult.mq5

FFT.mq5

FFT.mq5

BitonicSort.mq5

BitonicSort

Пример из статьи  КАК УСТАНОВИТЬ И ИСПОЛЬЗОВАТЬ В РАСЧЕТАХ OPENCL https://www.mql5.com/ru/articles/690

opencl_sample.mq5

opencl_sample

 
Yury Kirillov:

пост редактируется...

Шаг 1. Первые эксперименты. 

Пробуем запускать программы из комплекта поставки МТ5:

Wavelet.mq5

Видно, что видеоподсистема довольно, но нас пока интересует только принципиальная работоспособность, а с этим тут все нормально.

Рисовать море и огонь это конечно круто, без обид. Но предлагаю ближе к практике торговли всё же.
Понятно что весь прирост скорости мы получим из за распараллеливания задач (или я ошибаюсь ?). Хочется услышать о тех торговых алгоритмах где это действительно актуально, ну или хотя бы о тех шагах в целом алгоритме где можно и нужно применить OpenCL. Интересует именно практика, а не теория.
 
Alexey Oreshkin:
Рисовать море и огонь это конечно круто, без обид. Но предлагаю ближе к практике торговли всё же.
Понятно что весь прирост скорости мы получим из за распараллеливания задач (или я ошибаюсь ?). Хочется услышать о тех торговых алгоритмах где это действительно актуально, ну или хотя бы о тех шагах в целом алгоритме где можно и нужно применить OpenCL. Интересует именно практика, а не теория.

Уважаемый, дойдём и до практики. Не всё сразу. Проявите терпение. Это же не статья готовая - все в текущем времени, всё в развитии.

Тем временем часть экспериментов будет производиться на следующей конфигурации:

к2

К сожелению данная графическая подсистема не работает с программами из примеров:

err5102

Временно для экспериментов установлена NVIDIA GeForce 9600 GT.

gf

С ней некоторые примеры работают.



 
Renat Fatkhullin:

На канвасе в одном потоке такое повторите в режиме 1 кадр за 20 секунд. Опенсл можете запустить и на cpu, где задачи будут параллелиться в 4-8-n потоков, а не в сотни и тысячи.

Для серьезных расчетов ноутбучные карты не подходят вообще.


Вне всякого сомнения, возможность использовать OpenCL в среде MQL5 - это щедрый подарок программистам со стороны Вашей команды. Подавляющее большинство, и я в их числе, явно недооценивают открывающиеся перспективы использования этого инструмента. И складывается ощущение, что никто не знает, что делать с обрушившемся на них счастьем. Возможно причина все та же, как и с переходом на МТ5, это, цитирую Ваши слова, "массовый пофигизм и иррациональная лень". А, возможно, нужно просто больше времени, чтобы въехать в тему. И то, что делает Юрий создав эту ветку и пытаясь ее развить - это очень правильно. В любом случае, кто начнет юзать данную фичу в первых рядах, будет иметь конкурентное преимущество. Тема сложная и требует больших временных затрат, но лично я присоединяюсь к тем, кто хочет разобраться и научиться этому скилзу. Нужно больше простых примеров с OpenCL, имеющий практическую ценность в нашем направлении программирования. 

 
Nikolai Semko:

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

О каком конкурентном преимуществе речь, если это работает только в МТ5, для которого брокеры предлагают худшие условия относительно МТ4?

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