linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Waiman Long <longman@redhat.com>
To: Xing Zhengjun <zhengjun.xing@linux.intel.com>,
	Michal Hocko <mhocko@suse.com>, Rong Chen <rong.a.chen@intel.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Shakeel Butt <shakeelb@google.com>,
	Chris Down <chris@chrisdown.name>,
	Johannes Weiner <hannes@cmpxchg.org>,
	Roman Gushchin <guro@fb.com>, Tejun Heo <tj@kernel.org>,
	Vladimir Davydov <vdavydov.dev@gmail.com>,
	Yafang Shao <laoar.shao@gmail.com>,
	LKML <linux-kernel@vger.kernel.org>,
	lkp@lists.01.org, lkp@intel.com, zhengjun.xing@intel.com
Subject: Re: [LKP] Re: [mm/memcg] bd0b230fe1: will-it-scale.per_process_ops -22.7% regression
Date: Tue, 3 Nov 2020 21:46:26 -0500	[thread overview]
Message-ID: <a31c7c6c-ea82-b690-3504-2133178efdaa@redhat.com> (raw)
In-Reply-To: <bd87e8bd-c918-3f41-0cc5-e2927d91625f@linux.intel.com>

On 11/3/20 8:20 PM, Xing Zhengjun wrote:
>
>
> On 11/2/2020 6:02 PM, Michal Hocko wrote:
>> On Mon 02-11-20 17:53:14, Rong Chen wrote:
>>>
>>>
>>> On 11/2/20 5:27 PM, Michal Hocko wrote:
>>>> On Mon 02-11-20 17:15:43, kernel test robot wrote:
>>>>> Greeting,
>>>>>
>>>>> FYI, we noticed a -22.7% regression of 
>>>>> will-it-scale.per_process_ops due to commit:
>>>>>
>>>>>
>>>>> commit: bd0b230fe14554bfffbae54e19038716f96f5a41 ("mm/memcg: unify 
>>>>> swap and memsw page counters")
>>>>> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git 
>>>>> master
>>>> I really fail to see how this can be anything else than a data 
>>>> structure
>>>> layout change. There is one counter less.
>>>>
>>>> btw. are cgroups configured at all? What would be the configuration?
>>>
>>> Hi Michal,
>>>
>>> We used the default configure of cgroups, not sure what 
>>> configuration you
>>> want,
>>> could you give me more details? and here is the cgroup info of 
>>> will-it-scale
>>> process:
>>>
>>> $ cat /proc/3042/cgroup
>>> 12:hugetlb:/
>>> 11:memory:/system.slice/lkp-bootstrap.service
>>
>> OK, this means that memory controler is enabled and in use. Btw. do you
>> get the original performance if you add one phony page_counter after the
>> union?
>>
> I add one phony page_counter after the union and re-test, the 
> regression reduced to -1.2%. It looks like the regression caused by 
> the data structure layout change.

So it looks like the regression is caused by false cacheline sharing of 
two or more hot items in mem_cgroup. As the size of the page_counter is 
112 bytes, eliminating one counter will shift down the cacheline 
boundary by 16 bytes. We probably need to use perf to find out what 
those hot items are for this particular benchmark.

Cheers,
Longman


  reply	other threads:[~2020-11-04  2:46 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-02  9:15 [mm/memcg] bd0b230fe1: will-it-scale.per_process_ops -22.7% regression kernel test robot
2020-11-02  9:27 ` Michal Hocko
2020-11-02  9:53   ` [LKP] " Rong Chen
2020-11-02 10:02     ` Michal Hocko
2020-11-04  1:20       ` Xing Zhengjun
2020-11-04  2:46         ` Waiman Long [this message]
2020-11-04  8:15         ` Michal Hocko
2020-11-12 12:28           ` Feng Tang
2020-11-12 14:16             ` Michal Hocko
2020-11-12 16:43               ` Waiman Long
2020-11-13  7:39                 ` Feng Tang
2020-11-13  7:34               ` Feng Tang
2020-11-20 11:44                 ` Feng Tang
2020-11-20 13:19                   ` Michal Hocko
2020-11-20 14:30                     ` Feng Tang
2020-11-25  6:24                   ` Feng Tang
2020-11-26  1:34                     ` Waiman Long
2020-11-26 17:39                     ` Linus Torvalds
2020-11-30  8:48                     ` 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=a31c7c6c-ea82-b690-3504-2133178efdaa@redhat.com \
    --to=longman@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=chris@chrisdown.name \
    --cc=guro@fb.com \
    --cc=hannes@cmpxchg.org \
    --cc=laoar.shao@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkp@intel.com \
    --cc=lkp@lists.01.org \
    --cc=mhocko@suse.com \
    --cc=rong.a.chen@intel.com \
    --cc=shakeelb@google.com \
    --cc=tj@kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=vdavydov.dev@gmail.com \
    --cc=zhengjun.xing@intel.com \
    --cc=zhengjun.xing@linux.intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).