Logo Blogo

Gcc 4.5, Performance Regression

Pubblicato: 26 giu 2010 da Lpt on fire!

Il team di sviluppo di Mozilla ha notato un calo delle prestazioni nei benchmark automatizzati dopo il passaggio da gcc 4.3 a gcc 4.5.

Il problema è presente in quasi tutti i test ed è misurabile in un peggioramento fra il 4% ed il 19% sulla piattaforma Linux a 32bit e 64bit. Una regressione delle prestazioni dei binari prodotti dal compilatore piuttosto importante che è già stata segnalata sulla mailing list di GCC e che è stata scoperta prontamente grazie all’infrastruttura automatica di compilazione e benchmark.

Al momento nel team Mozilla si sta riconsiderando il passaggio a gcc 4.5 che era stato scelto per il supporto ai plugin e la possibilità di compilazione con PGO (Profile-Guided Optimizations).

Via | Phoronix

1 stelle2 stelle3 stelle4 stelle5 stelle (1 Voti | Media: 5 su 5)
condividi condividi
7 commenti

Commenti dei lettori

(Inserisci un commento - Nascondi commenti anonimi)
  • Profilo di thelostone

    thelostone

    26 giu 2010 - 21:06 - #1
    0 punti
    Up Down

    Sì ma dalla mailing list leggo

    Most of the code is compiled with -fPIC -fno-rtti -fno-exceptions -Os

    e dal man di gcc

    -Os

    Optimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size.

    -Os disables the following optimization flags: -falign-functions -falign-jumps -falign-loops -falign-labels -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays -ftree-vect-loop-version

    Magari possono provare con -O2 o -O3 e vedere se migliorano le prestazioni. Anzi lo faranno sicuramente. Sembra improbabile una regressione del genere in GCC.

  • Profilo di rayman

    rayman

    27 giu 2010 - 02:52 - #2
    0 punti
    Up Down

    Si, però lo sviluppatore Mozilla, al messaggio successivo dice che:

    “For what it’s worth, Mozilla-compiled-with-GCC has historically been faster compiled -Os instead of -O2. This is because the vast majority of our code is cold, and -O2 has produced substantially larger code, which causes our hot code to be evicted from processor caches more often.”

  • Profilo di thelostone

    thelostone

    27 giu 2010 - 03:43 - #3
    0 punti
    Up Down

    Ah, non l’avevo letto. Bè allora non gli rimane che tornare alla 4.3 e aspettare novità.

  • Andrea R

    27 giu 2010 - 05:50 - #4
    0 punti
    Up Down

    Io gentoo la compilavo con -Os e un tot di opzioni da -O2 e -O3. Magari potrebbero farlo anche loro

  • sirus

    27 giu 2010 - 09:39 - #5
    0 punti
    Up Down

    Mozilla non è la prima che ha notato la regressione di GCC dalla versione 4.3 alla 4.5. C’è anche da dire che una regressione altrettanto vistosa c’è stata tra la versione 4.3 e la versione 4.4, il vero problema è che si è fatto poco o nulla nel passaggio dalla versione 4.4 alla 4.5 per migliorare la situazione. :(

  • Profilo di sherpya

    sherpya

    29 giu 2010 - 12:56 - #6
    0 punti
    Up Down

    bah piu’ veloce con -Os mi sembra na cazzata

    cmq se fate:

    about:buildconfig

    vedete le opzioni

  • Profilo di sherpya

    sherpya

    29 giu 2010 - 12:57 - #7
    0 punti
    Up Down

    mingw da 4.3 in poi non e’ + usabile almeno per compilare codice “violento” come ffmpeg/mplayer, nella 4.5 svn sembrano aver risolto alcuni problemi ma siamo sempre sull’instabile andante

L'email è richiesta ma non verrà mostrata ai visitatori.
Commenta questo articolo

Registrati per riservare il tuo nickname preferito su tutti i blog di Blogo e per caricare il tuo avatar. Se sei già registrato, effettua il login per usare il tuo nickname.

Si No
I commenti sono sottoposti alle linee guida per la moderazione.

Anteprima del commento