OpenCL: internal implementation tests in MQL5 - page 11

 
ilovebtc:

Currently, OpenCL only comes into play if the calculation task itself explicitly uses GPU calculations. And this is something not every developer can do.

We are working on getting part of the tester to independently use OpenCL for internal calculations (e.g., in tick generation) - this will speed up some testing processes.

 
Renat:

This utility also takes data from the driver. In other words, if it shows 1.0, it must be the same.

But the drivers need to be updated in any case. Older drivers manage to get hung up during innocuous OpenCL operations (we have already experienced this).

Here is another utility taken from OpenCL SDK http://developer.nvidia.com/opencl-sdk-code-samples

Determines what is installed, what is enabled in the hardware. I downloaded the 32 bit version. the results are displayed in the log

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...
Files:
 
Renat: 2012.01.30 18:42

There are already a lot of materials on OpenCL on the web.

You can start from here:

All OpenCL functions are used identically in MQL5, so there won't be any problems with porting descriptions of other articles to MQL5 soil.

The upper link goes to the same place as the lower one, on Habr. Please correct it. It should be http://OpenCL.ru
OpenCL
  • opencl.ru
В статье рассматриваются основные принципы дизайна OpenCL согласно стандарту версии 1.1. Не вдаваясь в излишние на данном уровне изложения подробности описаны 4 модели, на которых держится стандарт: модель платформы, модель исполнения, модель памяти и модель программирования. В статье не приведено ни единой строчки программного кода, так как...
 
Renat:

This utility also takes data from the driver. That is, if it shows 1.0, then it is.

But the drivers have to be updated anyway. Older drivers manage to get hung up on innocuous OpenCL operations (we have encountered this before).

Re-installed the drivers for the video card(GeForce 9600M GT) on my laptop. The latest version of the drivers for this card with WHQL certification is 197.16. OpenCL 1.0 support was enabled for this series of cards in the previous driver version 195.62. Unfortunately the script on the first page fails.

Have you tested whether OpenCL 1.0 worked correctly on an "old" card?

NVIDIA DRIVERS 197.16WHQL
  • www.nvidia.ru
Этот эталонный драйвер предоставляется в рамках программы по поддержке драйверов для ноутбуков NVIDIA Verde и поддерживается некоторыми графическими процессорами для ноутбуков от NVIDIA. Однако, пожалуйста, имейте в виду, что производители аппаратного обеспечения для ноутбуков (OEM) предлагают сертифицированные драйверы для вашего оборудования...
 
Show someone a video of what this looks like in real time in the terminal (example at the beginning of the thread), because I've never seen it. :) Drawing appears immediately, gradually, quickly, how fast, etc. :)
 

tol64: 

Show me someone video, how it looks in real time in terminal (example at the beginning of branch), because I've never seen it. :) Drawing appears immediately, gradually, how fast, how fast, etc. :)

Here is the video. Next to the picture is the state of the video card (load, temperature, fan speed).

It's better to watch it in 720 quality - it's more beautiful. And in MT5 it's even better...

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

Here is the video. Next to the picture is the state of the video card (load, temperature, fan speed).

It's better to watch it in 720 quality - it's more beautiful. And in MT5 it's even better...

http://youtu.be/nnJYHU9g1sY

Thank you. That's cool. Too bad it doesn't work for me. I'll have to buy a new laptop... :)
 
tol64:

Re-installed the drivers for the graphics card(GeForce 9600M GT) on my laptop. The latest version of the drivers for this card with WHQL certification is 197.16. OpenCL 1.0 support has been included for this series of cards in the previous driver version 195.62. Unfortunately the script on the first page fails.

Has OpenCL 1.0 been tested on any of the "older" cards?

My old GeForce 8500 GT is running the test.


 
joo:

I have an older GeForce 8500 GT running the test.

Thank you for the information. I see you have driver 285.62, that is the latest driver and you have a desktop computer. So for now we can conclude that the video card series specifically for laptops does not support this technology even if it is stated in the documentation. You could basically try to push through the latest driver even though it is declared not supported by my videocard(GeForce 9600M GT). It might work... :)
 

The next version shows all OpenCL devices found on startup of the terminal:

2012.02.07 21:28:58     Terminal        CPU: GenuineIntel  Intel(R) Core(TM) i7-2600 CPU @ 3.40 GHz 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.)

This will make it easier for users to see the available features.

For example, in the report above you can see 2 devices, one of which is implemented on CPU. This "software" device is inserted together with AMD's Catalist drivers allowing to run OpenCL calculations even without a GPU. As a result, a computer with 24 cores and native double maths can achieve decent speed by automatically using all cores.

NVIDIA, on the other hand, does not put a software execution driver on the CPU and only shows one:

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)