Skip to content

docs(audits): parallel stat batch size effectiveness (#1083)#3830

Merged
oferchen merged 1 commit into
masterfrom
docs/parallel-stat-batch-size-1083
May 7, 2026
Merged

docs(audits): parallel stat batch size effectiveness (#1083)#3830
oferchen merged 1 commit into
masterfrom
docs/parallel-stat-batch-size-1083

Conversation

@oferchen
Copy link
Copy Markdown
Owner

@oferchen oferchen commented May 7, 2026

Summary

  • Document current ParallelThresholds defaults (stat=64, signature=32, metadata=64, deletion=64) and the map_blocking dispatch in crates/transfer/src/parallel_io.rs, plus the unconditional par_iter paths in crates/flist/src/batched_stat/.
  • Walk through how rayon's adaptive splitter chunks at 16, 64, 256, 1024, and 10K items on an 8-core host, and call out where small chunks defeat directory-cache locality.
  • Lay out trade-offs for thread spawn overhead, FS metadata cache locality across ext4/APFS/NTFS/NFS/io_uring, and ordering invariants.
  • Propose five improvements: adaptive with_min_len, per-FS-type threshold profile, walker/receiver work-stealing pipeline, statx batching via fast_io, and per-call-site threshold scaling.

Tracking: #1083.

Test plan

  • Doc-only change; no code paths exercised.
  • Verify links and crate paths cited in the audit still resolve.

Profile current PARALLEL_STAT_THRESHOLD and chunk sizing across receiver
and flist batched_stat paths, document rayon split behaviour at 16/64/256/1024/10K
file counts, and propose adaptive chunk size, per-FS-type tuning, and
work-stealing improvements.
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label May 7, 2026
@oferchen oferchen merged commit 62c3126 into master May 7, 2026
8 checks passed
@oferchen oferchen deleted the docs/parallel-stat-batch-size-1083 branch May 8, 2026 03:48
oferchen added a commit that referenced this pull request May 18, 2026
Profile current PARALLEL_STAT_THRESHOLD and chunk sizing across receiver
and flist batched_stat paths, document rayon split behaviour at 16/64/256/1024/10K
file counts, and propose adaptive chunk size, per-FS-type tuning, and
work-stealing improvements.
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