You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Thank you very much!
Are your calculations in double? Then the result is particularly impressive.Good point. Indeed, in one place it was float instead of double:
To make it double, we need to correct it to
Also, you can get rid of the last line (analogous to XRGB macro) by applying uchar4 instead of uint for the *buf argument. Try it that way:
It's really impressive! Fps is 1.5 times higher than on shaders.
Thanks, the code works, no performance degradation, just moved the alpha channel to the end in the last line:
It's really impressive! Fps is 1.5 times higher than on shaders.
Thanks, the code works, performance is not degraded, only in the last line the alpha channel was moved to the end:
In this implementation performance is highly dependent on number of centres (N). Ideally we should get rid of the loop in the kernel but in this case we will have to make S1 and S2 integer. We will have to see how big is the spread of their values and maybe we can multiply them by something without too much sin. And then it is possible to transfer loop to third dimension, which theoretically will give performance gain at high values of N.
I get 80-90 fps on my HD 7950 on full-hd monitor at N=128.
In this implementation the performance is highly dependent on the number of centres (N). It would be good to get rid of the loop in the kernel, but then S1 and S2 would have to be integer. We will have to see how big is the spread of their values and maybe we can multiply them by something without too much sin. And then it's possible to transfer a loop into third dimension, that theoretically will give performance gain at high values of N.
I get 80-90 fps on my HD 7950 on a full-hd monitor at N=128.
My 750ti has 11 fps. I found the specs for the cards:
Logically, switching to float can raise fps by a factor of 4 on amd and 32 on nvidia.
Made a copy of the OCL version. I'm shocked at the result. At 1600 centres couldn't load the videoad more than 85%.
Optimisation with pre-calculated h has no effect, but left with it. All calculations are in float, I don't see the point of using double since all functions return float anyway.
Some conclusions.
1) Pre-calculation of h had no effect.
2) I didn't notice any difference when getting rid of if
3) It is slower,
than it
it seems...
4) Can't offload CPU, i.e. scalper stacks etc. can be forgotten.
Some conclusions.
1) Pre-calculation of h had no effect.
2) No difference in getting rid of if
3) It is slower,
than it
it seems...
4) Can't offload CPU, i.e. scalper stacks etc. can be forgotten.
In MT5, scalper stacks can easily run in one thread without OCL and not overload the CPU. Of course, this does not mean that it is not needed. Just an FYI.
If you use CCanvas class when building a mullion, then the workload will be proportional to the area of mullion. That is, the bigger the window in the mull, the heavier the load, because the entire canvas is being redrawn, not the individual, changed parts. However, turning the beaker cells into independent elements, they can be updated independently from the rest of the kanvas area, reducing redrawing time and the load on the processor caused by it by several times.
On MT5, scalper stacks can easily work in one thread, without OCL and without overloading the processor. Of course, that doesn't mean it's not needed. Just an FYI.
If you use CCanvas class when building a mullion, then the workload will be proportional to the size of the mullion. That is, the bigger the window in the mull, the heavier the load, because the entire canvas is being redrawn, not the individual, changed parts. However, turning the beaker cells into independent elements, they can be updated independently from the rest of the kanvas area, reducing redrawing time and the load on the processor caused by it by several times.
4th point in question. In the Remnant3D example, the CPU is barely loaded.
Point 4 is in question. The Remnant3D example hardly loads the CPU.
This has been tested. The CPU on MT5, in case of normal dynamics of the canvas, is almost not loaded, if you redraw individual cells in which the value has changed.
On the contrary, if every incoming value is redrawn over the entire canvas area, the processor will be much stressed.
The difference is in the number of re-initialized values in the pixel array. You need to selectively update individual areas and you won't have load problems.
This has been tested. The CPU on MT5, in case of normal dynamics of the canvas, is almost not loaded, if you redraw individual cells in which the value has changed.
On the contrary, if every incoming value is redrawn over the entire canvas area, the processor will be much stressed.
The difference is in the number of re-initialized values in the pixel array. You need to selectively update individual areas and you won't have load problems.
That's the thing about Remnant3D: it's a full-screen canvas and doesn't load the CPU.