| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Codecov ReportAttention: Patch coverage is 93.75000% with 2 lines in your changes missing coverage. Please review.
@@ Coverage Diff @@
## main #2679 +/- ##
==========================================
- Coverage 92.03% 92.02% -0.01%
==========================================
Files 245 245
Lines 49082 49089 +7
Branches 4321 4322 +1
==========================================
+ Hits 45171 45176 +5
- Misses 3211 3212 +1
- Partials 700 701 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry.
|
Sorry, something went wrong.
There was a problem hiding this comment.
This PR adds device context setup for pthread workers in GPU+MPI environments to prevent memory allocation issues on the wrong GPU device. The changes refactor the device initialization logic to ensure both entry functions and async callables (pthreads) properly call set_device().
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| devito/passes/iet/langbase.py | Refactored device initialization into helper functions and added device setup for AsyncCallable |
| devito/passes/iet/asynchrony.py | Added init=True parameter to DummyExpr for thread parameter unpacking |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Without this, MPI+GPU runs might end up allocating extra memory (e.g. pinned memory buffers inside the runtime library) on rank0's GPU because each thread is expected to call set_device() explicitly (yes, even children threads)