All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kirill A. Shutemov <kirill@shutemov.name>
To: lkp@lists.01.org
Subject: Re: [mm] 5c0a85fad9: unixbench.score -6.3% regression
Date: Tue, 14 Jun 2016 17:34:17 +0300	[thread overview]
Message-ID: <20160614143417.GC3571@node.shutemov.name> (raw)
In-Reply-To: <20160614085728.GA2430@bbox>

[-- Attachment #1: Type: text/plain, Size: 4071 bytes --]

On Tue, Jun 14, 2016 at 05:57:28PM +0900, Minchan Kim wrote:
> On Wed, Jun 08, 2016 at 11:58:11AM +0300, Kirill A. Shutemov wrote:
> > On Wed, Jun 08, 2016 at 04:41:37PM +0800, Huang, Ying wrote:
> > > "Huang, Ying" <ying.huang@intel.com> writes:
> > > 
> > > > "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> writes:
> > > >
> > > >> On Mon, Jun 06, 2016 at 10:27:24AM +0800, kernel test robot wrote:
> > > >>> 
> > > >>> FYI, we noticed a -6.3% regression of unixbench.score due to commit:
> > > >>> 
> > > >>> commit 5c0a85fad949212b3e059692deecdeed74ae7ec7 ("mm: make faultaround produce old ptes")
> > > >>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > > >>> 
> > > >>> in testcase: unixbench
> > > >>> on test machine: lituya: 16 threads Haswell High-end Desktop (i7-5960X 3.0G) with 16G memory
> > > >>> with following parameters: cpufreq_governor=performance/nr_task=1/test=shell8
> > > >>> 
> > > >>> 
> > > >>> Details are as below:
> > > >>> -------------------------------------------------------------------------------------------------->
> > > >>> 
> > > >>> 
> > > >>> =========================================================================================
> > > >>> compiler/cpufreq_governor/kconfig/nr_task/rootfs/tbox_group/test/testcase:
> > > >>>   gcc-4.9/performance/x86_64-rhel/1/debian-x86_64-2015-02-07.cgz/lituya/shell8/unixbench
> > > >>> 
> > > >>> commit: 
> > > >>>   4b50bcc7eda4d3cc9e3f2a0aa60e590fedf728c5
> > > >>>   5c0a85fad949212b3e059692deecdeed74ae7ec7
> > > >>> 
> > > >>> 4b50bcc7eda4d3cc 5c0a85fad949212b3e059692de 
> > > >>> ---------------- -------------------------- 
> > > >>>        fail:runs  %reproduction    fail:runs
> > > >>>            |             |             |    
> > > >>>           3:4          -75%            :4     kmsg.DHCP/BOOTP:Reply_not_for_us,op[#]xid[#]
> > > >>>          %stddev     %change         %stddev
> > > >>>              \          |                \  
> > > >>>      14321 .  0%      -6.3%      13425 .  0%  unixbench.score
> > > >>>    1996897 .  0%      -6.1%    1874635 .  0%  unixbench.time.involuntary_context_switches
> > > >>>  1.721e+08 .  0%      -6.2%  1.613e+08 .  0%  unixbench.time.minor_page_faults
> > > >>>     758.65 .  0%      -3.0%     735.86 .  0%  unixbench.time.system_time
> > > >>>     387.66 .  0%      +5.4%     408.49 .  0%  unixbench.time.user_time
> > > >>>    5950278 .  0%      -6.2%    5583456 .  0%  unixbench.time.voluntary_context_switches
> > > >>
> > > >> That's weird.
> > > >>
> > > >> I don't understand why the change would reduce number or minor faults.
> > > >> It should stay the same on x86-64. Rise of user_time is puzzling too.
> > > >
> > > > unixbench runs in fixed time mode.  That is, the total time to run
> > > > unixbench is fixed, but the work done varies.  So the minor_page_faults
> > > > change may reflect only the work done.
> > > >
> > > >> Hm. Is reproducible? Across reboot?
> > > >
> > > 
> > > And FYI, there is no swap setup for test, all root file system including
> > > benchmark files are in tmpfs, so no real page reclaim will be
> > > triggered.  But it appears that active file cache reduced after the
> > > commit.
> > > 
> > >     111331 ±  1%     -13.3%      96503 ±  0%  meminfo.Active
> > >      27603 ±  1%     -43.9%      15486 ±  0%  meminfo.Active(file)
> > > 
> > > I think this is the expected behavior of the commit?
> > 
> > Yes, it's expected.
> > 
> > After the change faularound would produce old pte. It means there's more
> > chance for these pages to be on inactive lru, unless somebody actually
> > touch them and flip accessed bit.
> 
> Hmm, tmpfs pages should be in anonymous LRU list and VM shouldn't scan
> anonymous LRU list on swapless system so I really wonder why active file
> LRU is shrunk.

Hm. Good point. I don't why we have anything on file lru if there's no
filesystems except tmpfs.

Ying, how do you get stuff to the tmpfs?

-- 
 Kirill A. Shutemov

WARNING: multiple messages have this Message-ID (diff)
From: "Kirill A. Shutemov" <kirill@shutemov.name>
To: Minchan Kim <minchan@kernel.org>
Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	"Huang, Ying" <ying.huang@intel.com>,
	Rik van Riel <riel@redhat.com>, Michal Hocko <mhocko@suse.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Michal Hocko <mhocko@kernel.org>,
	Vinayak Menon <vinmenon@codeaurora.org>,
	Mel Gorman <mgorman@suse.de>,
	Andrew Morton <akpm@linux-foundation.org>,
	lkp@01.org
Subject: Re: [LKP] [lkp] [mm] 5c0a85fad9: unixbench.score -6.3% regression
Date: Tue, 14 Jun 2016 17:34:17 +0300	[thread overview]
Message-ID: <20160614143417.GC3571@node.shutemov.name> (raw)
In-Reply-To: <20160614085728.GA2430@bbox>

On Tue, Jun 14, 2016 at 05:57:28PM +0900, Minchan Kim wrote:
> On Wed, Jun 08, 2016 at 11:58:11AM +0300, Kirill A. Shutemov wrote:
> > On Wed, Jun 08, 2016 at 04:41:37PM +0800, Huang, Ying wrote:
> > > "Huang, Ying" <ying.huang@intel.com> writes:
> > > 
> > > > "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> writes:
> > > >
> > > >> On Mon, Jun 06, 2016 at 10:27:24AM +0800, kernel test robot wrote:
> > > >>> 
> > > >>> FYI, we noticed a -6.3% regression of unixbench.score due to commit:
> > > >>> 
> > > >>> commit 5c0a85fad949212b3e059692deecdeed74ae7ec7 ("mm: make faultaround produce old ptes")
> > > >>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > > >>> 
> > > >>> in testcase: unixbench
> > > >>> on test machine: lituya: 16 threads Haswell High-end Desktop (i7-5960X 3.0G) with 16G memory
> > > >>> with following parameters: cpufreq_governor=performance/nr_task=1/test=shell8
> > > >>> 
> > > >>> 
> > > >>> Details are as below:
> > > >>> -------------------------------------------------------------------------------------------------->
> > > >>> 
> > > >>> 
> > > >>> =========================================================================================
> > > >>> compiler/cpufreq_governor/kconfig/nr_task/rootfs/tbox_group/test/testcase:
> > > >>>   gcc-4.9/performance/x86_64-rhel/1/debian-x86_64-2015-02-07.cgz/lituya/shell8/unixbench
> > > >>> 
> > > >>> commit: 
> > > >>>   4b50bcc7eda4d3cc9e3f2a0aa60e590fedf728c5
> > > >>>   5c0a85fad949212b3e059692deecdeed74ae7ec7
> > > >>> 
> > > >>> 4b50bcc7eda4d3cc 5c0a85fad949212b3e059692de 
> > > >>> ---------------- -------------------------- 
> > > >>>        fail:runs  %reproduction    fail:runs
> > > >>>            |             |             |    
> > > >>>           3:4          -75%            :4     kmsg.DHCP/BOOTP:Reply_not_for_us,op[#]xid[#]
> > > >>>          %stddev     %change         %stddev
> > > >>>              \          |                \  
> > > >>>      14321 .  0%      -6.3%      13425 .  0%  unixbench.score
> > > >>>    1996897 .  0%      -6.1%    1874635 .  0%  unixbench.time.involuntary_context_switches
> > > >>>  1.721e+08 .  0%      -6.2%  1.613e+08 .  0%  unixbench.time.minor_page_faults
> > > >>>     758.65 .  0%      -3.0%     735.86 .  0%  unixbench.time.system_time
> > > >>>     387.66 .  0%      +5.4%     408.49 .  0%  unixbench.time.user_time
> > > >>>    5950278 .  0%      -6.2%    5583456 .  0%  unixbench.time.voluntary_context_switches
> > > >>
> > > >> That's weird.
> > > >>
> > > >> I don't understand why the change would reduce number or minor faults.
> > > >> It should stay the same on x86-64. Rise of user_time is puzzling too.
> > > >
> > > > unixbench runs in fixed time mode.  That is, the total time to run
> > > > unixbench is fixed, but the work done varies.  So the minor_page_faults
> > > > change may reflect only the work done.
> > > >
> > > >> Hm. Is reproducible? Across reboot?
> > > >
> > > 
> > > And FYI, there is no swap setup for test, all root file system including
> > > benchmark files are in tmpfs, so no real page reclaim will be
> > > triggered.  But it appears that active file cache reduced after the
> > > commit.
> > > 
> > >     111331 ±  1%     -13.3%      96503 ±  0%  meminfo.Active
> > >      27603 ±  1%     -43.9%      15486 ±  0%  meminfo.Active(file)
> > > 
> > > I think this is the expected behavior of the commit?
> > 
> > Yes, it's expected.
> > 
> > After the change faularound would produce old pte. It means there's more
> > chance for these pages to be on inactive lru, unless somebody actually
> > touch them and flip accessed bit.
> 
> Hmm, tmpfs pages should be in anonymous LRU list and VM shouldn't scan
> anonymous LRU list on swapless system so I really wonder why active file
> LRU is shrunk.

Hm. Good point. I don't why we have anything on file lru if there's no
filesystems except tmpfs.

Ying, how do you get stuff to the tmpfs?

-- 
 Kirill A. Shutemov

  reply	other threads:[~2016-06-14 14:34 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-06  2:27 [mm] 5c0a85fad9: unixbench.score -6.3% regression kernel test robot
2016-06-06  2:27 ` [lkp] " kernel test robot
2016-06-06  9:51 ` Kirill A. Shutemov
2016-06-06  9:51   ` [lkp] " Kirill A. Shutemov
2016-06-08  7:21   ` Huang, Ying
2016-06-08  7:21     ` [LKP] [lkp] " Huang, Ying
2016-06-08  8:41     ` Huang, Ying
2016-06-08  8:41       ` [LKP] [lkp] " Huang, Ying
2016-06-08  8:58       ` Kirill A. Shutemov
2016-06-08  8:58         ` [LKP] [lkp] " Kirill A. Shutemov
2016-06-12  0:49         ` Huang, Ying
2016-06-12  0:49           ` [LKP] [lkp] " Huang, Ying
2016-06-12  1:02           ` Linus Torvalds
2016-06-12  1:02             ` [LKP] [lkp] " Linus Torvalds
2016-06-13  9:02             ` Huang, Ying
2016-06-13  9:02               ` [LKP] [lkp] " Huang, Ying
2016-06-14 13:38               ` Minchan Kim
2016-06-14 13:38                 ` [LKP] [lkp] " Minchan Kim
2016-06-15 23:42                 ` Huang, Ying
2016-06-15 23:42                   ` [LKP] [lkp] " Huang, Ying
2016-06-13 12:52             ` Kirill A. Shutemov
2016-06-13 12:52               ` [LKP] [lkp] " Kirill A. Shutemov
2016-06-14  6:11               ` Linus Torvalds
2016-06-14  6:11                 ` [LKP] [lkp] " Linus Torvalds
2016-06-14  8:26                 ` Kirill A. Shutemov
2016-06-14  8:26                   ` [LKP] [lkp] " Kirill A. Shutemov
2016-06-14 16:07                   ` Rik van Riel
2016-06-14 16:07                     ` [LKP] [lkp] " Rik van Riel
2016-06-14 14:03                 ` Christian Borntraeger
2016-06-14 14:03                   ` Christian Borntraeger
2016-06-14  8:57         ` Minchan Kim
2016-06-14  8:57           ` [LKP] [lkp] " Minchan Kim
2016-06-14 14:34           ` Kirill A. Shutemov [this message]
2016-06-14 14:34             ` Kirill A. Shutemov
2016-06-15 23:52             ` Huang, Ying
2016-06-15 23:52               ` [LKP] [lkp] " Huang, Ying
2016-06-16  0:13               ` Minchan Kim
2016-06-16  0:13                 ` [LKP] [lkp] " Minchan Kim
2016-06-16 22:27                 ` Huang, Ying
2016-06-16 22:27                   ` [LKP] [lkp] " Huang, Ying
2016-06-17  5:41                   ` Minchan Kim
2016-06-17  5:41                     ` [LKP] [lkp] " Minchan Kim
2016-06-17 19:26                     ` Huang, Ying
2016-06-17 19:26                       ` [LKP] [lkp] " Huang, Ying
2016-06-20  0:06                       ` Minchan Kim
2016-06-20  0:06                         ` [LKP] [lkp] " Minchan Kim

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=20160614143417.GC3571@node.shutemov.name \
    --to=kirill@shutemov.name \
    --cc=lkp@lists.01.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 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.