From: Borislav Petkov <bp@alien8.de>
To: Ingo Molnar <mingo@kernel.org>
Cc: Andy Lutomirski <luto@amacapital.net>,
Oleg Nesterov <oleg@redhat.com>, Rik van Riel <riel@redhat.com>,
x86@kernel.org, linux-kernel@vger.kernel.org,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [RFC PATCH] x86, fpu: Use eagerfpu by default on all CPUs
Date: Sat, 21 Feb 2015 17:38:40 +0100 [thread overview]
Message-ID: <20150221163840.GA32073@pd.tnic> (raw)
In-Reply-To: <20150221093150.GA27841@gmail.com>
On Sat, Feb 21, 2015 at 10:31:50AM +0100, Ingo Molnar wrote:
> So it would be nice to test this on at least one reasonably old (but
> not uncomfortably old - say 5 years old) system, to get a feel for
> what kind of performance impact it has there.
Yeah, this is exactly what Andy and I were talking about yesterday on
IRC. So let's measure our favourite workload - the kernel build! :-) My
assumption is that libc uses SSE for memcpy and thus the FPU will be
used. (I'll trace FPU-specific PMCs later to confirm).
Machine is an AMD F10h which should be 5-10 years old depending on what
you're looking at (uarch, revision, ...).
Numbers look great to me in the sense that we have a very small
improvement and the rest stays the same. Which would mean, killing lazy
FPU does not bring slowdown, if no improvement, but will bring a huuge
improvement in code quality and the handling of the FPU state by getting
rid of the lazyness...
IPC is the same, branch misses are *down* a bit, cache misses go up a
bit probably because we're shuffling FPU state more often to mem, page
faults go down and runtime goes down by half a second:
plain 3.19:
==========
perf stat -a -e task-clock,cycles,instructions,branch-misses,cache-misses,faults,context-switches,migrations --repeat 10 --sync --pre ~/bin/pre-build-kernel.sh make -s -j12
Performance counter stats for 'system wide' (10 runs):
1408897.576594 task-clock (msec) # 6.003 CPUs utilized ( +- 0.15% ) [100.00%]
3,137,565,760,188 cycles # 2.227 GHz ( +- 0.02% ) [100.00%]
2,849,228,161,721 instructions # 0.91 insns per cycle ( +- 0.00% ) [100.00%]
32,391,188,891 branch-misses # 22.990 M/sec ( +- 0.02% ) [100.00%]
27,879,813,595 cache-misses # 19.788 M/sec ( +- 0.01% )
27,195,402 faults # 0.019 M/sec ( +- 0.01% ) [100.00%]
1,293,241 context-switches # 0.918 K/sec ( +- 0.09% ) [100.00%]
69,548 migrations # 0.049 K/sec ( +- 0.22% )
234.681331200 seconds time elapsed ( +- 0.15% )
eagerfpu=ENABLE
===============
Performance counter stats for 'system wide' (10 runs):
1405208.771580 task-clock (msec) # 6.003 CPUs utilized ( +- 0.19% ) [100.00%]
3,137,381,829,748 cycles # 2.233 GHz ( +- 0.03% ) [100.00%]
2,849,059,336,718 instructions # 0.91 insns per cycle ( +- 0.00% ) [100.00%]
32,380,999,636 branch-misses # 23.044 M/sec ( +- 0.02% ) [100.00%]
27,884,281,327 cache-misses # 19.844 M/sec ( +- 0.01% )
27,193,985 faults # 0.019 M/sec ( +- 0.01% ) [100.00%]
1,293,300 context-switches # 0.920 K/sec ( +- 0.08% ) [100.00%]
69,791 migrations # 0.050 K/sec ( +- 0.18% )
234.066525648 seconds time elapsed ( +- 0.19% )
--
Regards/Gruss,
Boris.
ECO tip #101: Trim your mails when you reply.
--
next prev parent reply other threads:[~2015-02-21 16:39 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-20 18:58 [RFC PATCH] x86, fpu: Use eagerfpu by default on all CPUs Andy Lutomirski
2015-02-20 19:05 ` Borislav Petkov
2015-02-21 9:31 ` Ingo Molnar
2015-02-21 16:38 ` Borislav Petkov [this message]
2015-02-21 17:29 ` Borislav Petkov
2015-02-21 18:39 ` Ingo Molnar
2015-02-21 19:15 ` Borislav Petkov
2015-02-21 19:23 ` Ingo Molnar
2015-02-21 21:36 ` Borislav Petkov
2015-02-22 8:18 ` Ingo Molnar
2015-02-22 8:22 ` Ingo Molnar
2015-02-22 10:48 ` Borislav Petkov
2015-02-22 12:50 ` Borislav Petkov
2015-02-22 12:57 ` Ingo Molnar
2015-02-22 13:21 ` Borislav Petkov
2015-02-22 0:34 ` Maciej W. Rozycki
2015-02-22 2:18 ` Andy Lutomirski
2015-02-22 11:06 ` Borislav Petkov
2015-02-23 1:45 ` Rik van Riel
2015-02-23 5:22 ` Andy Lutomirski
2015-02-23 12:51 ` Rik van Riel
2015-02-23 15:03 ` Borislav Petkov
2015-02-23 15:51 ` Rik van Riel
2015-02-23 18:06 ` Borislav Petkov
2015-02-23 21:17 ` Maciej W. Rozycki
2015-02-23 21:21 ` Rik van Riel
2015-02-23 22:14 ` Linus Torvalds
2015-02-24 0:56 ` Maciej W. Rozycki
2015-02-24 0:59 ` Andy Lutomirski
2015-02-23 22:27 ` Maciej W. Rozycki
2015-02-23 23:44 ` Andy Lutomirski
2015-02-24 2:14 ` Maciej W. Rozycki
2015-02-24 2:31 ` Andy Lutomirski
2015-02-24 14:43 ` Rik van Riel
2015-02-21 18:34 ` Ingo Molnar
2015-02-23 14:59 ` Oleg Nesterov
2015-02-23 15:11 ` Borislav Petkov
2015-02-23 15:53 ` Rik van Riel
2015-02-23 18:40 ` Oleg Nesterov
2015-02-24 19:15 ` Denys Vlasenko
2015-02-25 0:07 ` Andy Lutomirski
2015-02-25 10:37 ` Borislav Petkov
2015-02-25 10:50 ` Ingo Molnar
2015-02-25 10:45 ` Ingo Molnar
2015-02-25 17:12 ` Some results (was: Re: [RFC PATCH] x86, fpu: Use eagerfpu by default on all CPUs) Borislav Petkov
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=20150221163840.GA32073@pd.tnic \
--to=bp@alien8.de \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@amacapital.net \
--cc=mingo@kernel.org \
--cc=oleg@redhat.com \
--cc=riel@redhat.com \
--cc=torvalds@linux-foundation.org \
--cc=x86@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