xz - la nuova compressione Slackware per i pacchetti
Moderatore: Staff
Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
-
Mario Vanoni
- Iper Master

- Messaggi: 3174
- Iscritto il: lun 3 set 2007, 21:20
- Nome Cognome: Mario Vanoni
- Slackware: 12.2
- Kernel: 3.0.4 statico
- Desktop: fluxbox/seamonkey
- Località: Cuasso al Monte (VA)
xz - la nuova compressione Slackware per i pacchetti
Core 2 Dual 1866MHz, 4GB RAM, Slackware 12.2
comprimere dir 964MB/32 files
bzip2 4m34 > 801MB
xz 11m37 > 802MB
decomprimere la stessa
bzip2 3m42 > 964MB
xz 2m28 > 964MB
comprimere con find dir 1.2GB/48203 dirs/files
bzip2 7m34 > 788MB
xz 64m31 > 766MB (*)
decomprimere la stessa
bzip2 6m50 > 1.2GB
zx 4m42 > 1.2GB
compressione opzioni -9 -f
decompressione -d
find -type f -exec ...
(*) incredulo, rifatto due volte, tempi identici
comprimere dir 964MB/32 files
bzip2 4m34 > 801MB
xz 11m37 > 802MB
decomprimere la stessa
bzip2 3m42 > 964MB
xz 2m28 > 964MB
comprimere con find dir 1.2GB/48203 dirs/files
bzip2 7m34 > 788MB
xz 64m31 > 766MB (*)
decomprimere la stessa
bzip2 6m50 > 1.2GB
zx 4m42 > 1.2GB
compressione opzioni -9 -f
decompressione -d
find -type f -exec ...
(*) incredulo, rifatto due volte, tempi identici
Ultima modifica di Mario Vanoni il sab 16 mag 2009, 22:29, modificato 1 volta in totale.
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: xz - la nuova compressione Slackware per i pacchetti
Bhè, se i dati sono questi, perchè si è passati da tgz a txz? Sembra solo più veloce durante la decompressione.
Ma lo hai eseguito con il paccketto xz della corrent o quello della slackware ufficiale?
Intanto per informazioni, l'elenco dei file presenti in un pacchetto, che nel formato tgz lo si può ottenere con:
Con il nuovo formato lo si può ottenere mettendo in pipe:
Ovviamente valgono anche altre opzioni di tar,
Emanuele
Ma lo hai eseguito con il paccketto xz della corrent o quello della slackware ufficiale?
Intanto per informazioni, l'elenco dei file presenti in un pacchetto, che nel formato tgz lo si può ottenere con:
Codice: Seleziona tutto
tar -ztf pacchetto.tgzCodice: Seleziona tutto
xz -dc pacchetto.txz | tar -tEmanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- albatros
- Iper Master

