Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

perf-staging compiled with -O0 #7337

Closed
mmeeks opened this issue Sep 29, 2023 · 1 comment
Closed

perf-staging compiled with -O0 #7337

mmeeks opened this issue Sep 29, 2023 · 1 comment
Assignees
Labels
bug Something isn't working performance Improving COOL performance

Comments

@mmeeks
Copy link
Contributor

mmeeks commented Sep 29, 2023

It seem we're generating bogus profiles on staging-perf because the code is being compiled with -O0 - and this generates -amazingly- rubbish code; eg. the SIMD Delta behavior is slower than the CPU version, despite being 2x as fast when compiled properly.

This distorts everything we do when it comes to optimization; it would be -really- good to fix that ASAP :-)

proof:

strings /usr/bin/coolforkit | grep arch=x86
GNU C11 7.5.0 -mtune=generic -march=x86-64 -g -g -O2 -std=gnu11 -fgnu89-inline -fmessage-length=0 -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -fmerge-all-constants -frounding-math -fstack-protector-strong -fpatchable-function-entry=16,14 -fmath-errno -fno-stack-protector -ftls-model=initial-exec -fPIE
GNU C++14 7.5.0 -mtune=generic -march=x86-64 -g -O0 -std=c++1z
GNU C11 7.5.0 -mavx2 -mtune=generic -march=x86-64 -g -O0
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Can we check the product builds too to ensure they are optimized as expected ? =)

@caolanm might be interested too ...

@mmeeks mmeeks added bug Something isn't working performance Improving COOL performance labels Sep 29, 2023
@caolanm
Copy link
Contributor

caolanm commented Oct 5, 2023

strings now has:

strings /usr/bin/coolforkit | grep arch=x86
GNU C11 7.5.0 -mtune=generic -march=x86-64 -g -g -O2 -std=gnu11 -fgnu89-inline -fmessage-length=0 -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -fmerge-all-constants -frounding-math -fstack-protector-strong -fpatchable-function-entry=16,14 -fmath-errno -fno-stack-protector -ftls-model=initial-exec -fPIE
GNU C++14 7.5.0 -mtune=generic -march=x86-64 -g -O2 -std=c++1z
GNU C11 7.5.0 -mavx2 -mtune=generic -march=x86-64 -g -O2
GNU C++14 7.5.0 -mtune=generic -march=x86-64 -g -O2 -std=gnu++14 -ffunction-sections -fdata-sections -frandom-seed=ops.lo -fmessage-length=0 -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -fPIC
GNU C++14 7.5.0 -mtune=generic -march=x86-64 -g -O2 -std=gnu++14 -ffunction-sections -fdata-sections -frandom-seed=path.lo -fmessage-length=0 -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -fPIC
GNU C++14 7.5.0 -mtune=generic -march=x86-64 -g -O2 -std=gnu++14 -ffunction-sections -fdata-sections -frandom-seed=dir.lo -fmessage-length=0 -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -fPIC
GNU C11 7.5.0 -mlong-double-80 -mtune=generic -march=x86-64 -g -g -g -O2 -O2 -O2 -fmessage-length=0 -fmessage-length=0 -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -fbuilding-libgcc -fno-stack-protector -fpic -fvisibility=hidden
GNU C11 7.5.0 -mtune=generic -march=x86-64 -g -g -O2 -std=gnu11 -fgnu89-inline -fmessage-length=0 -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -fmerge-all-constants -frounding-math -fstack-protector-strong -fpatchable-function-entry=16,14 -fmath-errno -fno-stack-protector -fPIC -fstack-protector-strong -ftls-model=initial-exec

so I imagine we can now close this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working performance Improving COOL performance
Projects
Archived in project
Development

No branches or pull requests

3 participants