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

Improve forEachLeaf compilation time #254

Merged
merged 1 commit into from
May 19, 2021

Conversation

bernhardmgruber
Copy link
Member

Instead of an hierarchical iteration on the record domain, we now precompute a flat list of leaf record coords, which is memoized and can be reused in multiple forEachLeaf instantiations.

Before (60s):
image
After (45s):
image
Notice the reduction of the green bars, which are the template instantiations.

LeafRecordCoords creates a flat type list of the record coordinates of the leaves.
forEachLeafImpl uses the flat type list to save template instantiations.
@bernhardmgruber bernhardmgruber merged commit eda6e6b into alpaka-group:develop May 19, 2021
@bernhardmgruber bernhardmgruber deleted the foreach branch May 19, 2021 20:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant