Contexte du benchmark

Choisir un algorithme de compression pour le déploiement logiciel est un compromis entre ratio, vitesse de compression, vitesse de décompression et mémoire consommée. Ce benchmark utilise 8 corpus de données réelles représentatifs des cas d'usage de Universal Installer V2.

Le meilleur algorithme dépend du corpus. Un algorithme qui excelle sur du code source peut être sous-optimal sur des binaires compilés. C'est pourquoi Universal Installer V2 choisit par blocs plutôt qu'avec un algorithme global.

Les 8 corpus de test

CorpusTailleType
Code source Python/JS1.2 GBTexte structuré
Binaires Windows (EXE/DLL)800 MBPE32/PE64
Binaires Linux (ELF)600 MBELF64
Images PNG/JPEG mixte2.1 GBDéjà compressé
Logs applicatifs500 MBTexte répétitif
Base de données SQLite1.5 GBDonnées structurées
Archive ZIP (mixte)3.0 GBDéjà compressé
Données médicales DICOM4.2 GBBinaire semi-compressé

Résultats — Ratio de compression

CorpusUXC v3 (auto)Zstd-19Brotli-11LZ4-HC
Code Python/JS3.1×3.4×3.6×2.1×
Binaires Windows1.9×1.8×1.7×1.4×
Binaires Linux ELF2.1×2.0×1.9×1.5×
Images PNG/JPEG1.02×0.98×0.96×1.01×
Logs applicatifs8.2×7.9×8.7×4.1×
SQLite2.8×2.6×2.5×1.8×
ZIP (mixte)1.01×0.97×0.95×1.00×
DICOM médical1.3×1.2×1.2×1.1×

UXC v3 en mode auto excelle sur les données déjà compressées (images, ZIP) car l'IA détecte l'entropie élevée et stocke en mode STORED (0 overhead). Sur le code source, Brotli-11 est légèrement supérieur mais 10× plus lent à comprimer.

Résultats — Vitesse

AlgorithmeCompression MB/sDécompression MB/sRAM peak
UXC v3 auto280950512 MB
Zstd niveau 19451200128 MB
Brotli niveau 11880064 MB
LZ4-HC380320032 MB

Recommandations pratiques

  • Packaging de release (CI/CD, ratio prioritaire) → Zstd-19 ou UXC auto. Le temps de compression s'amortit sur N téléchargements.
  • Archives internes (vitesse prioritaire) → LZ4-HC. Décompression 3× plus rapide, utile pour les caches locaux.
  • Distribution web grand public → UXC auto. Évite de recomprimer les données déjà compressées.
  • Données médicales DICOM → UXC auto ou Zstd-9 (compromis). Brotli-11 offre un meilleur ratio mais le temps de compression est prohibitif sur 4 GB.

Conclusion

UXC v3 en mode auto n'est pas systématiquement le meilleur algorithme en ratio brut — Brotli-11 le surpasse sur le code source, Zstd-19 sur les logs. Sa force est l'adaptation par bloc : il évite de dégrader le ratio sur les données déjà compressées (images, ZIP), un cas fréquent dans les packages réels. Pour un pipeline de déploiement mixte code + assets, UXC auto est le meilleur compromis global.

📦
PRODUIT LIÉ
Universal Installer V2.0
← Article précédent Article suivant →