From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751238AbcGLTGb (ORCPT ); Tue, 12 Jul 2016 15:06:31 -0400 Received: from gum.cmpxchg.org ([85.214.110.215]:52052 "EHLO gum.cmpxchg.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750829AbcGLTGa (ORCPT ); Tue, 12 Jul 2016 15:06:30 -0400 Date: Tue, 12 Jul 2016 15:06:06 -0400 From: Johannes Weiner To: Mel Gorman Cc: Andrew Morton , Linux-MM , Rik van Riel , Vlastimil Babka , Minchan Kim , Joonsoo Kim , LKML Subject: Re: [PATCH 32/34] mm: vmstat: account per-zone stalls and pages skipped during reclaim Message-ID: <20160712190606.GB8629@cmpxchg.org> References: <1467970510-21195-1-git-send-email-mgorman@techsingularity.net> <1467970510-21195-33-git-send-email-mgorman@techsingularity.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1467970510-21195-33-git-send-email-mgorman@techsingularity.net> User-Agent: Mutt/1.6.1 (2016-04-27) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jul 08, 2016 at 10:35:08AM +0100, Mel Gorman wrote: > The vmstat allocstall was fairly useful in the general sense but > node-based LRUs change that. It's important to know if a stall was for an > address-limited allocation request as this will require skipping pages > from other zones. This patch adds pgstall_* counters to replace > allocstall. The sum of the counters will equal the old allocstall so it > can be trivially recalculated. A high number of address-limited > allocation requests may result in a lot of useless LRU scanning for > suitable pages. > > As address-limited allocations require pages to be skipped, it's important > to know how much useless LRU scanning took place so this patch adds > pgskip* counters. This yields the following model > > 1. The number of address-space limited stalls can be accounted for (pgstall) > 2. The amount of useless work required to reclaim the data is accounted (pgskip) > 3. The total number of scans is available from pgscan_kswapd and pgscan_direct > so from that the ratio of useful to useless scans can be calculated. > > Signed-off-by: Mel Gorman > Acked-by: Vlastimil Babka These statistics should be quite helpful, so: Acked-by: Johannes Weiner But I have one nitpick: > @@ -23,6 +23,8 @@ > > enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT, > FOR_ALL_ZONES(PGALLOC), > + FOR_ALL_ZONES(PGSTALL), > + FOR_ALL_ZONES(PGSCAN_SKIP), > PGFREE, PGACTIVATE, PGDEACTIVATE, > PGFAULT, PGMAJFAULT, > PGLAZYFREED, The PG prefix seems to stand for page, and all stat names that contain it represent some per-page event. PGSTALL is not a page event, though. Would you mind sticking with allocstall? allocstall_dma32 etc.