Am 31.10.24 um 19:02 schrieb Jakub Jelinek:
On Thu, Oct 31, 2024 at 07:47:22PM +0200, drago01 wrote:
Isn't instruction cache footprint already part of "performance" i.e if
performance is improved it shouldn't matter and vice versa, or what am I
missing?
That is not how compilers work, ...
That's not what I meant sorry. I mean we shouldn't worry about size or
cache footprint, in the end what matters is performance. If we compile with
-O3 and binaries are faster it doesn't matter if the code size is larger.
Likewise if they are just bigger and perform worse or similar to -O2 it's
pointless. Or iow cache footprint and binary size are just factors that
determine performance, but not goals on their own.
Most of the code in the distro is cold, executed once or rarely, so making
it unnecessarily larger will slow things down, e.g. by pushing the hot code
out of the caches. As I said, -O3 (or even enabling some specific
optimizations on top of that) is something that should be done selectively for code
known to be hot/important for the performance, one runs a profiler, sees
what code is performance critical, tries if -O3 helps that code, and if yes,
uses it for that. Enabling it blindly is not what it is designed for, -O2
is the level meant to be used for most of the code.
Jakub
While we are at it, please don't mix -O2 and -O3 while compiling the
same program.
This can break things and is really not fun to debug (and that's also
the reason why a lot of buildsystems don't support that).
Regards
Kilian Hanich
--
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue