Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

optimization of CG2DG #795

Open
Thanduriel opened this issue Feb 17, 2025 · 0 comments
Open

optimization of CG2DG #795

Thanduriel opened this issue Feb 17, 2025 · 0 comments
Labels
enhancement New feature or request

Comments

@Thanduriel
Copy link
Member

The cg to dg interpolation (Interpolations::CG2DG), used by DGTransport::prepareAdvection, is very slow because it always recomputes the needed parametric map. This map should be precomputed once and stored, as is done everywhere else in the code.

Precomputation is difficult with the current interface as a standalone function. Either the precomputed matrix should be passed explicitly as an argument or we refactor the functionality into a class where the object holds the map. I think the latter is more ergonomic and I already implemented it this way in the GPU implementation (see KokkosDGTransport.cpp). The only downside I see, is that it is easier to accidentally make a redundant copy of the precomuted matrix this way.

@Thanduriel Thanduriel added the enhancement New feature or request label Feb 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant