HomeFreeBSD

ZIL: Detect single-threaded workloads

Description

ZIL: Detect single-threaded workloads

... by checking that previous block is fully written and flushed.
It allows to skip commit delays since we can give up on aggregation
in that case. This removes zil_min_commit_timeout parameter, since
for single-threaded workloads it is not needed at all, while on very
fast devices even some multi-threaded workloads may get detected as
single-threaded and still bypass the wait. To give multi-threaded
workloads more aggregation chances increase zfs_commit_timeout_pct
from 5 to 10%, as they should suffer less from additional latency.

Also single-threaded workloads detection allows in perspective better
prediction of the next block size.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Prakash Surya <prakash.surya@delphix.com>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Sponsored by: iXsystems, Inc.
Closes #15381

Details

Provenance
mavAuthored on Oct 24 2023, 9:35 PM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Apr 19 2024, 5:13 PM
Parents
rG3c5f354a8c3a: zvol_os: fix compile with blk-mq on Linux 4.x
Branches
Unknown
Tags
Unknown