4 ms·
I'd love to understand the tradeoffs here. If it's just compiler optimizations, why wouldn't Mozilla turn them on themselves? They've done huge man-century perf
by skrebbel 3y ago
I'd love to understand the tradeoffs here. If it's just compiler optimizations, why wouldn't Mozilla turn them on themselves? They've done huge man-century performance projects, I'd be surprised they'd let such low-hanging fruit hang without a good reason.
- judiisis 3y agoThey will need to have multiple builds for same os
- aredox 3y agoIt's hardware-dependent.
- secondcoming 3y agoThey would have to compile for a generic x64 CPU to ensure compatibility with older CPUs. By targeting a specific CPU or `march=native` the compiler may avail of SIMD features more where appropriate. Whether those types of optimisations are relevant for a browser is up for debate.
- JonChesterfield 3y agoMain thing is building for zen2 gives you a binary that can't run on a core2 x86-64 interpreter. Secondary is that compiler optimisations are prone to creating binaries that don't work like the less optimised version. Not everyone has the hardline "if it changes behaviour it's a bug, not an optimisation" perspective. Those that do still make mistakes. LTO is really good at detecting aliasing violations between translation units which were previously benign but can now be "optimised" into ruin. PGO was originally changing branch probabilities which should be harmless but I haven't looked recently, it might be more aggressive now.