Optimisation de pacman-g2 : Mettre l’oiseau en cage

Voici l’adaptation (que j’utilise depuis déjà un moment 🙂 ) du script « pacman-cage » d’Arch Linux (Lien) pour pacman-g2, qui permet d’éviter une trop grande fragmentation des fichiers de la base de donnée et un ralentissement notamment lors des recherches (« pacman -Ss »). Le système de fichier utilisé par le script est ext2, j’en ai donc profité pour ajouter le support du sytème de fichier reiserfs, connu pour ses performances dans la gestion d’un grand nombre de petits fichiers. Je voulais voir si il existait une différence de performances entre les deux dans le cas de la base de donnée de pacman-g2.

Attention peux casser la base de donnée de pacman-g2 : utilisez à vos risques et périls.

L’utilisation du script est très simple, lancer avec les droits roots :

pacman-g2-cage

pour cager le pacman-g2 (par défaut le système de fichier utilisé est reiserfs) ou

pacman-g2-cage ext2

pour utiliser ext2.
Si vous voulez revenir en arrière utilisez :

pacman-g2-uncage

Voici deux résultats représentatifs (dans le sens de la médiane sur les résultats obtenus) :
Configuration : Athlon64 1800+, 1Go DDR.

time pacman -Ss titi  ( normal )
real	1m6.462s
user	0m0.712s
sys	0m1.287s

time pacman -Ss titi  ( ext2 )
real	0m5.129s
user	0m0.539s
sys	0m0.333s

time pacman -Ss titi ( reiserfs )
real	0m4.673s
user	0m0.507s
sys	0m0.456s

Et voici un autre :

time pacman -Ss tint2  ( ext2 )
real	0m5.028s
user	0m0.535s
sys	0m0.356s

time pacman -Ss tint2  ( reiserfs )
real	0m4.716s
user	0m0.534s
sys	0m0.455s

Attention n’oubliez pas de vider les caches lors des tests :

echo 3 > /proc/sys/vm/drop_caches

On note ainsi un léger avantage pour reiserfs de l’ordre en moyenne du tiers de seconde, ce qui n’est que peu significatif. Sur mon laptop (Core 2 Duo 2 Ghz, 3Go DDR2), les résultats obtenus sont globalement équivalents, l’avantage de reiserfs tombe à moins de deux dixièmes de secondes.
Notons que l’écart se creuse à mesure que le nombre d’éléments dans la base de donnée augmente. A noter aussi que le script d’autocomplétion présenté dans l’article précédent est aussi bien plus rapide 😉

Lien vers le script pacman-g2-cage
Lien vers le script pacman-g2-uncage

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *