14 algorithmes de compression passés au crible : 4 000 résultats dans un tableau interactif - Next
(Permalink)
C’est l’histoire d’un mec qui a compressé 60 jeux Steam pour économiser 380 GB, et ainsi faire en sorte qu’ils se lancent plus vite qu’avant.
Ce mec a compris que sur un disque dur classique, décompresser en temps réel avec un CPU moderne est parfois plus rapide que de lire des gigaoctets bruts de données à 7200 tours/min. Et pour cela, il a utilisé CompactGUI !
On pourrait se dire qu’un fichier compressé, c’est forcément plus lent à ouvrir mais en fait non, car un CPU récent peut décompresser en RAM plus vite qu’un disque dur ne peut lire.
C’est en partant de ce constant que
IridiumIO
a imaginé CompactGUI qui exploite cette anomalie physique. C’est une interface graphique pour compact.exe, une commande Windows que Microsoft a discrètement re-boostée en 2015 avec des algorithmes de compression modernes (XPRESS4K, XPRESS8K, XPRESS16K, LZX), puis totalement oubliée dans un coin de Windows…
En gros, vous faites pointer CompactGUI vers un dossier qui contient vox jeux, vous choisissez un algorithme de compression, vous appuyez sur un bouton, et Windows compresse tous les fichiers de façon transparente. Quand je dis transparente, je veux dire que le jeu continue de tourner normalement quand vous le lancez. Les fichiers restent accessibles comme avant, ils apparaissent dans l’Explorateur Windows sans différence visible, mais ils prennent tout simplement moins de place sur le disque.
Et quand vous lancez un jeu, Windows décompresse les fichiers en RAM à la volée, et vous jouez comme d’habitude. Cette sorcellerie, on la doit aux algorithmes de compression modernes de Windows 10+ et il y en a quatre :
Tenez par exemple, sur un fichier de test de 46.6 MB, LZX compresse à 15.7 MB, XPRESS16K à 20.1 MB, XPRESS8K à 21.1 MB, et XPRESS4K à 23.0 MB. En comparaison, la vieille compression NTFS classique (LZNT1) ne descend qu’à 26.2 MB. Les nouveaux algorithmes sont donc objectivement meilleurs, mais personne ne les utilise parce qu’il faut taper des commandes dans PowerShell.
Et c’est là que CompactGUI intervient puisqu’il transforme compact.exe en version compatible avec votre syndrome du clickopathe. C’est tout.
Voici quelques exemples réels de compression tels que remontés par la communauté CompactGUI :
Et ce qui est fou, c’est que dans la plupart des cas, l’impact sur les performances est dans la marge d’erreur des benchmarks. Les utilisateurs sur les forums racontent jouer tout à fait normalement, sans ralentissement perceptible. Certains équipés de disques durs plus anciens rapportent même des temps de chargement réduits.
Alors pourquoi ça marche aussi bien de compresser ?
Hé bien parce que les textures et les sons des jeux sont déjà compressés dans des formats spécialisés (DDS, OGG, MP3…etc), mais les assets bruts, eux, (scripts, configs, shaders, données de niveau…etc) sont souvent non compressés. XPRESS et LZX s’attaquent donc à ces fichiers non compressés et permettent ainsi de gagner beaucoup de place.
Et votre CPU dans tout ça ? Hé bien sur un processeur moderne dual ou quad-core, la décompression LZW (l’algo derrière LZX) est tellement légère qu’on ne la sent pas. XPRESS est encore plus rapide et le gain de temps sur la lecture disque compense largement le coût CPU de la décompression.
Mais attention, il y a un piège !!! Et ce piège c’est DirectStorage. Ce truc est une techno de Microsoft pour Windows 11 qui permet aux jeux de charger les assets directement du SSD vers la carte graphique, en contournant le CPU. C’est conçu pour les SSD ultra-rapides (NVMe) et ça réduit beaucoup les temps de chargement sur certains jeux.
Sauf que DirectStorage n’aime pas du tout la compression NTFS et les jeux qui l’utilisent peuvent planter ou avoir des performances dégradées si vous compressez leurs fichiers. Donc si vous êtes sur Windows 11 avec un NVMe récent et que vous jouez à des jeux AAA avec DirectStorage, n’utilisez pas CompactGUI. Mais si vous avez un bon vieux HDD, ou un SSD SATA classique, ou des jeux anciens qui n’utilisent pas la techno de DirectStorage, CompactGUI est une bénédiction.
Comme d’hab, ça dépend de vos jeux, de votre PC…etc. Donc y’a plus qu’à tester pour savoir si ça peut être bénéfique ou pas pour vous.
Pour l’installer, vous téléchargez CompactGUI depuis les releases GitHub , ou via Winget avec
winget install CompactGUI
Puis vous lancez l’app, vous sélectionnez un dossier de jeu (par exemple C:\Program Files (x86)\Steam\steamapps\common\Doom), vous choisissez un algorithme (XPRESS8K pour commencer), et vous cliquez sur Compress !
L’app vous affichera alors une barre de progression, le temps estimé, et le ratio de compression en temps réel. Et une fois terminé, votre jeu pèsera de 30 à 60% de moins, et vous pourrez le lancer normalement.
Et si jamais vous voulez décompresser, vous retournez dans CompactGUI et vous cliquez sur Uncompress. Ça restaurera tout à l’état d’origine !
CompactGUI intègre même une fonctionnalité de monitoring en arrière-plan. Vous configurez un dossier à surveiller (genre votre bibliothèque Steam), et CompactGUI compressera automatiquement les nouveaux jeux installés. Comme ça vous êtes tranquille !
Vous pouvez aussi ajouter CompactGUI au menu contextuel de l’Explorateur Windows ce qui vous permettra de faire un clic droit sur un dossier → Compress with CompactGUI.
Bref, un grand merci à Microsoft qui a développé des algos de compression dignes de WinRAR, les a intégrés nativement dans Windows 10, et les a laissé moisir dans un outil en ligne de commande que personne n’utilise.
Et merci à Lorenper pour le partage.

Vous savez, ce script bash de backup que vous avez écrit en 2018 et que vous n’osez plus toucher ? Celui avec les 150 lignes de mysqldump + tar + gzip + aws s3 cp qui marche à moitié et que vous relancez manuellement quand il plante ?
Hé bien vous allez pouvoir le foutre à la poubelle parce que maintenant y’a GoBackup !
GoBackup c’est un binaire codé en Go qui remplace tous vos scripts de backup maison d’un coup. MySQL, PostgreSQL, MongoDB, Redis, peu importe. Local, FTP, S3, Google Cloud, Azure, peu importe. Vous installez, vous configurez un fichier YAML, et c’est fini.
Ensuite, vous n’aurez plus jamais besoin de retoucher à tout ce bordel.
Avant GoBackup y’avait backup/backup, une gem Ruby qui faisait exactement ce job avec de la sauvegarde automatique, multi-bases, multi-destinations et c’était bien. Sauf que Ruby c’est lourd et les dépendances Ruby c’est l’enfer. Du coup le projet est mort tout doucement. Heureusement, huacnlee, un dev chinois, en a eu marre alors il a tout réécrit en Go. Zéro dépendance externe et un seul binaire compilé (installable aussi avec Brew pour ceux qui sont sous macOS).
Vous pouvez l’installer comme ceci (vérifiez le script) :
curl -sSL https://gobackup.github.io/install | sh
Ou via homebrew comme ceci :
brew install gobackup
Avec GoBackup, vous définissez vos bases de données, vos fichiers à archiver, vos destinations de stockage, votre planning, tout dans un fichier YAML propre et ensuite le binaire gère tout : Compression, chiffrement, upload, rotation des backups, notifications si ça échoue…etc. Bref, tout ce que vous faisiez à la main avec vos scripts pourris.
Et GoBackup est pas juste un CLI (Interface en ligne de commande). C’est un CLI + un daemon + une Web UI + un scheduler. Comme ça vous lancez “gobackup start” et ça tourne en background.
Le daemon surveille alors le planning défini dans votre config et lance les backups automatiquement. Et l’interface web vous permet de voir l’état des backups, les logs, les erreurs.
Avec GoBackup, vous remplacez littéralement 5 outils en un : votre script bash + cron + un monitoring pourri + un truc pour lire les logs + l’interface d’admin que vous avez jamais eu le temps de faire.
Votre config ressemble à ça :
models:
mon_app:
compress:
type: tgz
databases:
mon_mysql:
type: mysql
host: localhost
database: ma_base
username: user
password: $MYSQL_PASSWORD
storages:
mon_s3:
type: s3
bucket: mes-backups
region: eu-west-1
access_key_id: $AWS_KEY
secret_access_key: $AWS_SECRET
schedule:
every: 1day
at: "04:05"
Et c’est tout. Avec ce fichier, GoBackup dump votre base MySQL tous les jours à 4h05, compresse en .tar.gz, chiffre si vous voulez, et upload sur S3. Et si ça échoue vous recevez une notif. Et si ça marche vous avez les logs comme ça, pas besoin de surveiller, ni de débugger à 3h du matin parce que le backup a planté et que vous avez perdu 6 mois de données.
Notez quand même que GoBackup fait du backup classique, et pas du backup incrémental intelligent à la Restic ou à la Borg donc si vous avez 500 GB de données à backup tous les jours vous allez peut-être préférer un outil plus sophistiqué mais pour 90% des cas d’usage sysadmin standard, GoBackup suffira largement.
Votre script bash dégeu a eu une belle vie, il peut maintenant partir à la retraite.

C'est simplifié et les explications sont réduites à l'essentiel, mais c'est un bonne introduction aux formats et à la compression vidéo.
WinRAR 7.13 Final (en français) est un puissant gestionnaire d'archives vous permettant de diminuer la taille de vos fichiers.
The post WinRAR 7.13 Final en français (64-bit) first appeared on Bhmag.