COMPRESSION LZ77 SOUS LINUX (OU WINDOWS)

Signaler
Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003
-
Messages postés
9
Date d'inscription
lundi 20 mai 2002
Statut
Membre
Dernière intervention
27 septembre 2003
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/9963-compression-lz77-sous-linux-ou-windows

Messages postés
9
Date d'inscription
lundi 20 mai 2002
Statut
Membre
Dernière intervention
27 septembre 2003

Pour optimiser ton prog tu peux :
* remplacer les laVar++ par des ++laVar
* transformer max, min en macros
* limiter les controles lors de la compression, quite à faire une seconde passe de contrôle après une première de compression

* restreindre les entrés/sorties en stockant tout en mémoire (heu là faut voir)
* transformer ton dico en AVL, ou déja eb ABR
Messages postés
4
Date d'inscription
lundi 5 août 2002
Statut
Membre
Dernière intervention
7 août 2002

Je n'ai pas encore fait de routine de décompression, mais ca ne saurai tarder..
Je serai fixé sur son (bon?) fonctionnement...

Ok pour les utilitaires de profilage, je ne savais pas que cela existait, merci du
conseil, ca pourra m'ètre utile car j'ai l'impression que certaines routines
bouffent plus de temps que prévu...
Si jamais tu sais ou je peux trouver ces progs...

Le problème de temps vient en (grosse) partie du fait que le dictionnaire est
parcouru en entier afin de trouver la + grande redondance.
Pour améliorer un peu, il faudrai arréter la recherche dès qu'une
suite de données en double trouvée soit suffisament grande, pour que sa
compression soit considérée comme 'rentable'.

...un peu d'ASM ca ferai du bien aussi....
Messages postés
269
Date d'inscription
mercredi 24 avril 2002
Statut
Membre
Dernière intervention
9 juin 2003

t'a essayé de décompresser ce que tu compresses avec ton prog ?
pour optimiser tu as des utilitaires de profilage sous linux (te permettant de voir quelles fonctions prennent le plus de temps, etc..)