Skip to content

docs(design): io_uring submission from rayon worker threads (#1284)#4220

Merged
oferchen merged 1 commit into
masterfrom
docs/iouring-rayon-submission-design-1284
May 17, 2026
Merged

docs(design): io_uring submission from rayon worker threads (#1284)#4220
oferchen merged 1 commit into
masterfrom
docs/iouring-rayon-submission-design-1284

Conversation

@oferchen
Copy link
Copy Markdown
Owner

Summary

Recommendation

Defer until #2243 (per-thread rings) and #4197 (per-file vs shared ring bench) converge. Keep the disk-commit thread as the sole submitter for writes; keep per-file rings for the generator read side.

Test plan

  • Pure docs change; no code touched
  • cargo fmt --all clean
  • File path: docs/design/iouring-rayon-submission.md

Document the trade-offs for pushing io_uring SQEs from rayon worker
threads. Records current submission topology, per-worker hazards,
the single-submitter alternative, missing bench evidence, and a
recommendation to defer until #2243 (per-thread rings) and #4197
(per-file vs shared ring bench) converge.
@oferchen oferchen merged commit 598df1e into master May 17, 2026
8 checks passed
@oferchen oferchen deleted the docs/iouring-rayon-submission-design-1284 branch May 17, 2026 19:11
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label May 17, 2026
oferchen added a commit that referenced this pull request May 17, 2026
Restructure the SEND_ZC design doc around the explicit 7-section
scope: current send path with file:line citations across daemon,
transfer, and rsync_io; SEND_ZC semantics with the two-CQE
notification model; registered-buffer ownership; kernel-6.0 runtime
probe via IORING_REGISTER_PROBE; loopback + small-file bench plan;
recommendation to defer until the daemon TCP wiring (#1876) lands;
and cross-references to #4217 / #4218 / #4220 / #2243.
oferchen added a commit that referenced this pull request May 18, 2026
…4220)

Document the trade-offs for pushing io_uring SQEs from rayon worker
threads. Records current submission topology, per-worker hazards,
the single-submitter alternative, missing bench evidence, and a
recommendation to defer until #2243 (per-thread rings) and #4197
(per-file vs shared ring bench) converge.
oferchen added a commit that referenced this pull request May 18, 2026
Restructure the SEND_ZC design doc around the explicit 7-section
scope: current send path with file:line citations across daemon,
transfer, and rsync_io; SEND_ZC semantics with the two-CQE
notification model; registered-buffer ownership; kernel-6.0 runtime
probe via IORING_REGISTER_PROBE; loopback + small-file bench plan;
recommendation to defer until the daemon TCP wiring (#1876) lands;
and cross-references to #4217 / #4218 / #4220 / #2243.
oferchen added a commit that referenced this pull request May 18, 2026
…4220)

Document the trade-offs for pushing io_uring SQEs from rayon worker
threads. Records current submission topology, per-worker hazards,
the single-submitter alternative, missing bench evidence, and a
recommendation to defer until #2243 (per-thread rings) and #4197
(per-file vs shared ring bench) converge.
oferchen added a commit that referenced this pull request May 18, 2026
Restructure the SEND_ZC design doc around the explicit 7-section
scope: current send path with file:line citations across daemon,
transfer, and rsync_io; SEND_ZC semantics with the two-CQE
notification model; registered-buffer ownership; kernel-6.0 runtime
probe via IORING_REGISTER_PROBE; loopback + small-file bench plan;
recommendation to defer until the daemon TCP wiring (#1876) lands;
and cross-references to #4217 / #4218 / #4220 / #2243.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant