Tweak rebuild in-flight hard limit
Vendor testing shows we should be able to get a little more performance if we further relax the hard limit which we're hitting. Authored-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Alexander Motin <mav@FreeBSD.org> Signed-off-by: Tony Hutter <hutter2@llnl.gov> Closes #15324
This commit is contained in:
parent
ba769ea351
commit
f9c39dc862
|
@ -807,12 +807,12 @@ vdev_rebuild_thread(void *arg)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Calculate the max number of in-flight bytes for top-level
|
* Calculate the max number of in-flight bytes for top-level
|
||||||
* vdev scanning operations (minimum 1MB, maximum 1/4 of
|
* vdev scanning operations (minimum 1MB, maximum 1/2 of
|
||||||
* arc_c_max shared by all top-level vdevs). Limits for the
|
* arc_c_max shared by all top-level vdevs). Limits for the
|
||||||
* issuing phase are done per top-level vdev and are handled
|
* issuing phase are done per top-level vdev and are handled
|
||||||
* separately.
|
* separately.
|
||||||
*/
|
*/
|
||||||
uint64_t limit = (arc_c_max / 4) / MAX(rvd->vdev_children, 1);
|
uint64_t limit = (arc_c_max / 2) / MAX(rvd->vdev_children, 1);
|
||||||
vr->vr_bytes_inflight_max = MIN(limit, MAX(1ULL << 20,
|
vr->vr_bytes_inflight_max = MIN(limit, MAX(1ULL << 20,
|
||||||
zfs_rebuild_vdev_limit * vd->vdev_children));
|
zfs_rebuild_vdev_limit * vd->vdev_children));
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue