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

Sceptic Philozoff
17690
Sceptic Philozoff  
joo: И дело скорее всего не в памяти, а в самом механизме распараллеливания задач в драйвере OpenCL. Нужно экспериментировать с кратными количеству мух значениями.
А я если я не знаю, сколько мух у меня (Intel HD Graphics 1000)? То ли 6, то ли значительно больше... Если их 6, то откуда 25-кратный прирост в скорости выполнения?
Vladimir Gomonov
8289
Vladimir Gomonov  
Mathemat:
А я если я не знаю, сколько мух у меня (Intel HD Graphics 1000)? То ли 6, то ли значительно больше... Если их 6, то откуда 25-кратный прирост в скорости выполнения?
x25-прирост - это от моей гениальности, ну немного от векторных операций. Скалярное произведение векторов считается на ГПУ очень быстро.
Sceptic Philozoff
17690
Sceptic Philozoff  
MetaDriver: x25-прирост - это от моей гениальности, ну немного от векторных операций. Скалярное произведение векторов считается на ГПУ очень быстро.

Не забываем, что эти 6 пчелок работают на частоте 1.1 GHz, которая в 2.5 раза ниже частоты камня. Т.е. это 2.5 условные пчелы, работающие на частоте камня. Но откуда 25х?

Ilyas
1400
Ilyas  
Mathemat:

Не забываем, что эти 6 пчелок работают на частоте 1.1 GHz, которая в 2.5 раза ниже частоты камня. Т.е. это 2.5 условные пчелы, работающие на частоте камня. Но откуда 25х?

SSE обрабатывает 4 float за раз * 2 ядра + оптимизации компилятора.
Sceptic Philozoff
17690
Sceptic Philozoff  
mql5: SSE обрабатывает 4 float за раз * 2 ядра + оптимизации компилятора.

Так все-таки вся работа идет на ядрах CPU - а не на пчелках встроенного GPU?

И второе: если не на пчелках, то как заставить код выполняться именно на них?

P.S. AMD, чай, не просто так заварила эту кашу с мощными интегрированными GPU: в A8-3850 пчел аж 400...

P.P.S. Ну вот, появился представитель разработчиков и снова убежал :(

Sergey
819
Sergey  
2012.03.16 23:34:11 Terminal GPU: NVIDIA Corporation GeForce GTX 590 with OpenCL 1.1 (16 units, 1225 MHz, 1536 Mb, version 285.62)
2012.03.16 23:34:11 Terminal GPU: NVIDIA Corporation GeForce GTX 590 with OpenCL 1.1 (16 units, 1225 MHz, 1536 Mb, version 285.62)
^^^ как протестировать?
Sceptic Philozoff
17690
Sceptic Philozoff  
casinonsk: ^^^ как протестировать?
Запустите как скрипт любой из кодов, выложенных MetaDriver'ом.
Sergey
819
Sergey  
Mathemat:
Запустите как скрипт любой из кодов, выложенных MetaDriver'ом.

Запустил  OpenCL

1 ядро загрузилось в среднем процентов на 50%

2 ядро вообще не использовалось. 

Andrey Dik
13321
Andrey Dik  
casinonsk:
2012.03.16 23:34:11 Terminal GPU: NVIDIA Corporation GeForce GTX 590 with OpenCL 1.1 (16 units, 1225 MHz, 1536 Mb, version 285.62)
2012.03.16 23:34:11 Terminal GPU: NVIDIA Corporation GeForce GTX 590 with OpenCL 1.1 (16 units, 1225 MHz, 1536 Mb, version 285.62)
^^^ как протестировать?

Двухбошковые GPU пожаловали. Очень интересно. А CPU какой?

Запускайте скрипт в прикрепе.

Файлы:
Ilyas
1400
Ilyas  
Mathemat:

Так все-таки вся работа идет на ядрах CPU - а не на пчелках встроенного GPU?

И второе: если не на пчелках, то как заставить код выполняться именно на них?

P.S. AMD, чай, не просто так заварила эту кашу с мощными интегрированными GPU: в A8-3850 пчел аж 400...

P.P.S. Ну вот, появился представитель разработчиков и снова убежал :(

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