Re: [RFC PATCH 0/8] memcg: Enable fine-grained per process memory control
From: Chris Down <chris@chrisdown.name>
Date: 2020-08-18 10:35:57
Also in:
cgroups, linux-fsdevel, linux-mm, lkml
peterz@infradead.org writes:
On Tue, Aug 18, 2020 at 11:17:56AM +0100, Chris Down wrote:quoted
I'd ask that you understand a bit more about the tradeoffs and intentions of the patch before rushing in to declare its failure, considering it works just fine :-) Clamping the maximal time allows the application to take some action to remediate the situation, while still being slowed down significantly. 2 seconds per allocation batch is still absolutely plenty for any use case I've come across. If you have evidence it isn't, then present that instead of vague notions of "wrongness".There is no feedback from the freeing rate, therefore it cannot be correct in maintaining a maximum amount of pages.
memory.high is not about maintaining a maximum amount of pages. It's strictly best-effort, and the ramifications of a breach are typically fundamentally different than for dirty throttling.
0.5 pages / sec is still non-zero, and if the free rate is 0, you'll crawl across whatever limit was set without any bounds. This is math 101. It's true that I haven't been paying attention to mm in a while, but I was one of the original authors of the I/O dirty balancing, I do think I understand how these things work.
You're suggesting we replace a well understood, easy to reason about model with something non-trivially more complex, all on the back of you suggesting that the current approach is "wrong" without any evidence or quantification. Peter, we're not going to throw out perfectly function memcg code simply because of your say so, especially when you've not asked for information or context about the tradeoffs involved, or presented any evidence that something perverse is actually happening. Prescribing a specific solution modelled on some other code path here without producing evidence or measurements specific to the nuances of this particular endpoint is not a recipe for success.