Lanzamento de crabz 0.7, unha utilidade de compresión e descompresión multiproceso escrita en Rust

Lanzouse a utilidade crabz, que implementa a compresión e descompresión de datos multiproceso, similar á utilidade pigz similar. Ambas estas utilidades son versións multiproceso de gzip, optimizadas para executarse en sistemas multinúcleo. O propio Crabz diferénciase en que está escrito na linguaxe de programación Rust, a diferenza da utilidade pigz, escrito en C (e, parcialmente, en C++), e demostra un aumento significativo do rendemento, chegando nalgúns casos ao 50%.

Na páxina dos desenvolvedores hai unha comparación detallada da velocidade de ambas as utilidades con diferentes claves e backends empregados. As medicións realizáronse nun ficheiro csv de gigabyte e medio utilizando un PC baseado nun procesador AMD Ryzen 9 3950X de 16 núcleos con 64 GB de RAM DDR4 e o sistema operativo Ubuntu 20 como banco de probas. Para os que non queiran mergullarse. nunha análise detallada do rendemento, elaborouse un breve informe:

  • crabz usando o backend zlib é idéntico en rendemento a pigz;
  • usando o backend zlib-ng ata unha vez e media máis rápido que pigz;
  • O crabz coa parte traseira de ferruxe é lixeiramente (5-10%) máis rápido que o pigz.

Segundo os desenvolvedores, ademais da maior velocidade, o crabz, en comparación co pigz, tamén ten as seguintes vantaxes:

  • crabz co backend deflate_rust usa código totalmente escrito en Rust, que é máis seguro;
  • crabz é multiplataforma e admite Windows, que pode atraer máis participantes;
  • crabz admite máis formatos (Gzip, Zlib, Mgzip, BGZF, Raw Deflate e Snap).

Aínda que é totalmente funcional, crabz é descrito polo programador como un prototipo conceptual dunha ferramenta CLI que utiliza o paquete de caixas GZP.

Fonte: opennet.ru

Engadir un comentario