Re: ottimizzare Debian
On Mon, Aug 04, 2003 at 01:54:24AM +0200, Matteo D'Alfonso wrote:
> Quello che mi piacerebbe fare è un "progetto di ottimizzazione Debian",
> i cui scopi principali sarebbero:
> - trovare un metodo semplice e _stabile_ per permettere all'utente di
> ricompilare, ottimizzati, i pacchetti che vuole
Allora, quello che mi ahnno suggerite e quello che ho trovato in giro è
questo.
Un software può essere ottimizzato se durante la compilazione si può
aggiungere l'opzione "-march=cpu type"[1].
A sua volta un pacchetto debian, se è fatto bene, utilizza la variabile
"DEBIAN_BUILDARCH=cpu type", che viene utilizzata durante la
compilazione così "-march=$DEBIAN_BUILDARCH".
Siccome non tutti i pacchetti sono stati fatti così, si può installare
pentium-builder, che è uno scriptino in perl che "forza" l'utilizzo di
"-march=$DEBIAN_BUILDARCH", e volendo si può specificare quale versione
del gcc utilizzare, in questa maniera si può compilare su una
testing/unstable pacchetti per stable.
Da analizzare c'è ancora apt-build, che ahimé è ad un livello
leggermente superiore al mio, oltre ad essere scritto in perl, linguaggio
che non conosco; se fosse stabile sarebbe perfetto però.
> - documenti ed HOWTO su come velocizzare la compilazione, su compiler
> farm e affini
L'argomento velocizzare la compilazione porta subito a tre brevi
risposte: openmosix, ccache e distcc.
OPENMOSIX
Mi ha fatto sudare sette camicie, la patch debian _non_ funziona, ho
dovuto per forza usare un kernel pulito.
Se si ha una macchina con MHz >500 la compilazione in generalmente non
migra, al massimo durante la compressione/decompressione, ma anche lì se
la macchina è abbastanza potente non migra niente.
È ovvio che si può forzare la migrazione, ma questo complicherebbe le
cose.
CCACHE
Provato una sola volta, e mi si sono allungati i tempi di compilazione
0_o! qualcosa deve essere andato storto.
DISTCC
Sembra perfetto per l'obbiettivo, peccato che non riesca a fare il
backporting da sid in woody, mi toccherà ricompilare senza avere il .deb
:-(
> - attivare un mirror pubblico di pachetti ottimizzati per architettura
> 586 o superiore, e magari anche per k6 (sono un fan AMD :)
Ecco, questa è contemporaneamente la parte semplice e difficile, dove il
difficile consiste nell'automatizzare il tutto, ho trovato e mi hanno
spedito scripts, che man mano sto leggendo e studiando.
Il sonno e la stanchezza si fanno sentire, prossime notizie settimana
prossima.
Werewolf.
P.S. un grazie a tutti quelli che mi hanno dato una mano, in particolare
a MaX di Debian-it che mi ha passato un .tgz niente male.
[1] http://gcc.gnu.org/onlinedocs/gcc-2.95.3/gcc_2.html#SEC31
--
Matteo D'Alfonso \ /
werewolf(at)pavia.linux.it \/\/
http://bagginslab.hopto.org/ /\/\
http://pavia.linux.it/ / \
Reply to: