OpenCL: internal implementation tests in MQL5 - page 43

 
Mathemat:
And rebooted. Same thing: OpenCL-Z doesn't see the CPU as a device. Doesn't see anything at all.
Not convincing. Run an OpenCL script or something. OpenCL-Z is not a criterion of truth.
 
MetaDriver: Not convincing. Run an OpenCL script of some sort. OpenCL-Z is not a criterion of truth.

Yes I tried, MT5 doesn't even have such a line about OpenCL on startup. There used to be, and it was a guarantee of OpenCL code execution.

fyords : I am using Your Uninstaller! PRO to clean registry as well.

And if you try deleting kernel processor in device manager, then rebooting, Windows will put in new CPU drivers, maybe OpenCL will pick up.

I'll try it as a last resort. I don't like any software that goes through registry.

Oh, fresh idea! How do you remove kernels from the dispatcher?

joo: Go to safe mode and try to manually remove the branches in the registry with any mention of OpenCL. Then go back to normal mode and install the driver again.

Hehe, they're already gone...

P.S. It's finally up.

 
Mathemat:
...

Oh, fresh idea! And how do I uninstall cores from the manager?

...

As usual right click->uninstall on the kernel, then it will ask you to reboot - no, all kernels need to be uninstalled and then reboot

Hooray comrades !!! :)

 
fyords: As usual right click on kernel->uninstall, then it will ask to reboot - no, all kernels should be uninstalled and then reboot

Where is this kernel in manager - what process?

Yes, I got it. But it did not come to that. How I managed to delete everything completely I still don't understand. Probably because I uninstalled AMD APP SDK not from Windows, but with AMD installer itself...

 
Mathemat:
And where is this kernel in Device Manager - which process?
In Device Manager (on My Computer right mouse->Management->Device Manager)
 

Running _Tast_Mand. Well I have a record time (with a buffer of 480):

2012.03.22 01:31:21    Tast_Mand_ (EURUSD,H1)    54741 msec

Increasing the buffer does not lead to any drops. The stone gets a little warm and still eats 20 watts, although both cores are at 100%.

 

Mathemat:

... It still eats 20 watts...

If I'm not mistaken, you have a Pentium G840 @ 2.8 GHz. Since when does it eat 20 watts? Isn't it 65 watts?
 
fyords: If I'm not mistaken, you have a Pentium G840 @ 2.8 GHz. So since when does it eat 20 watts? Isn't it 65 watts?

Yes, that's right. The maximum I got out of it was about 40 watts - on CPUBurn or LinPack.

Intel assigns TDP as the power that will dissipate in the worst case scenario. I've yet to see it ever gobble up more than 25 watts on normal applications. And now the terminal has taken almost 100% and the stone is slowly warming up (max core temps are 54 and 57) and doing the task with a 48000 buffer.

2 joo: Andrei, do you think this code is equivalent to yours or not?

"__kernel void MFractal(                                    \r\n"
"                       __global int *out                   \r\n"
"                      )                                    \r\n"
"  {                                                        \r\n"
"   int i = get_global_id(0);                               \r\n"
"   for(int u=0;u<100000000;u++)                            \r\n"
"   {                                                       \r\n"
"    out[i]+=u;                                             \r\n"
"    bool b=(out[i]<=10000);                                \r\n"
"    out[i]*=(int)b;                                        \r\n"
"   }                                                       \r\n"
"   out[i]+= i;                                             \r\n"
"  }                                                        \r\n";
 
Mathemat:

2 joo: Andrei, do you think this code is equivalent to yours or not?

It looks like yes.

Not sure, because I try not to use tricky constructions (hard to perceive by eye), but probably for nothing, as it may speed up the code.

Your code should probably be slower because the b variable is redeclared at each loop iteration.

 
joo: Your code should probably be slower, because the b variable is redeclared at each iteration of the loop.

Yes, it is slower - by 20%.

I tried to put the declaration outside the loop. It took a bit less time, but still managed to go slower than before. It's strange, we've got rid of if...