- Messaggi: 2098
- Iscritto il: sab 4 feb 2006, 13:59
- Kernel: 6.18.0
- Desktop: gnome and lxqt
- Distribuzione: Ubuntu 24.04 & FC 41
- Località: Darmstadt - Germania
Re: xz - la nuova compressione Slackware per i pacchetti
Beh, la maggior parte delle persone i pacchetti li scompattano e basta, quindi, a parità di capacità di compressione, mi sembra ragionevole aver scelto xz al posto di bzip2 (e abbandonato gzip data la minor capacità di compressione).spina ha scritto:Bhè, se i dati sono questi, perchè si è passati da tgz a txz? Sembra solo più veloce durante la decompressione.
E' vero però che su macchine datate il processo di installazione dei pacchetti potrebbe allungarsi notevolmente...
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: xz - la nuova compressione Slackware per i pacchetti
Sarebbe stato interessante avere i dati anche di gzip sugli stessi file.albatros ha scritto:...
Beh, la maggior parte delle persone i pacchetti li scompattano e basta, quindi, a parità di capacità di compressione, mi sembra ragionevole aver scelto xz al posto di bzip2 (e abbandonato gzip data la minor capacità di compressione)...
Ma forse la scelta si è basata su altri criteri, nessuno ha trovato niente su internet?
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: xz - la nuova compressione Slackware per i pacchetti
Trovato:
Emanuele...first departure from the use of gzip for
compressing Slackware packages. Instead, we will be using xz, based on
the LZMA compression algorithm. xz offers better compression than even
bzip2, but still offers good extraction performance (about 3 times better
than bzip2 and not much slower than gzip in our testing). Since support
for bzip2 has long been requested, support for bzip2 and the original lzma
format has also been added (why not?), but this is purely in the interest
of completeness -- we think most people will probably want to use either
the original .tgz or the new .txz compression wrappers. The actual
Slackware package format (which consists of the layout within the package
envelope) has not changed, but this is the first support within Slackware's
package tools for using alternate compression algorithms.
Some people have asked why we don't pick a single extension, such as
.slk. While there's certainly a case to be made for that idea, the tools
would still need to support .tgz to handle older packages. Sticking with
".tgz" for everything makes no sense. Using extensions that reflect the
compression format used by the package envelope seems to be the most
transparent approach, and the one that best follows tradition.
As an example of the compression improvement with .txz, have a look
at the kernel-source package:
Before: kernel-source-2.6.29.2_smp-noarch-1.tgz (73808508 bytes)
After: kernel-source-2.6.29.2_smp-noarch-1.txz (49150104 bytes)
The size of the main package tree in /slackware has been reduced from
1.9GB to 1.4GB by converting most packages to .txz.
Most of the packages have been converted from .tgz to .txz, but we
will continue to make the gzip, pkgtools, slackpkg, tar, and xz packages
in .tgz format for the foreseeable future.
Enjoy! And thanks to Lasse Collin for the great work on xz.![]()
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
xz vs. bzip2 vs. gzip
Ho fatto i test sul pacchetto citato.
gzip:
xz:
bzip2:
Riassumendo:
Velocità di compressione:
.
Emanuele
gzip:
Codice: Seleziona tutto
time gzip kernel-source-2.6.29.2_smp-noarch-1.tar
real 0m42.608s
user 0m40.770s
sys 0m0.920s
Codice: Seleziona tutto
stat kernel-source-2.6.29.2_smp-noarch-1.tar.gz
Size: 74479700 Blocks: 145614 IO Block: 4096 regular file
Codice: Seleziona tutto
time gunzip kernel-source-2.6.29.2_smp-noarch-1.tar.gz
real 0m9.904s
user 0m6.700s
sys 0m1.060s
Codice: Seleziona tutto
time xz kernel-source-2.6.29.2_smp-noarch-1.tar
real 8m13.594s
user 8m6.290s
sys 0m2.170sCodice: Seleziona tutto
stat kernel-source-2.6.29.2_smp-noarch-1.tar.xz
Size: 49150104 Blocks: 96093 IO Block: 4096 regular file
Codice: Seleziona tutto
time xz -d kernel-source-2.6.29.2_smp-noarch-1.tar.xz
real 0m15.013s
user 0m11.680s
sys 0m1.850sCodice: Seleziona tutto
time bzip2 kernel-source-2.6.29.2_smp-noarch-1.tar
real 1m54.522s
user 1m52.330s
sys 0m1.270sCodice: Seleziona tutto
stat kernel-source-2.6.29.2_smp-noarch-1.tar.bz2
Size: 57805912 Blocks: 113014 IO Block: 4096 regular file
Codice: Seleziona tutto
time bunzip2 kernel-source-2.6.29.2_smp-noarch-1.tar.bz2
real 0m25.105s
user 0m22.790s
sys 0m2.080sVelocità di compressione:
- gzip
- bzip2 (+3 volte)
- xz (+13 volte)
- xz
- bzip2 (+1,2 volte)
- gzip (+1,5 volte)
- gzip
- xz (+1,7 volte)
- bzip2 (+3,4 volte)
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- conraid
- Staff

