# CFLAGS, CXXFLAGS e gcc 3.4

## Ministers

ciao a tutti,

ho deciso di installare gentoo sul mio portatile visto che tutti parlano bene di quest distro ho pensato che vale la pena provarla  :Wink: 

ho alcuni dubbi pero':

intanto dico che ho un Pentium4 2.6 Ghz e pensavo di mettere nel make.conf queste opzioni per la compilazione:

CHOST="i686-pc-linux-gnu" 

CFLAGS="-march=i686 -O3 -pipe -fomit-frame-pointer" 

CXXFLAGS="-march=i686 -O3 -pipe -fomit-frame-pointer" 

dite che vanno bene o ci sono opzione che posso aggiungere per far andare il sistema ancora meglio?

c'e' qualche differenza tra -mcpu e -march?

potrebbe aiutare aggiungere l'opzione "-fexpensive-optimizations"?

mi pare che questa allunghi il tempodi compilazione (non mi interessa moltissimo, tanto ormai gia' che ci sono faccio le cose per bene  :Razz: ) ma dovrebbe anche migliorare i programmi no?

poi un'altra cosa, ho visto che si e' parlato anche di Gcc 3.4, dovendo cmq installare il sistema da cima a fondo dite che mi conviene partire dallo stage 1 e compilare tutto con la nuova versione di GCC?

vi ringrazio per le eventuali risposte, grazie grazie grazie  :Smile: 

Ministers

----------

## koma

https://forums.gentoo.org/viewtopic.php?t=166137  :Wink:  Bastava guardare il forum italiano ne abbiamo e ne stiamo discutendo in questi giorni ps BENVENUTO  :Wink: 

----------

## Ministers

intanto grazie  :Smile: 

quel post lo avevo letto gia' e infatti credo che usero' la versione 3.4

riguardo ai CFLAGS invece? intanto mi sto leggendo un post kilometrico sui forum inglesi  :Wink: 

ciao

Minister

----------

## fedeliallalinea

Secondo me quello ottimizzazioni vanno piu' che bene

----------

## koma

mh io sto provando queste:

```
####IMPOSTAZIONI GENERALI#####  

FEATURES="-sandbox"             

ACCEPT_KEYWORDS="~x86"          

PORTDIR_OVERLAY="/usr/local/portage/"

#####USE#####                   

USE="aalib svga fbcon svga X gtk2 ipv6 cups png tiff jpg kde jpeg opengl ssl -kde gnome alsa crypt avi directfb java gpm gif truetype apache2 mysql cups foomaticdb ppds samba -arts -sandbox" 

#####MIRRORS#####

GENTOO_MIRRORS="ftp://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://gentoo.zie.pg.gda.pl http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://gentoo.tiscali.nl/gentoo/"

SYNC="rsync://rsync1.it.gentoo.org/gentoo-portage" 

#####COMPILAZIONE#####

CCFLAGS="-O2 -march=pentium4 -frename-registers -fforce-addr -fforce-mem-ffast-math -ftracer -pipe -fomit-frame-pointer -fweb" 

CFLAGS="-O2 -march=pentium4 -frename-registers -fforce-addr -fforce-mem-ffast-math -ftracer -pipe -fomit-frame-pointer -fweb" 

CHOST="i686-pc-linux-gnu" 

```

----------

## fedeliallalinea

 *koma wrote:*   

> mh io sto provando queste:

 

E a cosa ti servono tutte quello ottimizzazioni? Credi veramente di incrementare la velocita'?

----------

## koma

boh io ce le ho messe  :Smile:  pensi che non servano proprio per nulla e rallentino solo la compilazione? se si quali mi consigli?

----------

## fedeliallalinea

 *koma wrote:*   

> boh io ce le ho messe  pensi che non servano proprio per nulla e rallentino solo la compilazione? se si quali mi consigli?

 

Io fossi in te lascerei 

```
CCFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer"
```

che sono anche quelle consigliate su http://www.freehackers.org/gentoo/gccflags/flag_gcc3.html . Le altre non ho guardato a cosa servono ma penso che facciano la differenza solo per cose specifiche. E come dice cerri troppe ottimizzazioni rischiano di rallentare il tutto  :Very Happy:  .

----------

## Ministers

vi ringrazio  :Very Happy: 

----------

## blackfede

Inoltre flags troppo spinte fanno diventare MOOOOLTO instabili i programmi....

----------

## theRealMorpheu5

Le mie ( https://forums.gentoo.org/viewtopic.php?t=179665 ) forse non saranno spintissime però non ho mai riscontrato instabilità. Anzi. Quasi meno che in altre distro.

----------

## fedeliallalinea

 *theRealMorpheu5 wrote:*   

> Le mie ( https://forums.gentoo.org/viewtopic.php?t=179665 ) forse non saranno spintissime però non ho mai riscontrato instabilità. Anzi. Quasi meno che in altre distro.

 

Vabbe non capisco questo accanimento per le cflags

----------

## theRealMorpheu5

Come sarebbe? Ci sono e le uso. E' giusto così  :Very Happy: 

----------

## codadilupo

 *koma wrote:*   

> mh io sto provando queste:
> 
> [code]####IMPOSTAZIONI GENERALI#####  
> 
> FEATURES="-sandbox"

 

passi tutto il resto, sul quale non discuto, visto che non mi sono mai documentato granche', ma questa proprio non l'ho capita   :Shocked: 

Coda

----------

## Cazzantonio

Ma cambia davvero qualcosa ad usare cflag spinte?

Ci sono dei dati che dicano che le applicazioni (e quali) vadano più veloci? (e di quanto?)

Altrimenti tutte le discussioni sulle cflags che ho visto in questo forum mi sembrano dei dirscorsi un po' scaramantici tipo: "prova queste cflags... portano fortuna! e se metti -O15 ti arriva a casa una donna nuda con una birra fresca in mano che ti dice bravo! il tuo pc è il più veloce!"

----------

## blackfede

 *Cazzantonio wrote:*   

> Ma cambia davvero qualcosa ad usare cflag spinte?
> 
> Ci sono dei dati che dicano che le applicazioni (e quali) vadano più veloci? (e di quanto?)
> 
> 

 

Mi pare che in una delle tante discussioni sulle CFLAGS che ci sono state, si era postato un link ad un programmino fatto da un tizio del forum, che testava le performance delle varire flags. In questo momento non ricordo minimamente il nome.....

 *Cazzantonio wrote:*   

> 
> 
>  "prova queste cflags... portano fortuna! e se metti -O15 ti arriva a casa una donna nuda con una birra fresca in mano che ti dice bravo! il tuo pc è il più veloce!"

 

Per questro posso confermare che con -O1000 i programmi vanno talmente veloci che sanno gia che tu prima o poi li chiuderai...e quindi si chiudono da soli appena avviati....stupefancente!!   :Razz: 

----------

## fedeliallalinea

 *blackfede wrote:*   

> Per questro posso confermare che con -O1000 i programmi vanno talmente veloci che sanno gia che tu prima o poi li chiuderai...e quindi si chiudono da soli appena avviati....stupefancente!!  

 

Tipo l'altro OS che talmente intelligente che si spegne da solo.

----------

## shev

 *Cazzantonio wrote:*   

> Ma cambia davvero qualcosa ad usare cflag spinte?

 

Imho cambia poco o nulla, i benefici si possono sentire solo in determinate situazioni/applicazioni. Sempre che ci siano benefici, visto che esagerare può portare, instabilità a parte, a rallentamenti anzichè incrementi di prestazioni.

In sintesi bastano flags "normali", come i vari -O2, -O3, -pipe e compagnia, il resto è tutto folklore. Anche perchè passare da un sistema compilato con -O1 per 486 ad uno con -O2 per lo specifico processore già può bastare, la differenza di prestazione "grossa" la fa questo; le flags chilometriche ammesso che migliorino le prestazioni, lo fanno di una percentuale praticamente insignificante (IMHO).

/me che agli esordi con gentoo usava flags chilometriche, come tutti, poi ha capito e s'è sistemato su flags brevi e semplici  :Smile: 

----------

## fedeliallalinea

Concordo a pieno con Shev. Io ho sempre usato cflags corte perche' ho avuto un buon maestro   :Very Happy: 

----------

## FonderiaDigitale

troppa roba bimbi... O3 in gcc 3.4 ha il vantaggio di essere molto stabile, aggiunge solo '-f web -finline-functions' e oltretutto, se aggiungete solo O3 glie build risaputi delicati con queste ottimizzazioni, vengono filtrate automaticamente e non rischiate di trovarvi a bestemmiare che non vi finisce un emerge.

una cosa da aggiungere e' invece -ffast-math, se non dovete fare calcoli di precisione, aiuta molto, ed e' praticamente indolore.

----------

## shanghai

Il programmino che setta le flags di cui s'è parlato è il famoso acovea

Ci sono solo due o tre flags "problematiche" di cui si discute nel post, le altre -forse perché scelte dagli algoritmi- si dimostrano stabili (e gli incrementi di velocità sono, a dire di chi lo sta già usando, molto grandi). Acovea è nel portage, ma poi conviene usare anche i due script disponibili nel post per fare il benchmark (che può durare anche 4 giorni).

Io sono stato un sostenitore di poche-ma-buone finora, a parte che in un paio di occasioni: ma ora sto cimentandomi con acovea...

----------

