-
Notifications
You must be signed in to change notification settings - Fork 115
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
Type specification in Dg struct #57
Comments
In GitLab by @gregorgassner on May 19, 2020, 13:03 This sounds good to me. It would be great to just pass DG, but not losing performance... |
In GitLab by @ranocha on May 19, 2020, 13:05 That should hopefully be possible. If we look carefully for type instabilities like this and get rid of them, I expect to not lose any performance (but maybe even gain some). |
In GitLab by @sloede on May 20, 2020, 07:07 It sounds very tempting, but it does add complexity to the code (especially for new users not that familiar with the parametric type syntax). Thus, before we roll this out to all performance-critical code sections, I suggest we first run some tests that confirm that this modification will actually solve the performance issues when passing On a side note, will this also enable us to pass |
In GitLab by @ranocha on May 20, 2020, 07:15
Sounds good to me.
Yes, in a sense you're using function barriers as workaround for type instability issues right now.
I hope so, yes. |
In GitLab by @ranocha on May 24, 2020, 10:23 mentioned in merge request !52 |
In GitLab by @ranocha on May 30, 2020, 09:30 I'm not sure. The line |
Superseded by #177 |
In GitLab by @ranocha on May 18, 2020, 19:14
If I remember correctly, @sloede mentioned performance problems when passing the
Dg
struct to some functions instead of the vectors/matrices (likenodes
anddhat
) used there. I think that's because the types are not fully specified inDg
. For example, we currently haveHence,
nodes
anddhat
are not concretely typed, sinceBeing more specific here can probably increase the runtime performance. Additionally, it could be possible to just pass
dg::Dg
instead of the specific vectors/matrices. I would suggest being flexible and using something along the lines ofinstead of specifying the types concretely, which can also be done, resulting in something like
The text was updated successfully, but these errors were encountered: