On Tue, 19 Oct 2021, Mel Gorman wrote: > Tracing of the stutterp workload showed the following delays > > 1 usect_delayed=124000 reason=VMSCAN_THROTTLE_NOPROGRESS > 1 usect_delayed=128000 reason=VMSCAN_THROTTLE_NOPROGRESS > 1 usect_delayed=176000 reason=VMSCAN_THROTTLE_NOPROGRESS > 1 usect_delayed=536000 reason=VMSCAN_THROTTLE_NOPROGRESS > 1 usect_delayed=544000 reason=VMSCAN_THROTTLE_NOPROGRESS > 1 usect_delayed=556000 reason=VMSCAN_THROTTLE_NOPROGRESS > 1 usect_delayed=624000 reason=VMSCAN_THROTTLE_NOPROGRESS > 1 usect_delayed=716000 reason=VMSCAN_THROTTLE_NOPROGRESS > 1 usect_delayed=772000 reason=VMSCAN_THROTTLE_NOPROGRESS > 2 usect_delayed=512000 reason=VMSCAN_THROTTLE_NOPROGRESS > 16 usect_delayed=120000 reason=VMSCAN_THROTTLE_NOPROGRESS > 53 usect_delayed=116000 reason=VMSCAN_THROTTLE_NOPROGRESS > 116 usect_delayed=112000 reason=VMSCAN_THROTTLE_NOPROGRESS > 5907 usect_delayed=108000 reason=VMSCAN_THROTTLE_NOPROGRESS > 71741 usect_delayed=104000 reason=VMSCAN_THROTTLE_NOPROGRESS > > All the throttling hit the full timeout and then there was wakeup delays > meaning that the wakeups are premature as no other reclaimer such as > kswapd has made progress. This patch increases the maximum timeout. Would love to see the comparable tracing results for after the patch. Thanks, NeilBrown > > Signed-off-by: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx> > Acked-by: Vlastimil Babka <vbabka@xxxxxxx> > --- > mm/vmscan.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/mm/vmscan.c b/mm/vmscan.c > index 1f5c467dc83c..ec2006680242 100644 > --- a/mm/vmscan.c > +++ b/mm/vmscan.c > @@ -1033,6 +1033,8 @@ void reclaim_throttle(pg_data_t *pgdat, enum vmscan_throttle_state reason) > */ > switch(reason) { > case VMSCAN_THROTTLE_NOPROGRESS: > + timeout = HZ/2; > + break; > case VMSCAN_THROTTLE_WRITEBACK: > timeout = HZ/10; > > -- > 2.31.1 > >