- Messaggi: 13631
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: xz - la nuova compressione Slackware per i pacchetti
Non ho statistiche adesso, se vuoi la prossima volta faccio delle prove, ma nella realizzazione dei pacchetti ho visto che per alcuni pacchetti si hanno miglioramenti notevoli.
inkscape è passato da 20mb a 10mb per esempio
ntop da 29 a 21
ma purtroppo sono anche cambiate le versioni quindi non è un test "vero"
ecco, questo è un esempio più vero in quanto ho solo cambiato gli slackbuild per aggiungere il suffiso per i 64bit, che naturamente essendo compilati su 32bit non è stato preso in considerazione
Per bind invece ho cambiato solamente doinst.sh aggiungengo "-r /dev/urandom" come nella Slackware (che ha ancora bind 9.4.3)
quindi i miglioramenti in termini di dimensione dei pacchetti ci sono eccome
Però ho trovato anche più lento l'estrazione, in alcuni casi notevolmente più letta
già che ci sono una prova veloce
p.s.
il mio ls è un alias a "ls --color=auto -Fh"
p.s.
ho tolto kipi-plugins perché avevo erroneamento confrontato versioni diverse
inkscape è passato da 20mb a 10mb per esempio
ntop da 29 a 21
ma purtroppo sono anche cambiate le versioni quindi non è un test "vero"
ecco, questo è un esempio più vero in quanto ho solo cambiato gli slackbuild per aggiungere il suffiso per i 64bit, che naturamente essendo compilati su 32bit non è stato preso in considerazione
Codice: Seleziona tutto
$ ls -l
-rw-r--r-- 1 root root 12M 2009-04-08 16:44 digikam-0.10.0-i686-2cf.tgz
-rw-r--r-- 1 root root 7,6M 2009-05-24 18:33 digikam-0.10.0-i686-3cf.txz
Codice: Seleziona tutto
$ ls -l
-rw-r--r-- 1 root root 2,1M 2009-03-23 11:13 bind-9.6.0_P1-i686-4cf.tgz
-rw-r--r-- 1 root root 1,7M 2009-05-24 17:51 bind-9.6.0_P1-i686-5cf.txzPerò ho trovato anche più lento l'estrazione, in alcuni casi notevolmente più letta
già che ci sono una prova veloce
Codice: Seleziona tutto
# time installpkg inkscape-r21290-i686-1cf.tgz
real 0m7.431s
user 0m4.994s
sys 0m1.909s
# time installpkg inkscape-r21383-i686-1cf.txz
real 0m11.792s
user 0m9.893s
sys 0m1.939sp.s.
il mio ls è un alias a "ls --color=auto -Fh"
p.s.
ho tolto kipi-plugins perché avevo erroneamento confrontato versioni diverse
- Blizzard
- Master

- Messaggi: 1509
- Iscritto il: mar 2 gen 2007, 22:53
- Nome Cognome: Giovanni Santostefano
- Slackware: 12.2
- Kernel: 2.6.27.7-smp
- Desktop: Fluxbox
- Contatta:
Re: xz - la nuova compressione Slackware per i pacchetti
ciao,
ho notato che xz reagisce bene se si tratta di comprimere un mucchio di files piccoli.
Se sono grandi e pochi i test di Mario sono andati a perdere ad esempio.
Inoltre il tempo medio di compressione è tremendamente vasto.
Bisognerebbe fare una media dei tipi di pacchetti ad esempio presenti su slacky e vedere quanto tempo in più perderanno i pacchettizzatori ad ogni nuova release e soprattutto se questo influirà sul numero di pacchetti del repository.
In fin dei conti i pacchettizzatori passano un tempo "rilevante" sulla compressione dei pacchetti rispetto agli utenti finali che ne decomprimono un numero mediamente non eccessivo in un ciclo di distribuzione.
IMVHO tgz
ciao
Gio
ho notato che xz reagisce bene se si tratta di comprimere un mucchio di files piccoli.
Se sono grandi e pochi i test di Mario sono andati a perdere ad esempio.
Inoltre il tempo medio di compressione è tremendamente vasto.
Bisognerebbe fare una media dei tipi di pacchetti ad esempio presenti su slacky e vedere quanto tempo in più perderanno i pacchettizzatori ad ogni nuova release e soprattutto se questo influirà sul numero di pacchetti del repository.
In fin dei conti i pacchettizzatori passano un tempo "rilevante" sulla compressione dei pacchetti rispetto agli utenti finali che ne decomprimono un numero mediamente non eccessivo in un ciclo di distribuzione.
IMVHO tgz
ciao
Gio
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: xz - la nuova compressione Slackware per i pacchetti
I risultati di conraid rispecchiano i miei sui sorgenti del kernel. Si vede che xz riesce a comprimere da 1,5 a quasi 2 volte in più rispetto a gzip. Ma non capisco perchè si è scelta la soluzione di diminuire la dimensione facendo aumentare il tempo di decompressione (e quindi installazione) ma soprattutto quello di compressione (13 volte di più sono una marea di tempo!!).
Mi chiedo se al giorno d'oggi non sia una scelta sbagliata, in fondo gli hard-disk così come la velocità di internet aumentano sempre di più.
Insomma, da quello che mostrano i test la scelta porta svantaggi sia ai pacchettizzatori (maggior tempo di compressione), sia a gli utenti finali (maggior tempo di decompressione). Gli unici a ricavarci vantaggi sembrano essere gli utenti che hanno una 56Kb.
Emanuele
Mi chiedo se al giorno d'oggi non sia una scelta sbagliata, in fondo gli hard-disk così come la velocità di internet aumentano sempre di più.
Insomma, da quello che mostrano i test la scelta porta svantaggi sia ai pacchettizzatori (maggior tempo di compressione), sia a gli utenti finali (maggior tempo di decompressione). Gli unici a ricavarci vantaggi sembrano essere gli utenti che hanno una 56Kb.
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- conraid
- Staff

