# Yet Another Thread CFLAGS vs Performance

## .:chrome:.

randomaze: Thread splittato da questo.

 *Ic3M4n wrote:*   

> beh, è anche vero però che per poter fare dei bug report "decenti" bisogna comunque anche sapere di cosa  si parla, i bug report completi comprendono anche patch al programma per risolvere il problema... personalmente credo che l'utilizzo di software instabile per debugging dell'applicazione sia una cosa che non tutti ci possiamo permettere, io in primis non saprei scrivere patch per cambiare il nome di un device, figuriamoci andare a toccare gcc. piuttosto anche io faccio parte di quella parte di persone che accetta i rischi di mantenere parte del sw instabile per poter fare lo "sborone" e dire agli amici che appena uscito gnome-2.12  io ce l'avevo... conscio del fatto che non tutto probabilmente sarebbe andato correttamente.

 

hai centrato perfettamente quello che secondo me è il problema

c'è stato un episodio, sulla mailing list di sviluppo di GRSecurity, tempo fa...

uno ha scritto dicendo che non riusciva, in una chroot, a fare un chmod +s e ne chiedeva il motivo.

per la cronaca... questa è una funzione introdotta da GRSecurity. uno che non sa nemmeno queste cose vuol dire che installa tanto per fare e che nemmeno si legge la documentazione più banale...

fatto sta che gli risponde Brad Spendler in persona (Brad non è che sia il massimo della diplomazia) e gli dice con un tono SECCATISSIMO che era una funzione standard e lo mandava a leggersi la documentazione o almeno gli help di configurazione del kernel. non compariva la parola DEFICENTE ma era più che chiaramente sottointesa

----------

## Ic3M4n

 *k.gothmog wrote:*   

> fatto sta che gli risponde Brad Spendler in persona (Brad non è che sia il massimo della diplomazia) e gli dice con un tono SECCATISSIMO che era una funzione standard e lo mandava a leggersi la documentazione o almeno gli help di configurazione del kernel. non compariva la parola DEFICENTE ma era più che chiaramente sottointesa

 

AH! AH! spettacolo! una cosa del tipo:   :Twisted Evil:   RTFM!   :Twisted Evil: 

----------

## .:chrome:.

 *Ic3M4n wrote:*   

> AH! AH! spettacolo! una cosa del tipo:    RTFM!  

 

<OT>

beh... Spengler è solito a prestazioni di questo tipo... e anche meglio  :Wink: 

dicono tanto di me, ma lui è proprio un assatanato...

c'è stata una volta che è esordito in Linux Kernel Mailing List (scusate se è poco) sparando a zero su tutti. Ha dato dell'ignorante a Andrew Morton, dell'incompetente ad Alan Cox, e del segaiolo a Linus Torvalds  :Shocked:   perché non era d'accordo con la linea di sviluppo che il kernel 2.6 stava prendendo...   :Confused: 

e poi è saltato fuori con una dichiarazione tipo "con un semplice grep sui sorgenti del kernel vanilla ho trovato più di 100 bug"   :Shocked: 

è un personaggio un po' particolare... è meglio non contraddirlo mai   :Wink: 

comunque non è che vada meglio con Theo de Raadt (il boss di OpenBSD)

scusate per l'OT

</OT>

----------

## Apetrini

azz mi sa che dovrò per forza provare RH. Perche ho gia testato Ubuntu, Debian, Slackware e Yoper. e nessuna è cosi veloce come la mia gentoo.

Il mix delle CFLAGS Os/O2/O3 + prelink + nptl + xfs + il mio amatissimo kernel fa miracoli. Il punto è sempre lo stesso(come disse quella volta comio)... quelli di RH compilano i propri pacchetti ognuno con le CFLAGS piu adeguate per quel pacchetto, non compilano di certo tutti (o quasi, ci sono quelli che hanno le CFLAGS forzate) i pacchetti con le stesse CFLAGS come di default su gentoo. Sono sempre dell'idea che su gentoo manchi in via ufficiale la gestione delle CFLAGS singole per pacchetto. Mi sembra limitativo il discorso: scegli le stesse CFLAG per tutto il sistema! 

e poi sarebbe bello avere la possibilità di sovvertire(sempre in via ufficiale) quelle forzature di alcuni pacchetti che usano le proprie CFLAGS, .... ecco questa sarebbe la gentoo dei miei sogni, libertà totale di spaccarsi il proprio sistema a cosato di spendere ore e ore.... alla fine c'è chi si diverte in altri modi, ma per me è una delezia passare ore a fare esperimenti.

P.s. poi  ho qualche problemino a spiegare alla mia ragazza perche passo ore e ore sul pc, ma questo è un altro discorso...

----------

## .:chrome:.

@Apetrini:

seghe mentali... GRAN SEGHE MENTALI

supponiamo che ti si dia la possibilità di specificare per ogni pacchetto le sue CFLAGS. cosa credi di ottenere? otterresti grandi risultati, se solo ne fossi capace. tu saresti capace di decidere per ogni pacchetto se O2 è meglio di O3 o Os, dandone una giusificazione valida?

