Karna@lemmy.ml to Linux@lemmy.ml · 2 months agoUbuntu 25.04 "Plucky Puffin" Development Opens - Defaulting To -O3 Optimizationswww.phoronix.comexternal-linkmessage-square13fedilinkarrow-up11arrow-down10
arrow-up11arrow-down1external-linkUbuntu 25.04 "Plucky Puffin" Development Opens - Defaulting To -O3 Optimizationswww.phoronix.comKarna@lemmy.ml to Linux@lemmy.ml · 2 months agomessage-square13fedilink
minus-squareozymandias117@lemmy.worldlinkfedilinkEnglisharrow-up0·2 months ago-O2 vs -O3 adds -fgcse-after-reload -fipa-cp-clone -floop-interchange -floop-unroll-and-jam -fpeel-loops -fpredictive-commoning -fsplit-loops -fsplit-paths -ftree-loop-distribution -ftree-partial-pre -funswitch-loops -fvect-cost-model=dynamic -fversion-loops-for-strides I don’t think any of these optimizations require more modern hardware?
minus-squarethemoken@startrek.websitelinkfedilinkarrow-up0·2 months agoRight. GCC -f optimizations are basically like “how hard are we going to try to be clever” and are, I believe, orthogonal to the actual instructions used. Machine dependent args start with -m, like -march or -mavx etc.
-O2 vs -O3 adds
-fgcse-after-reload -fipa-cp-clone -floop-interchange -floop-unroll-and-jam -fpeel-loops -fpredictive-commoning -fsplit-loops -fsplit-paths -ftree-loop-distribution -ftree-partial-pre -funswitch-loops -fvect-cost-model=dynamic -fversion-loops-for-strides
I don’t think any of these optimizations require more modern hardware?
Right. GCC -f optimizations are basically like “how hard are we going to try to be clever” and are, I believe, orthogonal to the actual instructions used. Machine dependent args start with -m, like -march or -mavx etc.