opm-simulators icon indicating copy to clipboard operation
opm-simulators copied to clipboard

Work in progress: Primary variables on GPU

Open kjetilly opened this issue 1 year ago • 2 comments

This is a very incomplete attempt at the moment. To get the DUNE vectors with GPU decorators, those classes have in essence been copied over to the repo and then been modified to fit on a GPU. They are in a different namespace than Dune as well.

kjetilly avatar Feb 26 '25 20:02 kjetilly

Be aware that due to Dune having a different license than OPM (GPL 2 + exception vs GPL 3) it is not at all straightforward to move code from Dune to OPM. It is best avoided. A better solution is to make the necessary additions in a dune fork instead. That also makes it much easier to get them into upstream Dune, even if that might not be something that is likely to happen it is a much better situation.

atgeirr avatar Feb 27 '25 08:02 atgeirr

So the FieldVector stuff is not meant to be merged, but I needed a proof-of-concept to see what changes were needed, also for further work porting more to the GPU. So far the changes to it hasn't been that substantial, and can probably be made as a PR to Dune. However, no never knows with the GPU compilers, and suddenly we see that it needs a rewrite to fit on a GPU, and then I would be in favour of having it in OPM I think.

All that to say: Don't merge this, and I don't intend to mess up the licensing.

kjetilly avatar Feb 27 '25 08:02 kjetilly