From: Sergey Senozhatsky <senozhatsky@chromium.org>
To: Johannes Weiner <hannes@cmpxchg.org>
Cc: Minchan Kim <minchan@kernel.org>,
Sergey Senozhatsky <senozhatsky@chromium.org>,
Nhat Pham <nphamcs@gmail.com>,
akpm@linux-foundation.org, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, ngupta@vflare.org,
sjenning@redhat.com, ddstreet@ieee.org, vitaly.wool@konsulko.com
Subject: Re: [PATCH 2/5] zsmalloc: Consolidate zs_pool's migrate_lock and size_class's locks
Date: Fri, 4 Nov 2022 12:58:30 +0900 [thread overview]
Message-ID: <Y2SN5tMH8CqYHsYK@google.com> (raw)
In-Reply-To: <Y2PbrOqRMLDsYev0@cmpxchg.org>
On (22/11/03 11:18), Johannes Weiner wrote:
> > > I'm not in love with this, to be honest. One big pool lock instead
> > > of 255 per-class locks doesn't look attractive, as one big pool lock
> > > is going to be hammered quite a lot when zram is used, e.g. as a regular
> > > block device with a file system and is under heavy parallel writes/reads.
>
> TBH the class always struck me as an odd scope to split the lock. Lock
> contention depends on how variable the compression rate is of the
> hottest incoming data, which is unpredictable from a user POV.
>
> My understanding is that the primary usecase for zram is swapping, and
> the pool lock is the same granularity as the swap locking.
That's what we thought until a couple of merge windows ago we figured
(the hard way) that SUSE uses ZRAM as a normal block device with a real
file-system on it. And they use it often enough to immediately spot the
regression which we landed.
> Do you have a particular one in mind? (I'm thinking journaled ones are
> not of much interest, since their IO tends to be fairly serialized.)
>
> btrfs?
Probably some parallel fio workloads? Seq, random reads/writes from
numerous workers.
I personally sometimes use ZRAM when I want to compile something and
I care only about the package, I don't need .o for recomplilation or
something, just the final package.
next prev parent reply other threads:[~2022-11-04 3:58 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-26 20:06 [PATCH 0/5] Implement writeback for zsmalloc Nhat Pham
2022-10-26 20:06 ` [PATCH 1/5] zswap: fix writeback lock ordering " Nhat Pham
2022-10-26 20:06 ` [PATCH 2/5] zsmalloc: Consolidate zs_pool's migrate_lock and size_class's locks Nhat Pham
2022-10-28 14:46 ` Johannes Weiner
2022-11-02 3:28 ` Sergey Senozhatsky
2022-11-02 21:36 ` Minchan Kim
2022-11-03 15:18 ` Johannes Weiner
2022-11-03 15:53 ` Minchan Kim
2022-11-03 18:08 ` Johannes Weiner
2022-11-03 18:10 ` Yosry Ahmed
2022-11-03 20:37 ` Minchan Kim
2022-11-03 20:46 ` Yosry Ahmed
2022-11-03 21:15 ` Yu Zhao
2022-11-03 23:19 ` Yosry Ahmed
2022-11-03 21:43 ` Minchan Kim
2022-11-03 23:31 ` Yosry Ahmed
2022-11-03 20:22 ` Minchan Kim
2022-11-04 3:58 ` Sergey Senozhatsky [this message]
2022-11-07 21:31 ` Nhat Pham
2022-11-07 22:35 ` Minchan Kim
2022-10-26 20:06 ` [PATCH 3/5] zsmalloc: Add a LRU to zs_pool to keep track of zspages in LRU order Nhat Pham
2022-10-28 14:47 ` Johannes Weiner
2022-10-26 20:06 ` [PATCH 4/5] zsmalloc: Add ops fields to zs_pool to store evict handlers Nhat Pham
2022-10-28 15:18 ` Johannes Weiner
2022-11-02 4:10 ` Sergey Senozhatsky
2022-11-07 21:36 ` Nhat Pham
2022-10-26 20:06 ` [PATCH 5/5] zsmalloc: Implement writeback mechanism for zsmalloc Nhat Pham
2022-10-27 13:53 ` kernel test robot
2022-10-27 18:27 ` [PATCH v2 " Nhat Pham
2022-10-28 15:19 ` Johannes Weiner
2022-11-02 3:42 ` Sergey Senozhatsky
2022-11-03 15:26 ` Johannes Weiner
2022-11-02 3:44 ` Sergey Senozhatsky
2022-11-02 4:13 ` Sergey Senozhatsky
2022-11-03 16:45 ` Johannes Weiner
2022-11-04 4:02 ` Sergey Senozhatsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Y2SN5tMH8CqYHsYK@google.com \
--to=senozhatsky@chromium.org \
--cc=akpm@linux-foundation.org \
--cc=ddstreet@ieee.org \
--cc=hannes@cmpxchg.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=minchan@kernel.org \
--cc=ngupta@vflare.org \
--cc=nphamcs@gmail.com \
--cc=sjenning@redhat.com \
--cc=vitaly.wool@konsulko.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.