Crabz 0.7, Rust хэл дээр бичигдсэн олон урсгалтай шахах, задлах хэрэгсэл

Crabz хэрэглүүрийг гаргасан бөгөөд энэ нь ижил төстэй pigz хэрэгсэлтэй адил олон урсгалтай өгөгдлийг шахах, задлах ажиллагааг хэрэгжүүлдэг. Эдгээр хэрэгслүүдийн аль аль нь gzip-ийн олон урсгалтай хувилбарууд бөгөөд олон цөмт систем дээр ажиллахаар оновчтой болсон. Crabz нь C (мөн хэсэгчлэн C++) хэл дээр бичигдсэн pigz хэрэглүүрээс ялгаатай нь Rust програмчлалын хэлээр бичигдсэнээрээ ялгаатай бөгөөд гүйцэтгэлийн мэдэгдэхүйц өсөлтийг харуулж, зарим тохиолдолд 50% хүрдэг.

Хөгжүүлэгчдийн хуудсан дээр өөр өөр товчлуурууд болон ашигласан ар талын хэрэгслүүдийн хурдыг нарийвчлан харьцуулсан болно. Хэмжилтийг нэг ба хагас гигабайт csv файл дээр AMD Ryzen 9 3950X 16 цөмт процессор, 64 ГБ DDR4 RAM, Ubuntu 20 үйлдлийн систем дээр суурилсан компьютер ашиглан хийсэн. Усанд шумбахыг хүсдэггүй хүмүүст зориулав. Гүйцэтгэлийн нарийвчилсан шинжилгээнд зориулж богино хэмжээний тайлан бэлтгэв.

  • zlib backend ашигладаг crabz нь гүйцэтгэлийн хувьд pigz-тэй ижил байна;
  • zlib-ng backend-ийг pigz-ээс нэг хагас дахин хурдан ашиглах;
  • crabz with rust backend нь pigz-ээс арай (5-10%) хурдан байдаг.

Хөгжүүлэгчдийн үзэж байгаагаар крабз нь өндөр хурдтайгаас гадна пигзтэй харьцуулахад дараахь давуу талуудтай.

  • deflate_rust backend бүхий crabz нь бүхэлдээ Rust дээр бичигдсэн кодыг ашигладаг бөгөөд энэ нь илүү найдвартай;
  • crabz нь хөндлөн платформ бөгөөд Windows-ийг дэмждэг бөгөөд энэ нь илүү олон оролцогчдыг татах боломжтой;
  • crabz нь илүү олон форматыг дэмждэг (Gzip, Zlib, Mgzip, BGZF, Raw Deflate болон Snap).

Хэдийгээр бүрэн ажиллагаатай боловч crabz-ийг хөгжүүлэгчид GZP хайрцагны багцыг ашиглан CLI хэрэгслийн концепцийн загвар гэж тодорхойлсон байдаг.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх