-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
feat: curio ffiselect: Isolate gpu calls in a subprocess #11994
Conversation
@magik6k please review my approach.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel quite strongly that we're passing those calls one layer of abstraction above where we should be passing them.
All checks have completed ❌ Failed Test / Test (itest-curio) (pull_request) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The linter does appear to be correctly complainy about how we return errors from the ffiselect wrapper.
Some minor things to address, overall looks really good, can't wait to give this a try!
Your changes look good @magik6k. I also added an always-ran "test" to verify everything looks sharp. I realize that part of that could be a unit test instead, but I'm not sure if that's working well at the moment. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good now, and works on my machine. Flaky curio test is not from this PR, will fix in a followup
Related Issues
The GPU picker library "ffiselect" will run ffi calls on an assigned GPU using a subprocess. It does not respect deadlines, but will survive fatal behavior of the subprocess.
This PR also removes localWorker (tech debt) from curio and copies code from there and the sealer into Curiosrc near the usage.
Proposed Changes
Additional Info
Checklist
Before you mark the PR ready for review, please make sure that:
<PR type>: <area>: <change being made>
fix: mempool: Introduce a cache for valid signatures
PR type
: fix, feat, build, chore, ci, docs, perf, refactor, revert, style, testarea
, e.g. api, chain, state, market, mempool, multisig, networking, paych, proving, sealing, wallet, deps