From: "Zhao Hui Ding" <dingzhh@cn.ibm.com>
To: Johannes Weiner <hannes@cmpxchg.org>
Cc: cgroups@vger.kernel.org, linux-mm@kvack.org,
Tejun Heo <tj@kernel.org>, Xue Bin Min <minxb@cn.ibm.com>
Subject: Re: memory.force_empty is deprecated
Date: Thu, 17 Nov 2016 18:13:18 +0800 [thread overview]
Message-ID: <OF1D622B5E.2C033199-ON4825806E.0032B4F0-4825806E.00382767@notes.na.collabserv.com> (raw)
In-Reply-To: <20161104152103.GC8825@cmpxchg.org>
[-- Attachment #1: Type: text/plain, Size: 3026 bytes --]
Thanks for the reply.
When the job is finished, "tasks" is empty, but "memory.stat" still
contains cache, active_file...
# cat tasks
# cat memory.stat
cache 81920
rss 0
mapped_file 0
pgpgin 9440
pgpgout 9420
swap 0
inactive_anon 0
active_anon 0
inactive_file 77824
active_file 4096
unevictable 0
hierarchical_memory_limit 9223372036854775807
hierarchical_memsw_limit 9223372036854775807
total_cache 81920
total_rss 0
total_mapped_file 0
total_pgpgin 9440
total_pgpgout 9420
total_swap 0
total_inactive_anon 0
total_active_anon 0
total_inactive_file 77824
total_active_file 4096
total_unevictable 0
After echo 0 to memory.force_empty, cache is cleaned.
# echo 0 > memory.force_empty
# cat memory.stat
cache 0
rss 0
mapped_file 0
pgpgin 9440
pgpgout 9440
swap 0
inactive_anon 0
active_anon 0
inactive_file 0
active_file 0
unevictable 0
hierarchical_memory_limit 9223372036854775807
hierarchical_memsw_limit 9223372036854775807
total_cache 0
total_rss 0
total_mapped_file 0
total_pgpgin 9440
total_pgpgout 9440
total_swap 0
total_inactive_anon 0
total_active_anon 0
total_inactive_file 0
total_active_file 0
total_unevictable 0
We cannot leave it lazily because when new job reuse the cgroup, "cache"
doesn't be cleaned automatically.
We need a mechanism that clean memory.stat.
Thanks & Regards,
--Zhaohui
From: Johannes Weiner <hannes@cmpxchg.org>
To: Zhao Hui Ding/China/IBM@IBMCN
Cc: Tejun Heo <tj@kernel.org>, cgroups@vger.kernel.org,
linux-mm@kvack.org
Date: 2016-11-04 下午 11:21
Subject: Re: memory.force_empty is deprecated
Hi,
On Fri, Nov 04, 2016 at 04:24:25PM +0800, Zhao Hui Ding wrote:
> Hello,
>
> I'm Zhaohui from IBM Spectrum LSF development team. I got below message
> when running LSF on SUSE11.4, so I would like to share our use scenario
> and ask for the suggestions without using memory.force_empty.
>
> memory.force_empty is deprecated and will be removed. Let us know if it
is
> needed in your usecase at linux-mm@kvack.org
>
> LSF is a batch workload scheduler, it uses cgroup to do batch jobs
> resource enforcement and accounting. For each job, LSF creates a cgroup
> directory and put job's PIDs to the cgroup.
>
> When we implement LSF cgroup integration, we found creating a new cgroup
> is much slower than renaming an existing cgroup, it's about hundreds of
> milliseconds vs less than 10 milliseconds.
Cgroup creation/deletion is not expected to be an ultra-hot path, but
I'm surprised it takes longer than actually reclaiming leftover pages.
By the time the jobs conclude, how much is usually left in the group?
That said, is it even necessary to pro-actively remove the leftover
cache from the group before starting the next job? Why not leave it
for the next job to reclaim it lazily should memory pressure arise?
It's easy to reclaim page cache, and the first to go as it's behind
the next job's memory on the LRU list.
[-- Attachment #2: Type: text/html, Size: 6352 bytes --]
next prev parent reply other threads:[~2016-11-17 10:13 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-04 8:24 Zhao Hui Ding
2016-11-04 15:21 ` Johannes Weiner
2016-11-17 10:13 ` Zhao Hui Ding [this message]
2016-11-22 15:20 ` Michal Hocko
2016-11-17 10:39 ` Balbir Singh
2016-11-18 6:28 ` Zhao Hui Ding
2016-11-18 22:08 ` Balbir Singh
2016-11-22 15:21 ` Michal Hocko
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=OF1D622B5E.2C033199-ON4825806E.0032B4F0-4825806E.00382767@notes.na.collabserv.com \
--to=dingzhh@cn.ibm.com \
--cc=cgroups@vger.kernel.org \
--cc=hannes@cmpxchg.org \
--cc=linux-mm@kvack.org \
--cc=minxb@cn.ibm.com \
--cc=tj@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox