Dropbox publie le code du nouvel algorithme de compression DivANS

Technologie / Dropbox publie le code du nouvel algorithme de compression DivANS 1 minute de lecture

Titres Android



Si vous pensiez que 7-Zip fournissait d'excellents taux de compression, alors vous pourriez être gâté puisque Dropbox a publié son nouvel algorithme de compression DivANS en tant que projet open-source. Les développeurs affirment que DivANS peut compresser les données de manière plus dense que 7-Zip, Brotli ou même Zstandard.

Le code utilise largement le langage de programmation des systèmes Rust, qui est sponsorisé par Mozilla. Rust a été conçu pour être sûr et simultané, ce qui en fait un excellent langage pour développer ce type de logiciel.



DivANS utilise une nouvelle technologie vectorielle intrinsèque fournie par la plate-forme Rust. Comme il est multithread, il ne devrait pas non plus être lent.



Une autre technologie plus récente appelée représentation intermédiaire donne aux développeurs la liberté de forcer différents algorithmes de compression ensemble et donc de créer de meilleurs optimiseurs au fil du temps.



Inutile de dire que le projet est toujours à la recherche d'une plus grande participation communautaire de la part de ceux qui aimeraient donner de leur temps pour produire un meilleur algorithme de compression.

DivANS a été publié sous la licence Apache, ce qui devrait aider à diffuser le code car la licence est assez permissive. Cela étant dit, le code de compression dérivé basé sur DivANS peut ne pas avoir techniquement à être distribué avec la même licence. Ceci est quelque peu différent des licences copyleft qui accompagnent les versions logicielles basées sur la GPL.

L'un des aspects les plus intéressants de l'algorithme est lié à sa compilation. DivANS a été écrit en Rust, mais il a été compilé avec WebAssembly (WASM). Cela peut aider à expliquer comment une démo de navigateur est déjà disponible.



Le code WASM a été conçu pour accélérer l'exécution de sous-programmes en ligne avec lesquels JavaScript et d'autres langages d'interprétation auraient eu du mal. Bien qu'il ne soit pas destiné à remplacer JavaScript, cela semble être une situation dans laquelle WASM pourrait vraiment être bénéfique car l'écriture d'un algorithme de compression en JavaScript le condamnerait potentiellement à une exécution plutôt lente.

Compte tenu de l'immense quantité de données que Dropbox stocke pour le compte des clients, il pourrait être facile de voir les avantages d'une nouvelle méthode de compression de leur point de vue. Même une réduction de 1 ou 2% de la quantité totale de données stockées dans Dropbox permettrait des économies théoriquement énormes. Cela pourrait également réduire le temps de transmission des données sur un réseau aux utilisateurs.

Mots clés boîte de dépôt