- Messaggi: 13631
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: xz - la nuova compressione Slackware per i pacchetti
per far entrare più cose in un dvdspina ha scritto:I risultati di conraid rispecchiano i miei sui sorgenti del kernel. Si vede che xz riesce a comprimere da 1,5 a quasi 2 volte in più rispetto a gzip. Ma non capisco perchè si è scelta la soluzione di diminuire la dimensione facendo aumentare il tempo di decompressione (e quindi installazione) ma soprattutto quello di compressione (13 volte di più sono una marea di tempo!!).
- raffaele181188
- Packager

- Messaggi: 789
- Iscritto il: ven 7 set 2007, 21:40
- Nome Cognome: Raffaele
- Slackware: current
- Kernel: 2.6.29.6
- Desktop: KDE 4.3
- Distribuzione: Ubuntu
- Località: DearSkin (FG)
Re: xz - la nuova compressione Slackware per i pacchetti
Beh, stesso discorso di sopra... C'è Internet, non serve a molto far entrare più cose in un DVD. Tra l'altro basterebbe togliere quell'infinità di pacchetti-doppione...
- conraid
- Staff

- Messaggi: 13631
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: xz - la nuova compressione Slackware per i pacchetti
A parte che non ho scelto io la cosaraffaele181188 ha scritto:Beh, stesso discorso di sopra... C'è Internet, non serve a molto far entrare più cose in un DVD. Tra l'altro basterebbe togliere quell'infinità di pacchetti-doppione...
Ma forse sfugge che la banda si paga
Tenere un repository come slacky.eu per esempio ha comportato non poter inserire openoffice dato che bloccava tutto
Con slackers.it sforo la banda che mi hanno dato con i miei pochi e poco usati pacchetti
Per i pacchetti doppione, secondo me ne mancano anche alcuni di doppioni
-
Mario Vanoni
- Iper Master

- Messaggi: 3174
- Iscritto il: lun 3 set 2007, 21:20
- Nome Cognome: Mario Vanoni
- Slackware: 12.2
- Kernel: 3.0.4 statico
- Desktop: fluxbox/seamonkey
- Località: Cuasso al Monte (VA)
Re: xz - la nuova compressione Slackware per i pacchetti
Core 2 Dual 1866MHz, 4GB RAM, Slackware64
1.3GB, 53087 dirs/files
xz -9 -f 51m53
xz -d 1m12
bzip2 -9 -f 4m6
bzip2 -d 2m3
niente altri test, rimetto la 12.2
1.3GB, 53087 dirs/files
xz -9 -f 51m53
xz -d 1m12
bzip2 -9 -f 4m6
bzip2 -d 2m3
niente altri test, rimetto la 12.2
Ultima modifica di Mario Vanoni il lun 25 mag 2009, 13:59, modificato 1 volta in totale.
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: xz - la nuova compressione Slackware per i pacchetti
Certo che tu sei proprio un masochista Mario? Povero il tuo PC 
Emanuele
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: xz - la nuova compressione Slackware per i pacchetti
Non ho capito bene il discorso della banda. Io pensavo che uno avesse un tot di banda in upload, quindi se ci sono troppe connessioni (e una maggior quantità di roba da scaricare implica maggiori connessioni) la velocità si riduce per tutti, ma per questo esistono i mirrors.
Poi la Slackware non è mai stata una distribuzione nota per le sue dimensioni, ricordo che quando la Slackware stava su un CD c'erano già distro che stavano su uno e due DVD. Quindi presumo che questo problema lo hanno già affrontato altre distro.
Bho, non so, io rimango scettico verso questa decisione, "chi vivrà vedrà", diceva qualcuno,
Emanuele
Poi la Slackware non è mai stata una distribuzione nota per le sue dimensioni, ricordo che quando la Slackware stava su un CD c'erano già distro che stavano su uno e due DVD. Quindi presumo che questo problema lo hanno già affrontato altre distro.
Bho, non so, io rimango scettico verso questa decisione, "chi vivrà vedrà", diceva qualcuno,
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama