iter10: chunk back to 32 MiB

iter9 (64 MiB on top of no-P2.5) regressed -1.2 from iter8. 32 MiB
remains best on the no-P2.5 path. Net iter10 = iter8 minus DONTNEED
(via the prior commit re-applying 41d4c6b).
This commit is contained in:
2026-05-17 09:06:34 -07:00
parent ba85230be6
commit ac4c629898
+2 -8
View File
@@ -73,14 +73,8 @@ use std::path::Path;
use super::writeback::WritebackPipeline;
/// Granularity at which the Linux writeback pipeline issues
/// `sync_file_range` / `posix_fadvise(DONTNEED)` pairs.
///
/// iter9 (2026-05-17): 32 → 64 MiB on top of iter8 (Phase 2.5
/// disabled). Without Phase 2.5's writer thread, WAIT_AFTER blocks
/// the mux thread directly. Bigger chunks = fewer WAIT_AFTER calls
/// = less mux-thread blocking. iter8 mean was 28.7 with 32 MiB; aim
/// to clear the 30 floor by halving WAIT_AFTER frequency.
const WRITEBACK_CHUNK_BYTES: u64 = 64 * 1024 * 1024;
/// `sync_file_range` pairs. 32 MiB best-tested with iter8 (28.7 mean).
const WRITEBACK_CHUNK_BYTES: u64 = 32 * 1024 * 1024;
pub(crate) struct WritebackFile {
file: File,