රස්ට් වලින් ලියා ඇති බහු-නූල් සම්පීඩන සහ විසංයෝජන උපයෝගීතාවයක් වන crabz 0.7 මුදා හැරීම

crabz උපයෝගීතාව නිකුත් කරන ලද අතර, එය සමාන pigz උපයෝගීතාවයට සමාන බහු-නූල් දත්ත සම්පීඩනය සහ විසංයෝජනය ක්‍රියාත්මක කරයි. මෙම උපයෝගිතා දෙකම gzip හි බහු-නූල් අනුවාදයන් වන අතර, බහු-core පද්ධති මත ධාවනය කිරීමට ප්‍රශස්ත කර ඇත. Crabz ම වෙනස් වන්නේ, එය pigz උපයෝගීතාව මෙන් නොව, C (සහ, අර්ධ වශයෙන්, C++ හි) ලියා ඇති Rust ක්‍රමලේඛන භාෂාවෙන් ලියා ඇති අතර සැලකිය යුතු කාර්ය සාධනයක් පෙන්නුම් කරයි, සමහර අවස්ථාවල 50% දක්වා ළඟා වේ.

සංවර්ධකයින්ගේ පිටුවේ භාවිතා කරන ලද විවිධ යතුරු සහ පසුබිම් සහිත උපයෝගිතා දෙකෙහිම වේගය පිළිබඳ සවිස්තරාත්මක සංසන්දනයක් ඇත. 9 GB DDR3950 RAM සහිත AMD Ryzen 16 64X 4-Core ප්‍රොසෙසරයක් සහ Ubuntu 20 මෙහෙයුම් පද්ධතිය පරීක්ෂණ බංකුවක් ලෙස පාදක කරගත් පරිගණකයක් භාවිතයෙන් ගිගාබයිට් එකහමාරක csv ගොනුවක් මත මිනුම් සිදු කරන ලදී. කිමිදීමට අවශ්‍ය නැති අය සඳහා කාර්ය සාධනය පිළිබඳ සවිස්තරාත්මක විශ්ලේෂණයක් සඳහා, කෙටි වාර්තාවක් සකස් කර ඇත:

  • zlib පසුපෙළ භාවිතා කරන crabz කාර්ය සාධනය pigz වලට සමාන වේ;
  • zlib-ng පසුපෙළ pigz වලට වඩා එකහමාරක් දක්වා වේගයෙන් භාවිතා කිරීම;
  • rust backend සහිත crabz pigz වලට වඩා තරමක් (5-10%) වේගවත් වේ.

සංවර්ධකයින්ට අනුව, ඉහළ වේගයට අමතරව, pigz හා සසඳන විට crabz පහත සඳහන් වාසි ද ඇත:

  • deflate_rust පසුපෙළ සහිත crabz සම්පූර්ණයෙන්ම රස්ට් වලින් ලියා ඇති කේතය භාවිතා කරයි, එය වඩාත් ආරක්ෂිතයි;
  • crabz හරස් වේදිකාවක් වන අතර වැඩි සහභාගිවන්නන් ආකර්ෂණය කර ගත හැකි වින්ඩෝස් සඳහා සහය දක්වයි;
  • crabz තවත් ආකෘති සඳහා සහය දක්වයි (Gzip, Zlib, Mgzip, BGZF, Raw Deflate සහ Snap).

සම්පුර්ණයෙන්ම ක්‍රියාකාරී වුවද, crabz සංවර්ධකයා විසින් GZP කූඩ පැකේජය භාවිතා කරන CLI මෙවලමක සංකල්පීය මූලාකෘතියක් ලෙස විස්තර කරයි.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න