This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug math/20495] x86_64 performance degradation due to AVX/SSE transition penalty
- From: "andrew.n.senkevich at gmail dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Fri, 26 Aug 2016 13:32:29 +0000
- Subject: [Bug math/20495] x86_64 performance degradation due to AVX/SSE transition penalty
- Auto-submitted: auto-generated
- References: <bug-20495-131@http.sourceware.org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=20495
--- Comment #11 from Andrew Senkevich <andrew.n.senkevich at gmail dot com> ---
(In reply to Adam Stylinski from comment #10)
> Created attachment 9476 [details]
> attachment-83016-0.html
>
> Interesting, I will have to try that link flag. What is the reason for that
> working? Everything I can find about that flag is for hardening binaries to
> prevent others from writing into the global offset table.
>
> On Aug 25, 2016 4:03 PM, "andrew.n.senkevich at gmail dot com" <
> sourceware-bugzilla@sourceware.org> wrote:
> >
> > https://sourceware.org/bugzilla/show_bug.cgi?id=20495
> >
> > --- Comment #8 from Andrew Senkevich <andrew.n.senkevich at gmail dot
> com> ---
> > (In reply to Adam Stylinski from comment #2)
> > > Created attachment 9469 [details]
> > > Slower AVX example
> > >
> > > Compile this with -mavx & then compile it with -msse4. The -msse4
> version
> > > will be faster as it's not hitting the SSE to AVX register transition
> > > penalty.
> >
> > You can avoid slowdown also using "-Wl,-z,now".
> >
> > --
> > You are receiving this mail because:
> > You reported the bug.
Current issue because of AVX in _dl_runtime_resolve() during the first call of
SSE sinf().
From man ld:
-z now
When generating an executable or shared library, mark it to tell the dynamic
linker to resolve all symbols when the program is started, or when the shared
library is linked to using dlopen, instead of deferring function call
resolution to the point when the function is first called.
So it may help or may not.
Helps for reduced but not for original test.
--
You are receiving this mail because:
You are on the CC list for the bug.