Re: apt-get & apt-build
Mattia Milleri ha scritto:
Sapendo che apt-get ha tutti i pacchetti belli e pronti cosa guadagno
nell'andare a compilarli con apt-build? Se con i pacchetti compilati da
apt-build c'è un effettivo aumento di prestazioni forse converrebbe fare
un apt-build world, ma ne vale la pena? Voi lo fate?
se ne è già parlato molto di questo argomento.
Riassumo.
Compilare un pacchetto per la propria macchina può avere aumenti
prestazionali da nulli fino a percentuali molto elevate, dipende molto
dal pacchetto che si ricompila. Un esempio: se il pacchetto si occupa
quasi esclusivamente di I/O su disco, anche ricompilandolo il collo di
bottiglia resterà il disco e quindi la sua ricompilazione è nella
maggior parte dei casi inutile; se invece il pacchetto fa molti calcoli,
allora la ricompilazione può essere molto vantaggiosa (tieni presente
però che molto spesso se un programma fa molti calcoli, magari quei
calcoli sono fatti da librerie condivise e non direttamente dal
programma, quindi in questo caso bisogna compilarsi le librerie e non il
programma).
Bisogna anche capire che ricompilare un pacchetto compilato per i386 a
i686 può essere in molti casi già sufficiente (compilarlo per
l'effettiva CPU in molti casi si guadagneranno solo delle frazioni
percentuali).
Inoltre non occorre ricompilare tutto, ma soltanto quelle parti che
effettivamente portano ad un aumento prestazionale considerevole ed
inoltre solo se tali parti sono usate frequentemente (di solito è una
fatica inutile ricompilare un pacchetto che si usa una volta ogni sei
mesi e che permette di risparmiare un minuto di CPU)
Devi tenere conto che tutto è relativo all'hardware che hai a
disposizione e per ottenere le prestazioni ottimali potrebbe essere
necessario impostare i parametri di ottimizzazione con modalità
differenti: non è vero che ottimizzando tutto con -O3 si ottengono le
migliori prestazioni ... potrebbe anche essere che un eseguibile è più
veloce con -O2 o con -Os
Ci sono alcune parti che sono molto usate e quindi una loro compilazione
più vicina al proprio hardware può portare dei miglioramenti notevoli,
ma non sempre occorre compilarseli ...
1) Linux. Questa parte del sistema GNU/Linux è molto importante e
conviene installarsi prima di tutto la versione compilata per la propria
CPU. Esiste già compilata.
Se si dispone o si vuole installare una versione 2.6 recente eseguire
$ apt-cache search linux-image
e scegliere la versione già compilata per il proprio processore
se invece si usa Linux 2.4
$ apt-cache search kernel-image
e scegliere la versione già compilata per il proprio processore
Se si vogliono ottimizzare le prestazioni della propria macchina e avere
più memoria RAM libera conviene intervenire proprio su Linux:
ricompilarlo dopo averlo configurato in modo appropriato: eliminando
tutto quello che non serve per il proprio sistema, soprattutto togliendo
tutto ciò che è compilato staticamente, ma che non verrà mai usato e,
dove possibile, trasformare in modulo quelle parti che non vengono usate
sempre/spesso.
2) libc: queste librerie sono fondamentali ed usate dalla maggior parte
dei pacchetti; questo vuol dire che ottimizzando queste si ottimizza
tutto il sistema.
Se si usa Linux 2.6, allora è possibile installarsi il pacchetto libc6-i686
Quelli qui sopra elencati sono i due punti fondamentali che permettono,
in ogni situazione, di migliorare le prestazioni generali del proprio
sistema (con questi due accorgimenti puoi avere aumenti di prestazioni
anche del 50%, ad esempio sull'apertura di molte applicazioni). Poi
dipende molto per cosa usi GUN/Linux e quindi vedere quali sono i
programmi che più utilizzi; provare a ricompilarsi quelli e le librerie
che usano controllando se hai degli aumenti prestazionali accettabili
rispetto al costo della compilazione.
Se però si vogliono compilare molte cose, allora conviene prima di tutto
compilarsi il compilatore e le librerie da cui dipende, in modo da avere
eseguibili più prestazionali e poi partire compilandosi tutto il resto.
Ciao
Davide
--
Linux User: 302090: http://counter.li.org
Prodotti consigliati:
Sistema operativo: Debian: http://www.it.debian.org
Strumenti per l'ufficio: OpenOffice.org: http://it.openoffice.org
Database: PostgreSQL: http://www.postgres.org
Browser: FireFox: http://www.mozilla.org/products/firefox
Client di posta: ThunderBird: http://www.mozilla.org/products/thunderbird
--
Non autorizzo la memorizzazione del mio indirizzo di posta a chi usa
outlook: non voglio essere invaso da spam
Reply to: