• scratchandgame@lemmy.ml
    link
    fedilink
    Tiếng Việt
    arrow-up
    1
    arrow-down
    4
    ·
    3 days ago

    op-ti-mize [verb (trans.)]* … (gcc) to modify executable code so that it fails more quickly.

    • ozymandias117@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      5 days 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?

      • lengau@midwest.social
        link
        fedilink
        arrow-up
        1
        ·
        21 hours ago

        Yeah, adding a separate microarchitecture like amd64v3 would be a separate item. They might be able to do that with amd64v3 overlay repos that only contain packages that most benefit from the newer microarchitecture.

      • themoken@startrek.website
        link
        fedilink
        arrow-up
        1
        ·
        5 days ago

        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.