Skip to content

Adds OMP support for existing GWN examples#1834

Open
jcs15c wants to merge 11 commits intodevelopfrom
feature/spainhour/threaded_gwn
Open

Adds OMP support for existing GWN examples#1834
jcs15c wants to merge 11 commits intodevelopfrom
feature/spainhour/threaded_gwn

Conversation

@jcs15c
Copy link
Copy Markdown
Contributor

@jcs15c jcs15c commented Mar 27, 2026

Summary

This PR adds OMP support for the GWN examples in quest, which threading cache creation per surface and GWN evaluation per query. These changes are supported by adding "cache manager" classes to winding_number_2d/3d_memoization.hpp which provide a view to GWN caches used in execution, and a mutex in quadrature.cpp to ensure thread safety. For OMP examples, a separate cache is allocated for each thread. In the future, it might be worth investigating if there are benefits to collocating/binning the query points used for each thread to improve cache utilization. These changes are tested in quest_gwn_methods.cpp.

Many thanks to @BradWhitlock for the initial implementation of these methods, from which this PR is mostly derived.

@jcs15c jcs15c changed the title Adds OMP support for GWN examples Adds OMP support for existing GWN examples Mar 27, 2026
@jcs15c jcs15c force-pushed the feature/spainhour/threaded_gwn branch from ebd7cb6 to 6437782 Compare March 27, 2026 23:44
@jcs15c jcs15c self-assigned this Mar 27, 2026
@jcs15c jcs15c added the Quest Issues related to Axom's 'quest' component label Mar 27, 2026
@jcs15c jcs15c marked this pull request as ready for review March 27, 2026 23:46
@jcs15c jcs15c force-pushed the feature/spainhour/threaded_gwn branch from 0aa11d6 to 075e008 Compare March 31, 2026 18:14
@jcs15c jcs15c force-pushed the feature/spainhour/threaded_gwn branch 2 times, most recently from f1c735c to 1186e6d Compare April 3, 2026 16:58
@jcs15c jcs15c force-pushed the feature/spainhour/threaded_gwn branch from 1186e6d to 27b914d Compare April 7, 2026 23:29
Copy link
Copy Markdown
Contributor

@Arlie-Capps Arlie-Capps left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @jcs15c .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Quest Issues related to Axom's 'quest' component

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants