kernelnewbies.kernelnewbies.org archive mirror
 help / color / mirror / Atom feed
From: sarsanaee@gmail.com (SeyedAlireza Sanaee)
To: kernelnewbies@lists.kernelnewbies.org
Subject: Testing the performance impact of kernel modifications
Date: Tue, 23 Oct 2018 21:59:46 +0800	[thread overview]
Message-ID: <CAL=0pobA+nJ4Yz_e_rg_N5TYLvyNqh55ZkALRpjqhaqAjfg_KQ@mail.gmail.com> (raw)
In-Reply-To: <CALS6=qUaxScx5Q4d2o6=vqPj1DzyB_r=KLUZe23XcrFELCw-yA@mail.gmail.com>

I believe there is no definite methodology, it is all experimental and
dependent on the applications you are running and as Valdis told on the
changes you would like to make. Basically, when a paper offers a new
algorithm or design then they should have tested it on their own testbed.
They may report their experimental methodology in the paper or even have
the experiment scripts on the Github. However, other than the applications,
and your changes, the testbed itself is also important. Their system may
work with a CPU frequency different than yours. So you might not see the
performance gain as they reported and achieved in the paper.

For instance, concerning some network enhancement in TCP stack, some people
may improve the end to end latency just 10s of microseconds and you suppose
to capture those minor microseconds in your experiments. It is really hard
but not impossible, it basically takes time and effort + *extensive
evaluations*.

I know that nowadays system software papers are pretty practical, and they
try to build a working systems. I'm particularly talking about SOSP and
OSDI papers.

On Tue, Oct 16, 2018 at 3:50 AM Carter Cheng <cartercheng@gmail.com> wrote:

> Basically I am looking for methodology guidelines for doing my own testing
> on a bunch of techniques in different papers and seeing what the
> performance impact is overall. Are there guidelines for doing such things?
>
> On Tue, Oct 16, 2018 at 3:19 AM <valdis.kletnieks@vt.edu> wrote:
>
>> On Tue, 16 Oct 2018 01:23:45 +0800, Carter Cheng said:
>> > I am actually looking at some changes that litter the kernel with short
>> > code snippets and thus according to papers i have read can result in CPU
>> > hits of around 48% when applied is userspace.
>>
>> You're going to need to be more specific.  Note that 48% increase in a
>> micro-benchmark
>> doesn't necessarily translate to a measurable performance change - for
>> example, I have a
>> kernel build running right now with a cold file cache, and it's only
>> using 6-8% of the CPU in
>> kernel mode (the rest being gcc in userspace and waiting for the
>> spinning-oxide disk). If the
>> entire kernel slowed down by 50% that would only be 3-4% change visible
>> at the macro level.
>>
>> >  but I haven't seen any kernel space papers measuring degradations in
>> overall
>> > system performance when adding safety checks(perhaps redundant
>> sometimes) into
>> > the kernel
>>
>> Well.. here's the thing.  Papers are usually written by academics and
>> trade
>> journal pundits, not people who write code for a living.  As a result,
>> they end
>> up comparing released code versions.  As a worked example, see how the
>> whole
>> Spectre thing turned out - the *initial* fears were that we'd see a huge
>> performance drop.  But the patches that finally shipped for the Linux
>> kernel
>> were after a bunch of clever people had thought about it and come up with
>> less
>> intrusive ways to close the security issue.
>>
>> (Having said that, the guys at Phoronix do a reasonable job of doing
>> macro-level benchmarks of each kernel release and pointing out if there's
>> a big
>> hit in a subsystem).
>>
>> And as I said earlier - sometimes it doesn't matter, because correctness
>> trumps performance.
>>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20181023/85a09f1f/attachment.html>

      reply	other threads:[~2018-10-23 13:59 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-15 15:42 Testing the performance impact of kernel modifications Carter Cheng
2018-10-15 17:07 ` valdis.kletnieks at vt.edu
2018-10-15 17:23   ` Carter Cheng
2018-10-15 19:19     ` valdis.kletnieks at vt.edu
2018-10-15 19:48       ` Carter Cheng
2018-10-23 13:59         ` SeyedAlireza Sanaee [this message]

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='CAL=0pobA+nJ4Yz_e_rg_N5TYLvyNqh55ZkALRpjqhaqAjfg_KQ@mail.gmail.com' \
    --to=sarsanaee@gmail.com \
    --cc=kernelnewbies@lists.kernelnewbies.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;
as well as URLs for NNTP newsgroup(s).