OpenCL: internal implementation tests in MQL5 - page 55

 

Installed Intel OpenCL runtime (following Support Team recommendation). The results are as follows:

2012.04.20 03:09:38    OpenCL    CPU: Intel(R) Corporation  Intel(R) Pentium(R) CPU G840 @ 2.80GHz with OpenCL 1.1 (2 units, 2800 MHz, 8040 Mb, version 1.1)

2012.04.20 03:58:47    ParallelTester_00-01x (EURUSD,H1)    CpuTime/GpuTime = 75.90064102564102
2012.04.20 03:58:47    ParallelTester_00-01x (EURUSD,H1)    Result on Cpu МахResult==0.97908 at 665 pass
2012.04.20 03:58:47    ParallelTester_00-01x (EURUSD,H1)    Соunt indicators = 16; Count history bars = 144000; Count pass = 1280
2012.04.20 03:58:47    ParallelTester_00-01x (EURUSD,H1)    CPU time = 23681 ms
2012.04.20 03:58:24    ParallelTester_00-01x (EURUSD,H1)    Result on Gpu МахResult==0.97908 at 665 pass
2012.04.20 03:58:24    ParallelTester_00-01x (EURUSD,H1)    Соunt indicators = 16; Count history bars = 144000; Count pass = 1280
2012.04.20 03:58:24    ParallelTester_00-01x (EURUSD,H1)    GPU time = 312 ms
2012.04.20 03:58:23    ParallelTester_00-01x (EURUSD,H1)    OpenCL init OK!
2012.04.20 03:58:23    ParallelTester_00-01x (EURUSD,H1)    CLGetInfoInteger() returned 1

The result on Intel native runtime is almost three times better than AMD APP SDK.

What I did: After I had installed Intel Runtime, I went into HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors and renamed IntelOpenCL64.dll into intelocl.dll.


P.S. I did the same on i3-2120 system without discrete graphics.

2012.04.20 04:44:26    Terminal    CPU: Intel(R) Corporation  Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz with OpenCL 1.1 (4 units, 3300 MHz, 8039 Mb, version 1.1)

2012.04.20 04:45:25    ParallelTester_00-01x (EURUSD,H1)    CpuTime/GpuTime = 109.6968085106383
2012.04.20 04:45:25    ParallelTester_00-01x (EURUSD,H1)    Result on Cpu МахResult==1.18579 at 919 pass
2012.04.20 04:45:25    ParallelTester_00-01x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 1280
2012.04.20 04:45:25    ParallelTester_00-01x (EURUSD,H1)    CPU time = 20623 ms
2012.04.20 04:45:04    ParallelTester_00-01x (EURUSD,H1)    Result on Gpu МахResult==1.18579 at 919 pass
2012.04.20 04:45:04    ParallelTester_00-01x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 1280
2012.04.20 04:45:04    ParallelTester_00-01x (EURUSD,H1)    GPU time = 188 ms
2012.04.20 04:45:04    ParallelTester_00-01x (EURUSD,H1)    OpenCL init OK!

The result is certainly better than on the G840, but not too much, about 40% at most. Hypertrading, i.e. competition for resources, is probably an influence. It's quite possible that on i5 the gain will be higher, somewhere around 140-150. I'm glad that everything works, though after playing tambourine games.

P.P.S. I forgot to say the most important thing for Intel users: If you already have AMD APP SDK, uninstall it correctly. The easiest and cleanest way is not to uninstall it in parts via Programs and Components menu, but just run Setup.exe installer of AMD APP SDK itself. It will offer you two options - either to uninstall or to install. Choose "uninstall" and it will be clean.

Then reboot the computer and install Intel runtime (it will suffice) or Intel OpenCL SDK. Here we will also fix registry and reboot again. That's all. From here on you can be happy with what you have managed to achieve. AMD is certainly great, but native runtime is still much faster.

 
Please, help! I have three OpenCL devices now.

There is no OpenCL driver from AMD in "Programs and Features" of Control Panel or in Your Uninstaller.

When trying to uninstall by running OpenCL.msi from AMD SDK, I get such a window:

I don't know what to do (I think that's what they're saying).

 
joo:
Please, help! I have three OpenCL devices now.

There is no OpenCL driver from AMD in "Programs and Features" of Control Panel or in Your Uninstaller.

When trying to uninstall by running OpenCL.msi from AMD SDK, I get the following window:

I don't know what to do (I think that's what they're saying).

Try cleaning registry with some tool like TuneUp. I use it all the time and haven't had any problems in the last 5 years.
 
tol64:
Maybe try a registry cleaner like TuneUp. I use it all the time and haven't had any problems in the last 5 years.
Cleaning is when you've deleted something. I can't even delete anything.
 
joo:
Cleaning is when something has been deleted. I can't even delete anything.
If it's not in the "Programs and Features" control panel or in Your Uninstaller, a registry cleaner might do the trick.
 
Mathemat:
...

The result on Intel "native" runtime is almost three times better than AMD APP SDK.

What I did: after installing Intel Runtime, I went to HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors and renamed IntelOpenCL64.dll to intelocl.dll.

...

P.P.S. I forgot to say the most important thing for Intel users: if you have AMD APP SDK already installed, uninstall it correctly. The easiest and cleanest way is not to uninstall it in parts via Programs and Components menu, but just run Setup.exe installer of AMD APP SDK itself. It will offer you two options - either to uninstall or to install. Choose "uninstall" and it will be clean.

Then reboot the computer and install Intel runtime (it will suffice) or Intel OpenCL SDK. Here we will also fix registry and reboot again. That's all. From here on you can be happy with what you have managed to achieve. AMD is certainly great, but native runtime is still much faster.

i3-2100, W7SP1 x64. No stone flower! ...

2012.04.20 11:10:23 Terminal OpenCL devices not found
2012.04.20 11:10:23 Terminal MetaTrader 5 x64 build 630 started (MetaQuotes Software Corp.)

 
joo:
People, help! I now have three OpenCL devices.

Can unnecessary OpenCL providers be removed from these branches

HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors
HKEY_LOCAL_MACHINE/SOFTWARE\Wow6432Node\Khronos\OpenCL\Vendors

 
Ashes:

i3-2100, W7SP1 x64. Stoneflower doesn't come out! ...

2012.04.20 11:10:23 Terminal OpenCL devices not found
2012.04.20 11:10:23 Terminal MetaTrader 5 x64 build 630 started (MetaQuotes Software Corp.)

Try to set the full path to intelocl.dll library (by default it is stored in "C:\Program Files (x86)\Intel\OpenCL SDK1.1\bin\")
 
mql5:

You can remove unnecessary OpenCL providers from these branches

HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors
HKEY_LOCAL_MACHINE/SOFTWARE\Wow6432Node\Khronos\OpenCL\Vendors

It worked, thank you!
 
mql5:
Try setting the full path to intelocl.dll library (by default it is placed in "C:\Program Files (x86)\Intel\OpenCL SDK\1.1\bin\")

Didn't help