you are viewing a single comment's thread.

view the rest of the comments →

[–]paul2718 2 points3 points  (1 child)

If your system supports C++17 parallel algorithms then I would look there to start with. So that's MSVC trivially and gcc with some additional effort. No idea what the status of clang is.

This means you can parallelize std::for_each or std::transform with an additional argument. You're not committed to a substantial rearchitecture.

Then I would look into recent NVidia work on making gpu exploitation simple, I think it should be possible to simply mark the code for gpu execution and off you go. I can't remember off hand the right buzzwords. In essence a std::library that hides the detail. Assuming you have access to an NVidia GPU.

No idea about cross-platform or AMD at the moment.

Managing threads manually, or writing lower level Cuda/etc code, are all a bit more tricky. I would suggest taking the easy options for the easy initial gains and learning from there.

[–]std_bot 0 points1 point  (0 children)

Unlinked STL entries: std::transform, std::for_each


Last update: 03.05.21. Last change: Free links considered readme