JoeJ said:
If you test un C++ side, does that mean you have the same implementation in C++ as in CS? If so, why don't you finish your project with C++ alone, and after this works port back to CS? Much less than half work, more than conpensating the longer wait on processing.
When i was starting, I tried to run one minimal part of the task in JS. IIRC i had to use workers or it was hanging. And after waiting 30 minutes for it to finish and did not finish yet, i closed it. This depressed me in that moment.
Then i briefly, superficially made some tests in C++ and it was too slow again. I did not see it finish, closed the exe. It was a superficial approach to the algorithm just to test and C++ did not finish. So i decided to go for the GPU.
Now that i think it, while optimizing for the GPU, i optimized the algorithm too.
And i can not tell now if i use the optimized algorithm on the CPU again, will finish in time. That old bad algorithm was no-go for the CPU. That is sure. But i don't know about the new algorithm.
Sometimes we fall victims of the situation. Now that i invested too much work in shaders is hard to throw it all away. It constantly looks like i am just two days away from finishing the damn shader and some bug pops up…
If you work two years on shaders, and i gift you a motherboard with 4 top tier Xeon CPUs, would you throw two years of work away? It is the better thing to do if the new hardware allows it. But would you do it? It is two years of your life.
(The tests that run on C++ are not repeating all of the functionality. Just a little bit. Only these methods and places, i consider to be the most error-prompt.)
(Now you injected an obsessive doubt in my mind about if the latest optimized algorithms would be fast enough for the CPU. Most probably still too slow. But "what if"….)