Rilis crabz 0.7, utilitas kompresi dan dekompresi multi-utas yang ditulis dalam Rust

Utilitas crabz telah dirilis, yang mengimplementasikan kompresi dan dekompresi data multi-thread, mirip dengan utilitas pigz yang serupa. Kedua utilitas ini adalah versi gzip multi-utas, dioptimalkan untuk dijalankan pada sistem multi-inti. Crabz sendiri berbeda karena ditulis dalam bahasa pemrograman Rust, tidak seperti utilitas pigz, ditulis dalam C (dan, sebagian, dalam C++), dan menunjukkan peningkatan kinerja yang signifikan, dalam beberapa kasus mencapai 50%.

Di halaman pengembang terdapat perbandingan mendetail tentang kecepatan kedua utilitas dengan kunci berbeda dan backend yang digunakan. Pengukuran dilakukan pada file csv berukuran satu setengah gigabyte dengan menggunakan PC berbasis Prosesor AMD Ryzen 9 3950X 16-Core dengan RAM DDR64 4 GB dan sistem operasi Ubuntu 20 sebagai bangku pengujian. ke dalam analisis kinerja yang terperinci, Laporan singkat telah disiapkan:

  • crabz menggunakan backend zlib memiliki kinerja yang identik dengan pigz;
  • menggunakan backend zlib-ng hingga satu setengah kali lebih cepat daripada pigz;
  • crabz dengan backend karat sedikit (5-10%) lebih cepat daripada pigz.

Menurut pengembangnya, selain kecepatan yang lebih tinggi, crabz dibandingkan pigz juga memiliki keunggulan sebagai berikut:

  • crabz dengan backend deflate_rust menggunakan kode yang seluruhnya ditulis dalam Rust, yang lebih aman;
  • crabz bersifat lintas platform dan mendukung Windows, yang dapat menarik lebih banyak peserta;
  • crabz mendukung lebih banyak format (Gzip, Zlib, Mgzip, BGZF, Raw Deflate, dan Snap).

Meskipun berfungsi penuh, crabz dijelaskan oleh pengembang sebagai prototipe konseptual alat CLI menggunakan paket peti GZP.

Sumber: opennet.ru

Tambah komentar