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


Groups > linux.kernel > #1557003

Re: [PATCH v5 3/9] mm/swap: Split swap cache into 64MB trunks

From Andi Kleen <ak@linux.intel.com>
Newsgroups linux.kernel
Subject Re: [PATCH v5 3/9] mm/swap: Split swap cache into 64MB trunks
Date 2017-01-12 00:20 +0100
Message-ID <sYAlr-4Mp-1@gated-at.bofh.it> (permalink)
References <sYvlL-1rB-19@gated-at.bofh.it> <sYvlM-1rB-37@gated-at.bofh.it> <sYAbM-4Ht-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


> Switching from a single radix-tree to an array of radix-trees to reduce
> contention seems a bit hacky.  That we can do this and have everything
> continue to work tells me that we're simply using an inappropriate data
> structure to hold this info.

What would you use instead?

A tree with fine grained locking?

FWIW too fine grained locking (e.g. on every node) is usually a bad idea: 

it slows down the single thread performance and it causes much more overhead
when there is actual contention because too much time is spent bouncing cache
lines around.

So I actually like the "a little bit more fine grained, but not too much"
approach.

Or a hash table? 

Not sure if this would work here.

-Andi

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


Thread

[PATCH v5 3/9] mm/swap: Split swap cache into 64MB trunks Tim Chen <tim.c.chen@linux.intel.com> - 2017-01-11 19:00 +0100
  Re: [PATCH v5 3/9] mm/swap: Split swap cache into 64MB trunks Andrew Morton <akpm@linux-foundation.org> - 2017-01-12 00:10 +0100
    Re: [PATCH v5 3/9] mm/swap: Split swap cache into 64MB trunks Andi Kleen <ak@linux.intel.com> - 2017-01-12 00:20 +0100
      Re: [PATCH v5 3/9] mm/swap: Split swap cache into 64MB trunks Tim Chen <tim.c.chen@linux.intel.com> - 2017-01-12 17:50 +0100

csiph-web