Se lanzó la herramienta crabz, que implementa compresión y descompresión de datos en múltiples hilos, similar a la herramienta pigz. Ambas herramientas son versiones multihilo del programa gzip, optimizadas para funcionar en sistemas de múltiples núcleos. Crabz se diferencia en que está escrita en el lenguaje de programación Rust, a diferencia de pigz, que está escrita en C (y, en parte, en C++), y muestra un aumento significativo en el rendimiento, que en algunos casos alcanza el 50%.
En la página de desarrolladores hay una comparación detallada de la velocidad de ambas herramientas con varias claves y backend utilizados. Las mediciones se realizaron en un archivo csv de 1.5 gigabytes utilizando como banco de pruebas un PC basado en el procesador AMD Ryzen 9 3950X de 16 núcleos y con 64 GB de RAM DDR4, ejecutando el sistema operativo Ubuntu 20. Para aquellos que no desean profundizar en un análisis detallado del rendimiento, se ha preparado un informe breve:
- crabz con el backend zlib es idéntico a pigz en términos de rendimiento;
- con el backend zlib-ng es hasta 1.5 veces más rápido que pigz;
- crabz con el backend rust es ligeramente (5-10%) más rápido que pigz.
Según los desarrolladores, además de una mayor velocidad, crabz, en comparación con pigz, también ofrece las siguientes ventajas:
- crabz con el backend deflate_rust utiliza un código completamente escrito en Rust, lo que es más seguro;
- crabz es multiplataforma y es compatible con Windows, lo que puede atraer a más usuarios;
- crabz admite más formatos (Gzip, Zlib, Mgzip, BGZF, Raw Deflate y Snap).
A pesar de su funcionalidad completa, crabz es descrito por el desarrollador como un prototipo conceptual de una herramienta CLI que utiliza el paquete crate GZP.
Fuente: opennet.ru
