Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1325607

Re: [PATCH] mm: vmpressure: make vmpressure_window a tunable.

Path csiph.com!goblin3!goblin1!goblin.stu.neva.ru!news.mixmin.net!aioe.org!bofh.it!news.nic.it!robomod
From Johannes Weiner <hannes@cmpxchg.org>
Newsgroups linux.kernel
Subject Re: [PATCH] mm: vmpressure: make vmpressure_window a tunable.
Date Wed, 03 Feb 2016 17:20:03 +0100
Message-ID <qY8jV-4ft-35@gated-at.bofh.it> (permalink)
References <qY3tU-19p-13@gated-at.bofh.it>
X-Original-To Martijn Coenen <maco@google.com>
MIME-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
User-Agent Mutt/1.5.24 (2015-08-30)
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 36
Organization linux.* mail to news gateway
X-Original-Cc linux-mm@kvack.org, Anton Vorontsov <anton@enomsg.org>, Andrew Morton <akpm@linux-foundation.org>, Michal Hocko <mhocko@suse.com>, Vladimir Davydov <vdavydov@virtuozzo.com>, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, Jonathan Corbet <corbet@lwn.net>
X-Original-Date Wed, 3 Feb 2016 11:19:10 -0500
X-Original-Message-ID <20160203161910.GA10440@cmpxchg.org>
X-Original-References <001a114b360c7fdb9b052adb91d6@google.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1325607

Show key headers only | View raw


On Wed, Feb 03, 2016 at 11:06:20AM +0100, Martijn Coenen wrote:
> The window size used for calculating vm pressure
> events was previously fixed at 512 pages. The
> window size has a big impact on the rate of notifications
> sent off to userspace, in particular when using the
> "low" level. On machines with a lot of memory, the
> current value may be excessive.
> 
> On the other hand, making the window size depend on
> machine size does not allow userspace to change the
> notification rate based on the current state of the
> system. For example, when a lot of memory is still
> available, userspace may want to increase the window
> since it's not interested in receiving notifications
> for every 2MB scanned.
>
> This patch makes vmpressure_window a sysctl tunable.

If the machine is just cleaning up use-once cache, frequent events
make no sense. And if the machine is struggling, the notifications
better be in time.

That's hardly a tunable. It's a factor that needs constant dynamic
adjustment depending on VM state. The same state this mechanism is
supposed to report. If we can't get this right, how will userspace?

A better approach here would be to 1) find a minimum window size that
makes us confident that there are no false positives - this is likely
to be based on machine size, maybe the low watermark? - and 2) limit
reporting of lower levels, so you're not flooded with ALLGOOD! events.

VMPRESSURE_CRITICAL: report every vmpressure_win
VMPRESSURE_MEDIUM: report every vmpressure_win*2
VMPRESSURE_LOW: report every vmpressure_win*4

Pick your favorite scaling factor here.

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH] mm: vmpressure: make vmpressure_window a tunable. Martijn Coenen <maco@google.com> - 2016-02-03 12:10 +0100
  Re: [PATCH] mm: vmpressure: make vmpressure_window a tunable. Johannes Weiner <hannes@cmpxchg.org> - 2016-02-03 17:20 +0100
    Re: [PATCH] mm: vmpressure: make vmpressure_window a tunable. Martijn Coenen <maco@google.com> - 2016-02-04 12:30 +0100
      Re: [PATCH] mm: vmpressure: make vmpressure_window a tunable. Johannes Weiner <hannes@cmpxchg.org> - 2016-02-04 21:30 +0100

csiph-web