Fix platform lookup usage in CLI#1626
Merged
Merged
Conversation
4 tasks
oferchen
added a commit
that referenced
this pull request
May 6, 2026
Plan benchmarking regular submit_and_wait vs SQPOLL vs std I/O across small/large/mid file workloads, the CAP_SYS_NICE privilege matrix including unprivileged container (#1624), and kernels 5.6 / 5.11 / 5.15 / 6.0 / 6.6. Cross-references the session ring pool (#1408 / #1409), PBUF_RING audit (#2043), and registered-buffer adaptive sizing (#2045).
oferchen
added a commit
that referenced
this pull request
May 6, 2026
Plan benchmarking regular submit_and_wait vs SQPOLL vs std I/O across small/large/mid file workloads, the CAP_SYS_NICE privilege matrix including unprivileged container (#1624), and kernels 5.6 / 5.11 / 5.15 / 6.0 / 6.6. Cross-references the session ring pool (#1408 / #1409), PBUF_RING audit (#2043), and registered-buffer adaptive sizing (#2045).
3 tasks
oferchen
added a commit
that referenced
this pull request
May 7, 2026
Locks in the workloads, metrics, and pass/fail criteria for comparing regular submission, SQPOLL, and standard-I/O fallback in fast_io's io_uring submission path. Captures current default state, kernel-thread trade-offs, and the privilege/idle-ms axes the benchmark must vary before any default flip lands.
This was referenced May 7, 2026
oferchen
added a commit
that referenced
this pull request
May 7, 2026
#3880) Adds a focused benchmark plan covering submission modes (regular, SQPOLL, DEFER_TASKRUN) against the standard-I/O baseline, with workload variants, metrics, and a kernel/CAP-aware default-selection matrix for the fast_io SubmissionMode selector.
3 tasks
oferchen
added a commit
that referenced
this pull request
May 17, 2026
…) (#4201) * bench(fast_io): io_uring SQPOLL vs regular submission vs std::fs (#1626) Add a Linux-only Criterion bench that writes 100K x 4 KiB files three ways - synchronous std::fs::write_all, io_uring with default per-batch io_uring_enter, and io_uring with IORING_SETUP_SQPOLL - so the receiver hot path can be evaluated against each dispatch style at a high submission rate. The SQPOLL group is gated behind a second env var (OC_RSYNC_BENCH_IOURING_SQPOLL) on top of the shared OC_RSYNC_BENCH_IOURING_RING gate because SQPOLL needs CAP_SYS_NICE on pre-5.13 kernels. Non-Linux targets compile to a stub main so the bench is safe to register unconditionally. All SQPOLL setup lives inside the bench file; no new production paths are introduced in fast_io. * style(fast_io): apply rustfmt to iouring_sqpoll_vs_regular bench * fix(fast_io): annotate IoUring entry type in sqpoll bench io_uring 0.7 made IoUring generic over the SQE type. The bench needed explicit Entry annotation to disambiguate.
oferchen
added a commit
that referenced
this pull request
May 18, 2026
Plan benchmarking regular submit_and_wait vs SQPOLL vs std I/O across small/large/mid file workloads, the CAP_SYS_NICE privilege matrix including unprivileged container (#1624), and kernels 5.6 / 5.11 / 5.15 / 6.0 / 6.6. Cross-references the session ring pool (#1408 / #1409), PBUF_RING audit (#2043), and registered-buffer adaptive sizing (#2045).
oferchen
added a commit
that referenced
this pull request
May 18, 2026
Locks in the workloads, metrics, and pass/fail criteria for comparing regular submission, SQPOLL, and standard-I/O fallback in fast_io's io_uring submission path. Captures current default state, kernel-thread trade-offs, and the privilege/idle-ms axes the benchmark must vary before any default flip lands.
oferchen
added a commit
that referenced
this pull request
May 18, 2026
#3880) Adds a focused benchmark plan covering submission modes (regular, SQPOLL, DEFER_TASKRUN) against the standard-I/O baseline, with workload variants, metrics, and a kernel/CAP-aware default-selection matrix for the fast_io SubmissionMode selector.
oferchen
added a commit
that referenced
this pull request
May 18, 2026
…) (#4201) * bench(fast_io): io_uring SQPOLL vs regular submission vs std::fs (#1626) Add a Linux-only Criterion bench that writes 100K x 4 KiB files three ways - synchronous std::fs::write_all, io_uring with default per-batch io_uring_enter, and io_uring with IORING_SETUP_SQPOLL - so the receiver hot path can be evaluated against each dispatch style at a high submission rate. The SQPOLL group is gated behind a second env var (OC_RSYNC_BENCH_IOURING_SQPOLL) on top of the shared OC_RSYNC_BENCH_IOURING_RING gate because SQPOLL needs CAP_SYS_NICE on pre-5.13 kernels. Non-Linux targets compile to a stub main so the bench is safe to register unconditionally. All SQPOLL setup lives inside the bench file; no new production paths are introduced in fast_io. * style(fast_io): apply rustfmt to iouring_sqpoll_vs_regular bench * fix(fast_io): annotate IoUring entry type in sqpoll bench io_uring 0.7 made IoUring generic over the SQE type. The bench needed explicit Entry annotation to disambiguate.
oferchen
added a commit
that referenced
this pull request
May 18, 2026
…) (#4201) * bench(fast_io): io_uring SQPOLL vs regular submission vs std::fs (#1626) Add a Linux-only Criterion bench that writes 100K x 4 KiB files three ways - synchronous std::fs::write_all, io_uring with default per-batch io_uring_enter, and io_uring with IORING_SETUP_SQPOLL - so the receiver hot path can be evaluated against each dispatch style at a high submission rate. The SQPOLL group is gated behind a second env var (OC_RSYNC_BENCH_IOURING_SQPOLL) on top of the shared OC_RSYNC_BENCH_IOURING_RING gate because SQPOLL needs CAP_SYS_NICE on pre-5.13 kernels. Non-Linux targets compile to a stub main so the bench is safe to register unconditionally. All SQPOLL setup lives inside the bench file; no new production paths are introduced in fast_io. * style(fast_io): apply rustfmt to iouring_sqpoll_vs_regular bench * fix(fast_io): annotate IoUring entry type in sqpoll bench io_uring 0.7 made IoUring generic over the SQE type. The bench needed explicit Entry annotation to disambiguate.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
--chownresolution logic across targets so platform helpers are exercised on all buildsTesting
https://chatgpt.com/codex/tasks/task_e_6902c08b897083239d45b4187ce70af9