|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
Curiosità su compilazione kernel: O2 vs Os
Una domanda che mi sorge da tempo: che vantaggi da abilitare l'opzione "optimize for size" nel menu del kernel quando lo si ricompila?
Leggendo la descrizione dice che passa al compilatore il parametro Os invece che O2, ma cosa significano questi parametri? Grazie in anticipo ![]()
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
Quote:
[quote] -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 [/code] In pratica -Os non abilita una serie di ottimizzazioni presenti in -O2 che pur migliorando le prestazioni portano ad una dimensione maggiore dell'eseguibile. Sarebbe interessante vedere all'atto pratico la differenza di prestazioni, visto che le minori ottimizzazioni dovrebbero almeno parzialmente venir compensate da uno sfruttamento migliore della cache del processore,
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
|
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
[quote=marco.r]dal manuale del gcc:
Quote:
![]() Certo, ecco il post l'avrei fatto lo stesso perchè sarei curioso anche io di sapere quale delle due opzioni sia più conveniente :P
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 |
|
![]() |
![]() |
![]() |
#4 |
Registered User
Iscritto dal: Nov 2006
Messaggi: 1075
|
edit
ho scritto cosa già detta. Ultima modifica di maurinO_o : 15-12-2006 alle 10:59. Motivo: :| |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
|
[quote=Cobra78]
Quote:
|
|
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
[quote=vizzz]
Quote:
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 |
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9569
|
io ho disabilitato optimize for size. secondo me quella opzione è stata creata per i sistemi embedded con poche risorse...
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
|
[quote=Cobra78]
Quote:
|
|
![]() |
![]() |
![]() |
#9 | |
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
[quote=vizzz]
Quote:
Ma forse sarebbe troppo aggressiva e a rischio stabilità per un kernel :P
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 |
|
![]() |
![]() |
![]() |
#10 | |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 16053
|
Quote:
![]() Io uso sempre la O2. ![]() |
|
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Sep 2003
Città: Bergamo
Messaggi: 1176
|
Io sul mio nuovo server casalingo (VIA C7) ho tutto compilato (gentoo) con -Os a causa della cache di soli 128KB + 128KB; rispetto alla flag -O2 non ho riscontrato differenze a livello di sensazione, ma un paio di benchmark con script che utilizzano diversi eseguibili in sequenza sembrano leggermente più veloce -Os, forse proprio per il miglior sfruttamento della cache.
Infatti è stata la comunità di Gentoo a consigliarmi la flag -Os per il mio processore.
__________________
VGA? No grazie, preferisco le SERIALI! http://daniele.vigano.me | Home server HP Proliant MicroServer (Fedora 64bit) | Notebook Dell Latitude E5450 (Fedora 64bit) | Mobile Moto G3 GEM HPC Cluster Dell PowerEdge R720xd + R720 + R420 + M1000e + M915 (Ubuntu LTS 64bit) up to 1000 cores | EATON UPS |
![]() |
![]() |
![]() |
#12 | |
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
Quote:
Mmmh..
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 |
|
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Sep 2003
Città: Bergamo
Messaggi: 1176
|
Ti dirò non è stato un vero e proprio bench perchè le "variabili ambientali" erano un po' differenti, però questo è stato il risultato.
Gentoo-wiki consiglia anche per il Duron Mobile -O2 (link: http://gentoo-wiki.com/Safe_Cflags#M...uron_.28AMD.29) però in effetti con cache piccole o bus castrati credo che -Os qualche beneficio lo porti; considerato su un intero sistema vuol dire eseguibili più piccoli, librerie più piccole, quindi in generale meno "traffico" tra CPU/cache - RAM - storage ecc.. Su macchine attuali non penso che ci sia differenza tra -Os e -O2 se non a favore di quest'ultima.
__________________
VGA? No grazie, preferisco le SERIALI! http://daniele.vigano.me | Home server HP Proliant MicroServer (Fedora 64bit) | Notebook Dell Latitude E5450 (Fedora 64bit) | Mobile Moto G3 GEM HPC Cluster Dell PowerEdge R720xd + R720 + R420 + M1000e + M915 (Ubuntu LTS 64bit) up to 1000 cores | EATON UPS |
![]() |
![]() |
![]() |
#14 | |
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
Quote:
Beh conta che io parlo solo ed esclusivamente di Kernel..... Non sono ancora a livello di compilarmi tutto il sistema, non per nulla uso Ubuntu sul fisso e Xubuntu sul portatile ![]()
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 |
|
![]() |
![]() |
![]() |
#15 |
Registered User
Iscritto dal: Feb 2005
Messaggi: 1856
|
io uso gentoo con le ottimizzazioni
-march=pentium-m -msse3 -O3 -pipe -fomit-frame-pointer dunque ogni minimo pacchetto del mio sistema è compilato con queste impostazioni e mi trovo molto bene. sinceramente non ho mai incontrato rallentamenti con software compilato e il sistema va da dio ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 03:03.