From: Yang Shi <yang.shi@linux.alibaba.com>
To: Daniel Jordan <daniel.m.jordan@oracle.com>
Cc: ying.huang@intel.com, tim.c.chen@intel.com, minchan@kernel.org,
akpm@linux-foundation.org, linux-mm@kvack.org,
linux-kernel@vger.kernel.org
Subject: Re: [v4 PATCH 1/2] mm: swap: check if swap backing device is congested or not
Date: Thu, 3 Jan 2019 09:10:13 -0800 [thread overview]
Message-ID: <76d8727a-77b4-d476-af89-9ae1904ec8cd@linux.alibaba.com> (raw)
In-Reply-To: <20190102230054.m5ire5gdhm5fzecq@ca-dmjordan1.us.oracle.com>
On 1/2/19 3:00 PM, Daniel Jordan wrote:
> On Sun, Dec 30, 2018 at 12:49:34PM +0800, Yang Shi wrote:
>> The test on my virtual machine with congested HDD shows long tail
>> latency is reduced significantly.
>>
>> Without the patch
>> page_fault1_thr-1490 [023] 129.311706: funcgraph_entry: #57377.796 us | do_swap_page();
>> page_fault1_thr-1490 [023] 129.369103: funcgraph_entry: 5.642us | do_swap_page();
>> page_fault1_thr-1490 [023] 129.369119: funcgraph_entry: #1289.592 us | do_swap_page();
>> page_fault1_thr-1490 [023] 129.370411: funcgraph_entry: 4.957us | do_swap_page();
>> page_fault1_thr-1490 [023] 129.370419: funcgraph_entry: 1.940us | do_swap_page();
>> page_fault1_thr-1490 [023] 129.378847: funcgraph_entry: #1411.385 us | do_swap_page();
>> page_fault1_thr-1490 [023] 129.380262: funcgraph_entry: 3.916us | do_swap_page();
>> page_fault1_thr-1490 [023] 129.380275: funcgraph_entry: #4287.751 us | do_swap_page();
>>
>> With the patch
>> runtest.py-1417 [020] 301.925911: funcgraph_entry: #9870.146 us | do_swap_page();
>> runtest.py-1417 [020] 301.935785: funcgraph_entry: 9.802us | do_swap_page();
>> runtest.py-1417 [020] 301.935799: funcgraph_entry: 3.551us | do_swap_page();
>> runtest.py-1417 [020] 301.935806: funcgraph_entry: 2.142us | do_swap_page();
>> runtest.py-1417 [020] 301.935853: funcgraph_entry: 6.938us | do_swap_page();
>> runtest.py-1417 [020] 301.935864: funcgraph_entry: 3.765us | do_swap_page();
>> runtest.py-1417 [020] 301.935871: funcgraph_entry: 3.600us | do_swap_page();
>> runtest.py-1417 [020] 301.935878: funcgraph_entry: 7.202us | do_swap_page();
> Hi Yang, I guess runtest.py just calls page_fault1_thr? Being explicit about
Yes, runtest.py is the wrapper script of will-it-scale.
> this may improve the changelog for those unfamiliar with will-it-scale.
Sure.
>
> May also be useful to name will-it-scale and how it was run (#thr, runtime,
> system cpus/memory/swap) for more context.
How about the below description:
The test with page_fault1 of will-it-scale (sometimes tracing may just
show runtest.py that is the wrapper script of page_fault1), which
basically launches NR_CPU threads to generate 128MB anonymous pages for
each thread, on my virtual machine with congested HDD shows long tail
latency is reduced significantly.
Without the patch
page_fault1_thr-1490 [023] 129.311706: funcgraph_entry: #57377.796
us | do_swap_page();
page_fault1_thr-1490 [023] 129.369103: funcgraph_entry: 5.642us
| do_swap_page();
page_fault1_thr-1490 [023] 129.369119: funcgraph_entry: #1289.592
us | do_swap_page();
page_fault1_thr-1490 [023] 129.370411: funcgraph_entry: 4.957us
| do_swap_page();
page_fault1_thr-1490 [023] 129.370419: funcgraph_entry: 1.940us
| do_swap_page();
page_fault1_thr-1490 [023] 129.378847: funcgraph_entry: #1411.385
us | do_swap_page();
page_fault1_thr-1490 [023] 129.380262: funcgraph_entry: 3.916us
| do_swap_page();
page_fault1_thr-1490 [023] 129.380275: funcgraph_entry: #4287.751
us | do_swap_page();
With the patch
runtest.py-1417 [020] 301.925911: funcgraph_entry: #9870.146
us | do_swap_page();
runtest.py-1417 [020] 301.935785: funcgraph_entry: 9.802us
| do_swap_page();
runtest.py-1417 [020] 301.935799: funcgraph_entry: 3.551us
| do_swap_page();
runtest.py-1417 [020] 301.935806: funcgraph_entry: 2.142us
| do_swap_page();
runtest.py-1417 [020] 301.935853: funcgraph_entry: 6.938us
| do_swap_page();
runtest.py-1417 [020] 301.935864: funcgraph_entry: 3.765us
| do_swap_page();
runtest.py-1417 [020] 301.935871: funcgraph_entry: 3.600us
| do_swap_page();
runtest.py-1417 [020] 301.935878: funcgraph_entry: 7.202us
| do_swap_page();
Thanks,
Yang
next prev parent reply other threads:[~2019-01-03 17:11 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-30 4:49 Yang Shi
2018-12-30 4:49 ` [v4 PATCH 2/2] mm: swap: add comment for swap_vma_readahead Yang Shi
2019-01-03 7:41 ` Huang, Ying
2019-01-03 7:41 ` Huang, Ying
2019-01-03 17:12 ` Yang Shi
2019-01-02 23:00 ` [v4 PATCH 1/2] mm: swap: check if swap backing device is congested or not Daniel Jordan
2019-01-03 17:10 ` Yang Shi [this message]
2019-01-03 17:16 ` Daniel Jordan
2019-01-03 17:16 ` Daniel Jordan
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=76d8727a-77b4-d476-af89-9ae1904ec8cd@linux.alibaba.com \
--to=yang.shi@linux.alibaba.com \
--cc=akpm@linux-foundation.org \
--cc=daniel.m.jordan@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=minchan@kernel.org \
--cc=tim.c.chen@intel.com \
--cc=ying.huang@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