Keluaran crabz 0.7, utiliti pemampatan dan penyahmampatan berbilang benang yang ditulis dalam Rust

Utiliti crabz telah dikeluarkan, yang melaksanakan pemampatan dan penyahmampatan data berbilang benang, serupa dengan utiliti pigz yang serupa. Kedua-dua utiliti ini ialah versi gzip berbilang benang, dioptimumkan untuk dijalankan pada sistem berbilang teras. Crabz sendiri berbeza kerana ia ditulis dalam bahasa pengaturcaraan Rust, tidak seperti utiliti pigz, ditulis dalam C (dan, sebahagiannya, dalam C++), dan menunjukkan peningkatan prestasi yang ketara, dalam beberapa kes mencapai 50%.

Pada halaman pembangun terdapat perbandingan terperinci tentang kelajuan kedua-dua utiliti dengan kunci dan hujung belakang yang berbeza digunakan. Pengukuran dibuat pada fail csv satu setengah gigabait menggunakan PC berasaskan Pemproses AMD Ryzen 9 3950X 16-Core dengan 64 GB DDR4 RAM dan sistem pengendalian Ubuntu 20 sebagai bangku ujian. Bagi mereka yang tidak mahu menyelam ke dalam analisis terperinci prestasi, Laporan ringkas telah disediakan:

  • crabz menggunakan bahagian belakang zlib adalah sama dalam prestasi dengan pigz;
  • menggunakan bahagian belakang zlib-ng sehingga satu setengah kali lebih pantas daripada pigz;
  • crabz dengan bahagian belakang berkarat sedikit (5-10%) lebih cepat daripada pigz.

Menurut pemaju, sebagai tambahan kepada kelajuan yang lebih tinggi, crabz, berbanding dengan pigz, juga mempunyai kelebihan berikut:

  • crabz dengan bahagian belakang deflate_rust menggunakan kod yang ditulis sepenuhnya dalam Rust, yang lebih selamat;
  • crabz ialah platform merentas dan menyokong Windows, yang boleh menarik lebih ramai peserta;
  • crabz menyokong lebih banyak format (Gzip, Zlib, Mgzip, BGZF, Raw Deflate dan Snap).

Walaupun berfungsi sepenuhnya, crabz digambarkan oleh pembangun sebagai prototaip konsep alat CLI menggunakan pakej peti GZP.

Sumber: opennet.ru

Tambah komen