Crabz 0.7 kaleratzea, Rust-en idatzitako hari anitzeko konpresio eta deskonpresioaren erabilgarritasuna

Crabz erabilgarritasuna kaleratu zen, hari anitzeko datuen konpresioa eta deskonpresioa ezartzen dituena, antzeko pigz erabilgarritasunaren antzera. Bi utilitate hauek gzip-en hari anitzeko bertsioak dira, nukleo anitzeko sistemetan exekutatzeko optimizatuta. Crabz berez desberdina da Rust programazio-lengoaian idatzita dagoelako, pigz utilitatean ez bezala, C-n idatzia (eta, partzialki, C++-n), eta errendimendu-igoera nabarmena erakusten duelako, kasu batzuetan %50era iritsi arte.

Garatzaileen orrian bi utilitateen abiadura konparaketa zehatza dago erabilitako gako eta backend ezberdinekin. Neurketak gigabyte eta erdiko csv fitxategi batean egin ziren AMD Ryzen 9 3950X 16 nukleoko prozesadore batean oinarritutako PC bat erabiliz, 64 GB DDR4 RAM eta Ubuntu 20 sistema eragilea proba-banku gisa. Murgildu nahi ez dutenentzat. errendimenduaren azterketa zehatz batean, Txosten labur bat prestatu da:

  • crabz zlib backend-a erabiliz pigz-en errendimenduaren berdina da;
  • zlib-ng backend-a pigz baino aldiz bat eta erdi azkarrago erabiltzea;
  • herdoilaren atzealdea duen crabz pigz baino apur bat (% 5-10) azkarragoa da.

Garatzaileen arabera, abiadura handiagoaz gain, crabz-ek, pigz-ekin alderatuta, abantaila hauek ere baditu:

  • deflate_rust backend-ekin crabz-ek Rust-en idatzitako kodea erabiltzen du, seguruagoa dena;
  • crabz plataforma anitzekoa da eta Windows onartzen du, eta horrek parte hartzaile gehiago erakar ditzake;
  • crabz-ek formatu gehiago onartzen ditu (Gzip, Zlib, Mgzip, BGZF, Raw Deflate eta Snap).

Erabat funtzionala bada ere, crabz GZP crate paketea erabiliz CLI tresna baten prototipo kontzeptual gisa deskribatzen du garatzaileak.

Iturria: opennet.ru

Gehitu iruzkin berria