[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150309012728.GB794@swordfish>
Date: Mon, 9 Mar 2015 10:27:28 +0900
From: Sergey Senozhatsky <sergey.senozhatsky.work@...il.com>
To: Minchan Kim <minchan@...nel.org>
Cc: Sergey Senozhatsky <sergey.senozhatsky.work@...il.com>,
akpm@...ux-foundation.org, ddstreet@...e.org, gunho.lee@....com,
iamjoonsoo.kim@....com, jmarchan@...hat.com, juno.choi@....com,
mel@....ul.ie, ngupta@...are.org, semenzato@...gle.com,
sergey.senozhatsky@...il.com, sjennings@...iantweb.net,
mm-commits@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: + zram-support-compaction.patch added to -mm tree
On (03/09/15 10:05), Minchan Kim wrote:
> > well, to be fair, compaction is a zsmalloc internal. zram has nothing to do with
> > it.
> >
> > but do we we even need this stat? it seems that
> >
> > mem_total_used (before compaction) - mem_total_user (after comapction)
> >
> > will give user an idea on how much memory was compacted.
>
> It's not enough. What I want to know is compaction efficiency per client of
> zsmalloc(ie, zram).
>
so what a typical user can do with this information? isn't it an entirely
debug info that makes some hidden sense only to developers?
if you insist on exporting this as a zram stat for everyone how obout
starting to move away from per-stat RO sysfs attrs. it seems that we have
uncomfortably a lot of sysfs attrs, and that doesn't make life easier in
user space. for example, block devices have /sys/block/.../stat file:
/sys/block/sda$ cat stat
45931 59 2075686 289906 55768 9229 1967800 318033 0 193583 607806
and there are no num_reads, num_writes, num_failed_reads, num_failed_writes,
etc., etc. per-stat sysfs attrs force user-space to do lots of syscalls:
open(), read(), close() with error control on every step; for every stat.
so how about introducing zram<id>/malloc_stats (or any similar name) and
provide compaction and all future allocator related stats there
(via s*printf("%d %d %d", ....)) ?
-ss
> IOW, (how many of freed pages / how many of objects) per
> zs_compact.
>
> >
> > -ss
> >
> > > That's why it is on debugfs. If we add the stat into zsmalloc, we should turn on debugfs
> > > and CONFIG_ZSMALLOC_STAT to see *a* stat. Even, CONFIG_ZSMALLOC_STAT will add
> > > unncessary overheads to account another stats fo zsmalloc internals.
> > >
> > > As well, if we add auto-compacion like stuff in zsmalloc(ie, it will trigger
> > > by itself if fragmention is over to predefined theshold), the stat will
> > > accumulate stat while someone want to see snapshot compaction effiecieny
> > > of the moment.
> > >
> > > So, I want to keep it in zram now.
> > >
> > > --
> > > Kind regards,
> > > Minchan Kim
> > >
>
> --
> Kind regards,
> Minchan Kim
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists