Crabz 0.7 ning chiqarilishi, Rust tilida yozilgan ko'p tarmoqli siqish va dekompressiya dasturi

Shu kabi pigz yordam dasturiga o'xshash ko'p tarmoqli ma'lumotlarni siqish va dekompressiyani amalga oshiradigan crabz yordam dasturi chiqarildi. Ushbu yordamchi dasturlarning ikkalasi ham ko'p yadroli tizimlarda ishlash uchun optimallashtirilgan gzip ning ko'p tarmoqli versiyalari. Crabz o'zi C tilida (va qisman C++ da) yozilgan pigz yordam dasturidan farqli o'laroq Rust dasturlash tilida yozilganligi bilan ajralib turadi va unumdorlikning sezilarli o'sishini namoyish etadi, ba'zi hollarda 50% ga etadi.

Ishlab chiquvchilar sahifasida har ikkala yordamchi dasturning tezligini har xil tugmachalar va foydalanilgan backendlar bilan batafsil taqqoslash mavjud. Oβ€˜lchovlar bir yarim gigabaytlik csv faylida 9 GB DDR3950 operativ xotiraga ega 16 yadroli AMD Ryzen 64 4X protsessoriga asoslangan kompyuter va Ubuntu 20 operatsion tizimidan foydalangan holda amalga oshirildi. ish faoliyatini batafsil tahlil qilish uchun qisqa hisobot tayyorlandi:

  • zlib backend yordamida crabz ishlash jihatidan pigz bilan bir xil;
  • zlib-ng backend-dan pigz-ga qaraganda bir yarim baravar tezroq foydalanish;
  • zang orqa tomoni bilan crabz pigzga qaraganda bir oz (5-10%) tezroq.

Ishlab chiquvchilarning fikriga ko'ra, yuqori tezlikdan tashqari, crabz, pigz bilan solishtirganda, quyidagi afzalliklarga ham ega:

  • deflate_rust backend bilan crabz butunlay Rustda yozilgan koddan foydalanadi, bu esa xavfsizroq;
  • crabz oΚ»zaro platforma hisoblanadi va Windows-ni qoΚ»llab-quvvatlaydi, bu esa koΚ»proq ishtirokchilarni jalb qilishi mumkin;
  • crabz ko'proq formatlarni qo'llab-quvvatlaydi (Gzip, Zlib, Mgzip, BGZF, Raw Deflate va Snap).

To'liq funktsional bo'lsa-da, crabz ishlab chiquvchi tomonidan GZP sandiq paketidan foydalangan holda CLI vositasining kontseptual prototipi sifatida tasvirlangan.

Manba: opennet.ru

a Izoh qo'shish