Demonstration of pinned-thread resource#730
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## main #730 +/- ##
=======================================
Coverage 83.71% 83.71%
=======================================
Files 172 172
Lines 6904 6904
Branches 845 845
=======================================
Hits 5780 5780
Misses 847 847
Partials 277 277
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
This PR is a WIP. It is intended to demonstrate that the (eventual) resources system can handle resources like Geant4 that require pinning work on specific threads.
As the number of threads is generally configurable at run-time, it will be easiest to support pinned-thread resources is we have a feature similar to that requested in uxlfoundation/oneTBB#2131.
N.B.: An error was occasionally encountered in the
resource_limited_threadstest where a data race would appear, manifesting as either a dead lock or a disallowed access of thestd::optionalargument in themanaged_threadclass template. This seems to have been resolved with uxlfoundation/oneTBB#2103 (i.e., theresource_limited_threadstest now reliably executes successfully).