se mi dici questo sai anche che non puoi scegliere in totale libertà, perché alcune combinazioni rendono il codice non funzionante...

ma poi... mi dici questo e non sai che puoi davvero specificare le flag per ogni pacchetto come vorresti tu...?

se si può perché non lo fai?

e poi... va bene... smascheriamo pure le flag che gli ebuild impongono...

voglio vedere se riesci a compilare KDE o OpenOffice senza quell'aiutino...

perché non ti fai un bel Linux from Scratch? vediamo se ne sei capace...

scusate la cattiveria... ma non sarebbe ora di finirla con tutte queste arie da grandi programmatori? la verità è che contrariamente a quanto si dica gentoo è molto più semplice delle altre distro, e che portage fa il 95% del lavoro sporco al posto nostro. solo che usare gentoo fa figo e allora tutti si montano la testa.

Richard Stallman (proprio quel Rihard Stallman) una volta ha detto che i computer non sono giocattoli, e che non dovrebbero essere per tutti.

PAROLE SANTE

----------

## randomaze

k.gothmog e Apetrini:

State andando parecchio OT rispetto al quesito di Assente. Se volete vi splitto il thread (ma in realtá mi sa che ce ne sono giá diversi aperti sull'argomento in questione) e continuate il dialogo da un altra parte possibilmente con toni piú pacati

----------

## .:chrome:.

chiedo scusa

----------

## Apetrini

Io sono un pessimo programmatore...e su questo non ci piove. Non so da cosa hai dedotto che sono un gran programmatore...

Per quanto riguarda le "seghe mentali", be si lo sono, ma di certo io non vengo a rimproverarti come tu passi il tuo tempo libero...sai come si dice "De Gustibus".

Per quanto riguarda invece la storia di essere in grado di dare giustificazioni alle scelte delle CFLAGS be io non tento di giustificare nulla, come dici tu non ne sono capace, ma uso il metedo ermetico(provare e riprovare; c'è gente che colleziona francobolli, io passo interi pomeriggi a sminchiare con la mia gentoo, non sarà mica un reato vero?), metto le CFLAGS e poi faccio un sacco di prove etc...

Vedo che comunque non hai capito il vero senso del mio post, il problema non è solo il fine (far funzionare KDE, OO o meno), ma la libertà di scelta. Se io non sono un gran programmatore, forse non lo diventerò mai, ma qualcun altro potrebbe essere un gran programmatore e magari vorrebbe avere la piena libertà di scelta e ha ragione ad aspettarsi questa possibilità da gentoo, visto che è uno dei concetti su cui si basa.

 *k.gothmog wrote:*   

> scusate la cattiveria

 

non ti scuso. il tuo pregiudizio è troppo alto.

P.s. so che si possono specificare comunque le CFLAGS a "mano" per ogni singolo pacchetto, ma volevo qualcosa in via piu ufficiale, cosi anche riemergendo tutto il sistema tutto si compila con le proprie CFLAGS.

Edit: ho letto il post di randomaze dopo che ho postato.

----------

## Dr.Dran

?!?[open OT mode]

@Tutti i fanatici delle performance...

Insomma sono stanco di sentire utilizzate quelle flags e fate paragoni con delle distro e poi su e poi giù... ma cavolo io ho scelto Gentoo per una cosa: la possibilità di installare un programma con solo le dipendenze che desidero, e poi chi se ne frega se openoffice mi si avvia in 38 secondi la prima volta e invece in Fedore mi si avvia in 15...  Con lo scassone di pc che ho faccio tutto quello che mi serve e la cosa bella è che spendo 0 e impiego solo del mio tempo e passione...

beh dopo questo sfogo poetico dico una cosa molto semplice, per la mia esperienza di programmatore (che non è effettivamente elevata) tendo e ribadisco, come ho fatto in altri post che è meglio preferire la stabilità alle performance, sapete che palle se mando in bg un lavoro vado via due orette e poi torno a casa e mi si è freezzato il pc per una michiata dovuta a una flag un pò + spinta? Beh lasciate stare... è una rottura!!!

Quindi ribadisco, che esiste sempre il libero arbitrio e quindi ognuno di noi è libero di fare quello che vuole, però sinceramente passare ore e ore a compilare sorgenti con flags e ottimizzazioni esose o estreme è solo una perdita di tempo, conviene installarsi fedora e lavorare con lei!   :Smile: 

Invece a me interessa modellare il sistema alle mie esigenze e gentoo con i suoi pregi e difettucci si adatta bene a fare il mio sporco lavoro  :Very Happy: 

----------

## randomaze

Come promesso ho splittato il thread.

Adesso si potrebbe unire, a scelta, con uno dei sceguenti:

[Performance]Mia Gentoo vs una debian...

[Performance] Gentoo 2004.3 binaria vs Mie Compilate

Vi va di discutere le mie CFLAGS?

----------

## Apetrini

 *randomaze wrote:*   

> 
> 
> [Performance] Gentoo 2004.3 binaria vs Mie Compilate
> 
> 

 

Mi sembra quello piu opportuno...

----------

## gutter

 *Apetrini wrote:*   

> 
> 
> Mi sembra quello piu opportuno...

 

Aspettiamo qualche altro post per vedere come si evolve la discussione e poi vediamo con quale dei thread indicati da randomaze fare il merge.

P.S.: sempre che la discussione non degeneri e il post venga chiuso   :Rolling Eyes: 

----------

## !equilibrium

 *k.gothmog wrote:*   

> supponiamo che ti si dia la possibilitï¿½ di specificare per ogni pacchetto le sue CFLAGS. cosa credi di ottenere? otterresti grandi risultati, se solo ne fossi capace. tu saresti capace di decidere per ogni pacchetto se O2 ï¿½ meglio di O3 o Os, dandone una giusificazione valida?

 

concordo con le argomentazioni di k.gothmog, Ã¨ inutile avere la possibilitÃ  di specificare le CFLAGS per ogni pacchetto, o comunque non se ne ricaverebbe un risultato generico "apprezzabile". Ma soprattutto per poter decidere se un pacchetto Ã¨ "meglio" o "peggio" con una determinata CFLAGS bisognerebbe farsi tutta una serie di test con acovea e altri software del genere, e alla fine che cosa si otterrebbe? un sistema che "forse" Ã¨ ottimizzato per un 5/10% meglio rispetto a prima? si, ok, Ã¨ un bel "guadagno" ma a che prezzo? ad ogni release o aggiornamento di un pacchetto dovrei lanciare 20/30 sessioni di compilazioni... mi sa che quel 5/10 % in piÃ¹ me lo sono giocato con i tempi necessari per i benchmark (se non di piÃ¹), tanto vale tenersi le CFLAGS generiche visto che gli updates piovono in continuazione tutti i giorni. Questo genere di ottimizzazione la vedo maggiormente fattibile da un team di ingegneri (in stile RH per intenderci) piuttosto che dal singolo utente.

discorso diverso invece se si conosce e si sa che per determinati pacchetti, specifiche modifiche alle CFLAGS possono fare la differenza, un esempio Ã¨ la compilazione di blender, yafray e altri software GPL per il 3D con l'opzione -O3; il guadagno netto di prestazioni in fase di rendering Ã¨ quasi sempre elevato (ovviamente perdi moltissimo in fase di caricamento dei software). Ma sono pochi e rari casi.

(tutto rigorosamente IMHO)

----------

## yardbird

 *k.gothmog wrote:*   

> intendo proprio che a parità di macchina (il mio vecchio computer di casa) l'ho vista più veloce di gentoo. più agile nell'avviarsi, nell'avviare le applicazioni, più responsiva (ok, quest'ultima dipende solo dal kernel) nonostante lo stage1, le ottimizzazioni, e tutte le acrobazie che facevo in gioventù (come se fossi vecchio) 

 

Effetto placebo?  :Wink: 

 *k.gothmog wrote:*   

> ne ho parlato con diverse persone parecchio competenti, e tutti, dal primo all'ultimo, hanno confermato quello che alla fine pensavo: compilare tutto il sistema non da vantaggi in termini di velocità, se non si cambia il codice sorgente

 

Non sono un programmatore di professione, ma mi capita di dover scrivere programmi di calcolo numerico e manipolazione algebrica. Da quella che è la mia esperienza ti posso assicurare che la differenza fra -O2 e -O1 c'è ed è piuttosto evidente (si parla di un fattore 2x). E' ovvio che poi ci sono altri fattori che intervengono nella definizione di "prestazione" per un computer, però la tua affermazione mi sembra manichea tanto quanto quelle delle persone che tu critichi.

----------

## Ic3M4n

 *k.gothmog wrote:*   

> la verità è che contrariamente a quanto si dica gentoo è molto più semplice delle altre distro, e che portage fa il 95% del lavoro sporco al posto nostro. solo che usare gentoo fa figo e allora tutti si montano la testa. 

 

si, concordo in pieno. il problema base, come ha detto anche DranXXX il pc, e con questo includo anche gentoo, è fatto per essere utilizzato, non per aprire openoffice in un secondo in meno rispetto ad un'altra distribuzione, od al pc del mio amico o cose del genere. attualmente utilizzo un p3 a 900 MHz e queste sono le mie ottimizzazioni: 

```
CFLAGS="-Os -mcpu=i686 -pipe -fomit-frame-pointer"
```

 non c'è niente di sovrumano, anzi... però sono sicuro di avere un sistema funzionante.

 *Apetrini wrote:*   

> Vedo che comunque non hai capito il vero senso del mio post, il problema non è solo il fine (far funzionare KDE, OO o meno), ma la libertà di scelta. Se io non sono un gran programmatore, forse non lo diventerò mai, ma qualcun altro potrebbe essere un gran programmatore e magari vorrebbe avere la piena libertà di scelta e ha ragione ad aspettarsi questa possibilità da gentoo, visto che è uno dei concetti su cui si basa. 

 

beh... se per te modificare due cflags e fare dei tentativi significa essere bravi programmatori accomodati... personalmente e anche molte altre persone non la pensano come te sotto questo aspetto, calcola inoltre che molta gente con gentoo ci lavora, non lo utilizza come "passatempo per il tempo libero" e molto probabilmente quando si trova un'aggiornamento di firefox o di xorg inizia a sbattere la testa contro la scrivania per doverselo ricompilare. se tu credi che il tuo tempo di fronte al pc sia ben speso vedendo scorrere delle linee di compilazione nella tua console, fai pure. però non lamentarti del fatto che gentoo non ti dia la possibilità di scegliere le cflags per ogni pacchetto. non è nell'interesse della distribuzione essere il "giocattolo per il tempo libero" è uno strumento lavorativo che abbraccia una filosofia di gestione del software differente rispetto ad altre distribuzioni. in pratica: se ti serve un tool che ti permetta la gestione delle cflags come ritieni meglio opportune: credo che basti una modifica di un simlink con un file di conf separato per ogni pacchetto che ti vuoi modificare. è fattibile come cosa. però non lamentarti perchè la distribuzione non implementa una cosa del genere. scriviti un piccolo script in bash ed usalo...

----------

## .:chrome:.

@DarkAngel76

@Ic3M4n

sono commosso   :Very Happy: 

----------

## .:chrome:.

 *yardbird wrote:*   

> Da quella che è la mia esperienza ti posso assicurare che la differenza fra -O2 e -O1 c'è ed è piuttosto evidente (si parla di un fattore 2x). E' ovvio che poi ci sono altri fattori che intervengono nella definizione di "prestazione" per un computer, però la tua affermazione mi sembra manichea tanto quanto quelle delle persone che tu critichi.

 

attenzione: tu parli di applicazioni di calcolo... puro calcolo...

è cosa ben diversa. quel tipo di algoritmi sono ben diversi da quelli che si trovano nelle routine dei comuni programmi di utilità o di office authomation e si possono ottimizzare ad un livello ben superiore...

normalmente il rischio che si corre è di guadagnare 10 da una parte e perdere 11 dall'altra, per via degli effetti collaterali che le ottimizzazioni implicano

in ogni caso... lo stesso guadagno lo ottieni col passaggio da O2 a O3? ne dubito, nemmneo passando da O2 a O5 riusciresti a ottenere lo stesso incremento

----------

## randomaze

Ora, non per dire, ma una volta che scrivo:

 *randomaze wrote:*   

> Ho splittato le divagazioni sul tema CFLAGS in quest'altro thread.

 

se anche si volesse quotare un affermazione fatta qui ma continuare a parlare di CFLAGS come ad esempio:

 *yardbird wrote:*   

> Da quella che è la mia esperienza ti posso assicurare che la differenza fra -O2 e -O1 c'è ed è piuttosto evidente (si parla di un fattore 2x).

 

basterebbe copiare il pezzo e fare un reply nell'altro thread. No?

Poi, yardbird forse ha letto rapidamente la cosa dello split, ma qualcun'altro, invece di rispondere "ci hanno giá ripreso dicendo che in questo thread non si parla di CFLAGS, ti rispondo in quello linkato da randomaze" si lancia immediatamemnte in una risposta come quelle appena splittate:

 *k.gothmog wrote:*   

> ... lo stesso guadagno lo ottieni col passaggio da O2 a O3? ne dubito, nemmneo passando da O2 a O5 riusciresti a ottenere lo stesso incremento...

 

ora, é troppo chiedere un poco di collaborazione?

EDIT: ho rifatto un poco di copia e incolla con i post e ho tipostato anche gli ultimi due qui  :Wink: 

----------

## Apetrini

 *Ic3M4n wrote:*   

> 
> 
> beh... se per te modificare due cflags e fare dei tentativi significa essere bravi programmatori accomodati... 

 

scusa da cosa hai dedotto questo? il mio post parlava di libertà di scelta.

 *Ic3M4n wrote:*   

> 
> 
> però non lamentarti del fatto che gentoo non ti dia la possibilità di scegliere le cflags per ogni pacchetto. non è nell'interesse della distribuzione essere il "giocattolo per il tempo libero" è uno strumento lavorativo che abbraccia una filosofia di gestione del software differente rispetto ad altre distribuzioni

 

Io vorrei sapere, e spero tu mi risponda, dove hai letto gli obbiettivi che si è proposta gentoo?  Mi sembrava di aver letto da qualche parte che gentoo è LIBERTA' di SCELTA. Ora tralasciando il fatto se questa cosa puo portare vantaggi a qualcuno o meno(anche perche qualcuno a cui serve si trova sempre) non mi potete dire che il dover scegliere delle CFLAGS che poi saranno per forza usate per tutti i software è una gran libertà di scelta. Se un giorno dovessi compilare un motore di rendering cosa faccio che ho il sistema in -Os? compilo il motore di rendering in -Os per forza?

 *Ic3M4n wrote:*   

> però non lamentarti perchè la distribuzione non implementa una cosa del genere

  Mi lamento, invece, ma non perche voglio lamentarmi e basta, ma perche seguo le indicazioni che mi sono state date leggendo la documentazione gentoo. C'era un passo che diceva "gentoo è libertà di scelta, sono d'obbligo solo le scelte che non hanno alternative, se per qualsiasi motivo ti sentissi limitato in qualcosa, ti prego di segnalarcelo". Quindi sono in linea con le indicazioni che ho seguito sulla guida!!

Quando ho cominciato questa discussione, non volevo fosse una cosa prettamente sul piano tecnico, bensi piu su quello "etico"(e comunque la gente continua a parlare di vantaggi e svantaggi, non so il perche). Se una distribuzione dice noi offriamo questo, be io questo me lo aspetto in pieno!!!!!!

Quindi non sono io che ragiono male, è la gentoo che mi promette delle cose e io queste cose me le aspetto.

Da guida ufficiale:

```
E' molto importante comprendere che le scelte sono ciò che sta alla base di Gentoo. L'obiettivo è di non forzare mai l'utente a qualcosa che non desidera. Nel caso sia abbia un'impressione diversa è possibile segnalarlo.
```

Io non desidero avere le stesse CFLAGS per tutto il sistema!!!

P.s scusate se per voi pretendo troppo, ma io leggo le istruzioni e seguo le indicazioni....

----------

## Thrain

@Apetrini

Il modo per usare cflags specifiche c'è, e io infatti lo uso per alcuni pacchetti che hanno bisogno di cflags modificate (ad esempio openoffice). Basta fare una piccola ricerca sul forum e trovi questo topic, in cui è postato un bashrc da mettere in /etc/portage/ per utilizzare i file package.cflags, package.cxxflags e package.ldflags.

Come vedi, Gentoo ti dà la possibilità di scegliere cflags specifiche per ogni pacchetto, basta mettere il sedere sulla sedia e spendere il tempo in modo migliore che non provando e riprovando la compilazione di ogni pacchetto  :Wink:  . Libertà di scelta significa non pappa pronta, ma la possibilità di avere un sistema "vergine" su cui fare tutte le modifiche che vuoi (sotto alcune regole tutt'altro che restrittive, ovvero: usare portage).

Dalla mia esperienza personale posso dire che una volta impostate -O2 e -march=i686, qualsiasi altra ottimizzazione è praticamente invisibile. Anzi no, è visibile: crash sempre più frequenti. Ovviamente si eccettuano i soliti programmi come blender & co, che invece hanno magari bisogno di -O3... ma niente di più.

@k.gothmog & Ic3M4n

Sono ultra d'accordo con voi  :Very Happy:  !

----------

## Dr.Dran

@k.gothmog 

@Ic3M4n

@Thrain

Sono anche io daccordo in pieno con voi e quoto quello che avete affermato.

@Apetrini, mi ricordo che una settimana fa hai aperto un post dove si richiedeva la cosa che stai sbandierando fino ad adesso... cioè la possibilità di utilizzare le CFLAGS CXXFLAGS e LDFLAGS per ogni pacchetto... beh io ti avevo risposto con lo stesso post di Thrain, ma vedo che forse la gente legge superficialmente e non ha voglia di fare il solito "bagno di sangue" nel codice... ma non prenderla come offesa è solo una mia considerazione.

Beh però prima di questo ti consiglio di dare una bella letta anche aquesti post che sono molto interessanti (sono in inglese, ma però a mio avviso sono illuminanti e a me sono serviti per capire e studiare qualche cosa di cui prima non mi ero mai interessato)

CFLAGS

https://forums.gentoo.org/viewtopic-t-5717.html

https://forums.gentoo.org/viewtopic-t-333123-highlight-cxxflags.html

https://forums.gentoo.org/viewtopic-p-2314776.html

LDFLAGS

https://forums.gentoo.org/viewtopic-t-67777-highlight-asneeded.html

https://forums.gentoo.org/viewtopic-t-316445-highlight-asneeded.html

Poi successivamente vai sul topic di Thrain.

Comunque io ribadisco che Gentoo è ottima e ci lavoro benissimo e me ne frego delle prestazioni delle altre distro, anche perchè ci sono dei TEAM (gruppi di persone) di programmatori che cercano le configurazioni e applicano patch per rendere il codice migliore, io dal cantomio ne godo di riflesso, poichè queste patch una volta stabili vengono inglobate nel pacchetto originale e non mi debbo preoccupare minimamente di andare a smanettare sui file ad ogni aggiornamento... riprendendo quello che k.gothmog ha citato: è portage che fa il 90% del lavoro sporco e io ne sono felice perchè così posso fare bene il mio  :Very Happy:  (prova tu a gestire un numero superiore di 10 installazioni o server in giro... va là che diventi molto pacchiano e standardizzi tutto!!!)

Comunque io sono riuscito a trovare un ottimo compromesso con queste CFLAGS:

```
CFLAGS=-O2 -march=mia_cpu -fomit-frame-pointer -momit-leaf-frame-pointer -fno-ident -pipe
```

oppure se vuoi il codice un pò + piccolo

```
CFLAGS=-Os -march=mia_cpu -fomit-frame-pointer -momit-leaf-frame-pointer -fno-ident -pipe
```

Tutto rigorosamente compilato con il gcc 3.3.x non sto neppure a ricompilare tutto dopo che si aggiorna, tanto di riflesso nel giro di un annetto ti ritrovi tutto compilato di nuovo e quindi perchè perdere tempo quando un programma funziona, non sono 3 msecondi che fanno la differenza   :Wink: 

Le prestazioni sulla mia macchina sono le medesime, solo che la prima genera codice un pò + grande, le LDFLAGS non le utilizzo, tendono a rendere instabile un pò tutto il sistema, percò c'è già qualche d'uno che fa delle prove e ti ho dato il link così puoi sperimentare liberamente  :Very Happy: 

P.S. Spero non ti sia offeso, ma capisco la tua opinione xò non la condivito e ti ho voluto anche io spiegare il motivo   :Very Happy: 

Ciauz e Good Hacking a tutti  :Very Happy: 

----------

## Ic3M4n

 *Apetrini wrote:*   

> 
> 
> scusa da cosa hai dedotto questo? il mio post parlava di libertà di scelta.
> 
> 

 

hai scritto tu che ti passi pomeriggi interi in casa a ricompilare codice su codice e che non sai come giustificare la cosa alla tua ragazza no?

 *Apetrini wrote:*   

> 
> 
> Io vorrei sapere, e spero tu mi risponda, dove hai letto gli obbiettivi che si è proposta gentoo?  Mi sembrava di aver letto da qualche parte che gentoo è LIBERTA' di SCELTA. Ora tralasciando il fatto se questa cosa puo portare vantaggi a qualcuno o meno(anche perche qualcuno a cui serve si trova sempre) non mi potete dire che il dover scegliere delle CFLAGS che poi saranno per forza usate per tutti i software è una gran libertà di scelta. Se un giorno dovessi compilare un motore di rendering cosa faccio che ho il sistema in -Os? compilo il motore di rendering in -Os per forza?
> 
> 

 

allora: come ti ha già risposto Thrain la libertà di scelta di gentoo la ritrovi nel fatto che ti da la possibilità con delle minime modifiche alla struttura base della distro di potre fare praticamente tutto quello che vuoi, se vuoi avere la possibilità di modificare le cflags per un pacchetto puoi seguire quello che ti hanno detto loro, e che da quello che ho capito ti avevano già segnalato in un altro post. per conto mio ti ho dato una possibilità più istantanea, che per forza di cose non potrà essere adottata in sistemi di grosse dimensioni ma si applica bene nel caso in cui vuoi modificare le scelte per un paio di pacchetti. un po' come il voler avere due xorg.conf uno con il dri e l'altro senza in pratica.

 *Apetrini wrote:*   

> 
> 
>  Mi lamento, invece, ma non perche voglio lamentarmi e basta, ma perche seguo le indicazioni che mi sono state date leggendo la documentazione gentoo. C'era un passo che diceva "gentoo è libertà di scelta, sono d'obbligo solo le scelte che non hanno alternative, se per qualsiasi motivo ti sentissi limitato in qualcosa, ti prego di segnalarcelo". Quindi sono in linea con le indicazioni che ho seguito sulla guida!!
> 
> 

 

bene, allora non devi lamentarti con me, non devi lamentarti con k.gothmog  Thrain DranXXX e con tutto il resto del forum perche non puoi fare una cosa con gentoo. dove c'è scritto "ti prego di segnalarcelo" non c'è scritto al forum di gentoo ma molto probabilmente il bugs.gentoo.org, aprire un bug report con la descrizione della modifica che tu vorresti apportata, con "possibilmente" un piccolo metodo implementativo della feature che vuoi.

 *Apetrini wrote:*   

> 
> 
> Quando ho cominciato questa discussione, non volevo fosse una cosa prettamente sul piano tecnico, bensi piu su quello "etico"(e comunque la gente continua a parlare di vantaggi e svantaggi, non so il perche). Se una distribuzione dice noi offriamo questo, be io questo me lo aspetto in pieno!!!!!!
> 
> Quindi non sono io che ragiono male, è la gentoo che mi promette delle cose e io queste cose me le aspetto.
> ...

 

non vuoi le stesse cflags? bene, attivati e trova una soluzione a questo tuo problema, di sucuro non puoi pretendere che sia il forum a trovare una soluzione per te. o comunque "il problema non si risolve piangendo o lamentandosi" -> tratto da un piccolo proverbio: " se la tua bicicletta si è rotta non si aggiusta piangendole sopra"

[EDIT] modificato il BBCode ipostato male [/EDIT]Last edited by Ic3M4n on Sun Sep 18, 2005 12:07 pm; edited 1 time in total

----------

## .:chrome:.

io continuo a pensare che la possibilità di avere diverse C*FLAGS per i diversi pacchetti sia solo un capriccio momentaneo...

oltretutto alimentato da una moda momentanea nata dal sentito dire, e che quindi non ha nessun fondamento concreto.

ho cercato di portare le mie motivazioni, però insomma... sembra di combattere contro i mulini a vento  :Smile: 

@Apertini:

non fraintendere il tono delle mie parole, ti prego: ne abbiamo già parlato molto in privato... ma alla fine te l'ho detto cosa c'è che non va: voi informatici non capite un cazzo, a basso livello...  :Very Happy: 

...e noi ingegneri non capiamo un cazzo ad alto livello  :Wink: 

ad ognuno il suo   :Razz: 

----------

## Dr.Dran

@k.gothmog

Aggiungo anche che noi Periti non capiamo un cazzo a basso e alto livello   :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing: 

P.S. Non sono ancora ingegnere xchè sono fuori corso da una vita   :Razz: 

----------

## Ic3M4n

davvero cavolo... ed io che sono perito agrario!   :Very Happy: 

----------

## 102376

 *k.gothmog wrote:*   

> io continuo a pensare che la possibilità di avere diverse C*FLAGS per i diversi pacchetti sia solo un capriccio momentaneo...
> 
> oltretutto alimentato da una moda momentanea nata dal sentito dire, e che quindi non ha nessun fondamento concreto.
> 
> ho cercato di portare le mie motivazioni, però insomma... sembra di combattere contro i mulini a vento 
> ...

 

hahah PAROLE SANTE, dai apetrini non ci capiamo un cazzo, ha ragione....pensiamo a passare prog1 al posto di ricompilare con cflags diverse  :Crying or Very sad:   :Crying or Very sad: 

io ho usato molte distribuzioni e ora insieme a gentoo, ubuntu, e la cosa che mi piace di più è che mi da un sistema base dove poi io se voglio installo un determinato prg, poi mi piace la gestione dei pacchetti con le sue dipendenze, la gestione dei moduli(che non riesco a capire in altre distr) e tante altre cose che fanno diventare la mia gentoo + veloce di altre , ma putroppo apetrini anche secondo me (e te l avevo gia detto) compilare i pacchetti con cflags diverse non ha nessun vantaggio(a parte pacchetti tipo blender) poi non mi sembra il caso di arrabiarsi con lui, alla fine sono scelte e vanno rispettate

----------

## Ic3M4n

 *zocram wrote:*   

> compilare i pacchetti con cflags diverse non ha nessun vantaggio

 

questo non è vero. e dovresti averlo capito ormai... il fatto non è tanto quale cflag faccia andare tutto il sistema veloce. il problema è che ogni cflags dovrebbe essere adattata ad ogni singolo pacchetto, quindi solitamente NOI andiamo ad utilizzare cflags considerate "sicure", in modo che tutto il sistema si ritrovi nelle condizioni di compilare sempre codice stabile. se vuoi un sistema performante devi fare come fanno quelli di suse... si prendono ogni singolo pacchetto e lo compilano un'infinità di volte per cercare di trovare il compromesso migliore tra performance e stabilità. personalmente credo che i developer di suse facciano un sacco di lavoro sotto questo punto di vista, non basta compilare un pacchetto due o tre volte per avere un qualcosa di definitivo, ma anzi, il lavoro è di una mole impressionante. dubito che una persona sola possa fare tutto questo per metterselo sul suo pc di casa e basta.

----------

## .:chrome:.

ooooooh... finalmente la guerra delle CFLAGS ha avuto fine  :Very Happy: 

popolo... non so voi, ma io mi sono riletto le ultime risposte e me sto ghignando davvero di gusto  :Wink: 

ci presentiamo a zelig?

apro una parentesi - @Ic3M4n:

il lavoro che fanno loro non è proprio una serie infinita di ricompilazioni... è in realtà un'analisi dell'algoritmo alla fine della quale emerge quasi automaticamente cosa si deve passare al compilatore. il lavoro grosso, in realtà è il test.

la grossa seccatura dell'avere un sistema compilato in modo eterogeneo è che non è detto che tutti i software funzionino insieme... e non è detto che tutte le funzioni di un software funzionino [1] (perdonatemi la frase contorta).

quindi il lavoro grosso è il test. quello non può essere automatizzato, purtroppo, e nel momento in cui salta fuori un bug, allora sì, che bisogna andare per tentativi...  :Sad: 

[1] cito un episodio esemplificativo. negli ultimi kernel >=2.6.12 è stato impostato HZ=250, peccato che qualcuno si sia reso conto che alcune subroutine, non funzionino, a 250 Hertz, e che la sintesi MIDI faccia a dir poco pietà... il bello è che hanno scoperto queste cose, ma non il perchéLast edited by .:chrome:. on Sun Sep 18, 2005 12:36 pm; edited 1 time in total

----------

## 102376

 *Ic3M4n wrote:*   

>  *zocram wrote:*   compilare i pacchetti con cflags diverse non ha nessun vantaggio 
> 
> questo non è vero. e dovresti averlo capito ormai... il fatto non è tanto quale cflag faccia andare tutto il sistema veloce. il problema è che ogni cflags dovrebbe essere adattata ad ogni singolo pacchetto, quindi solitamente NOI andiamo ad utilizzare cflags considerate "sicure", in modo che tutto il sistema si ritrovi nelle condizioni di compilare sempre codice stabile.

 

appunto non ha nessun vantaggio, si potrebbe avere un sistema instabile..... allora torno a win  :Smile: 

e se chiedessimo a suse con che cflags è meglio compilare un pacchetto?? in questo modo abbiamo risolto il problema ad apetrini, così la ragazza non si domanda + perchè sta ore e ore davanti al pc :=

----------

## randomaze

Una nota, livemente OT:

 *zocram wrote:*   

> pensiamo a passare prog1 al posto di ricompilare con cflags diverse

 

IMHO qualunque miglioramento sulle CFLAGS non vale una sessione  :Wink: 

----------

## Ic3M4n

 *zocram wrote:*   

> e se chiedessimo a suse con che cflags è meglio compilare un pacchetto?? in questo modo abbiamo risolto il problema ad apetrini, così la ragazza non si domanda + perchè sta ore e ore davanti al pc :=

 

fico! apertini non prendertela ma credo che sia la cosa migliore da fare! 

@k.gothmog: si idem. però secondo me anche questo genere di thread è costruttivo se portato avanti in manieta coerente e seria.

----------

## 102376

[OT]ormai è gia passato la sessione..... e non è andata come speravo  :Twisted Evil:   :Twisted Evil: 

su via c'è il prox appello[\OT]

ma a perte li scherzi potrebbe essere qualcosa di fattibile o ci mandano a cagare...Last edited by 102376 on Sun Sep 18, 2005 12:39 pm; edited 1 time in total

----------

## .:chrome:.

 *zocram wrote:*   

> e se chiedessimo a suse con che cflags è meglio compilare un pacchetto?? in questo modo abbiamo risolto il problema ad apetrini, così la ragazza non si domanda + perchè sta ore e ore davanti al pc :=

 

no. non si può...

o meglio... si potrebbe, ma *secondo me* non avrebbe senso

io posso compilare in modo diverso tutto il sistema secondo me mie necessità: su macchine server massimizzo il throughput, sui desktop la responsività... cose di questo tipo.

prendere le CFLAGS di unìaltra distro significa far crollare questo discorso. si perderebbe buona parte della tanto decantata flessibilità di questa distribuzione

----------

## Ic3M4n

 *k.gothmog wrote:*   

> no. non si può... 

 

era una battuta... o bimbo bruto! quando inizierai a capire che non tutto quello che viene detto è detto seriamente?   :Very Happy:  ..

----------

## Dr.Dran

Ragazzi, purtroppo credo che thread di questo tipo salteranno fuori a ogni nuova release di gcc, appena verranno pubblicate le nuove features ci saranno sempre una frotta di curiosi che vorrenno applicarle anche se non ne conoscono bene il significato  :Razz:   :Very Happy: 

----------

## Ic3M4n

beh... molto è anche colpa delle riviste su linux che sbandierano in prima pagina: provato il nuovo compilatore intel... colui che in tutti i benchmark ha battuto gcc. provalo e fai sprintare la tua distribuzione preferita. (era linux pro, mi pare). purtroppo anche in questo caso titoli ad effetto come questo fanno sembrare il tutto semplice e semza problemi.

----------

## .:chrome:.

 *Ic3M4n wrote:*   

> molto è anche colpa delle riviste su linux...

 

...e dei boccaloni che ci credono...

...e di quelli che credono che GCC-n debba necessariamente produrre codice più veloce di GCC-(n-1), sempre ed in ogni circostanza

----------

## Apetrini

@Thrain, DranXXX: ottimo, farò dei tentativi; grazie per l'aiuto...

@Ic3M4n: sei duro, ancora la storia del gran programmatore. Ma secondo te, se uno sta ore di fronte al pc è un gran programmatore? Ma per favore...

Quando dite che per un pacchetto potrei fare la cosa a mano avete ragione, è che vorrei poter settare questa cosa in modo da potermene dimenticare e se faccio un riemerge di tutto il sistema, vorrei che fosse tutto in regola.

Alla fine mi seguirò le guide e le soluzioni non ufficiali...

@DranXXX: come hai scritto tu, io vorrei usare -O2 ma non su tutto, su roba che decido io vorrei usare -Os. Attualmente ho tutto -Os.

Basta, ora vado a fare colazione...

----------

## Ic3M4n

colazione? fatto tardi ieri?

----------

## .:deadhead:.

 *k.gothmog wrote:*   

> comunque non è che vada meglio con Theo de Raadt (il boss di OpenBSD)

 

Aggiungo il mio modesto parere alla discussione: MA LOL, come i bambini a pasticciarsi i fogli...   :Rolling Eyes:   :Very Happy: 

----------

## Apetrini

Grazie a DarkAngel76 ho potuto notare un software che non conoscevo.

Acovea

Dal sito ufficiale:

http://www.coyotegulch.com/products/acovea/index.html

```
ACOVEA (Analysis of Compiler Options via Evolutionary Algorithm) implements a genetic algorithm to find the "best" options for compiling programs with the GNU Compiler Collection (GCC) C and C++ compilers. "Best", in this context, is defined as those options that produce the fastest executable program from a given source code. Acovea is a C++ framework that can be extended to test other programming languages and non-GCC compilers.
```

Sembra proprio per quello che intendevo io....a parte i tempi lunghissimi, ma come sempre non si puo avere tutto gratis.

Ora sono contento!! Questo 3d mi è servito...

----------

