انتشار crabz 0.7، یک ابزار فشرده سازی و رفع فشار چند رشته ای که در Rust نوشته شده است.

ابزار crabz منتشر شد که فشرده‌سازی و رفع فشار داده‌های چند رشته‌ای را شبیه به ابزار مشابه pigz پیاده‌سازی می‌کند. هر دوی این ابزارها نسخه های چند رشته ای gzip هستند که برای اجرا در سیستم های چند هسته ای بهینه شده اند. Crabz خود با این تفاوت که بر خلاف ابزار pigz به زبان برنامه نویسی Rust نوشته شده است، با زبان C (و تا حدی در C++) نوشته شده است، و افزایش عملکرد قابل توجهی را نشان می دهد که در برخی موارد به 50% می رسد.

در صفحه توسعه دهندگان مقایسه دقیقی از سرعت هر دو ابزار با کلیدهای مختلف و باطن های مورد استفاده وجود دارد. اندازه گیری ها بر روی یک فایل csv یک و نیم گیگابایتی با استفاده از رایانه شخصی مبتنی بر پردازنده AMD Ryzen 9 3950X 16-Core با 64 گیگابایت رم DDR4 و سیستم عامل اوبونتو 20 به عنوان یک میز آزمایش انجام شد. برای کسانی که نمی خواهند غواصی کنند. برای تجزیه و تحلیل دقیق عملکرد، گزارش کوتاهی تهیه شده است:

  • crabz با استفاده از باطن zlib از نظر عملکرد با pigz یکسان است.
  • استفاده از backend zlib-ng تا یک و نیم برابر سریعتر از pigz.
  • crabz با پسوند زنگ کمی (5-10٪) سریعتر از pigz است.

به گفته سازندگان، crabz علاوه بر سرعت بالاتر، در مقایسه با pigz دارای مزایای زیر نیز می باشد:

  • crabz با باطن deflate_rust از کدی استفاده می کند که کاملاً در Rust نوشته شده است که ایمن تر است.
  • crabz کراس پلتفرم است و از ویندوز پشتیبانی می کند که می تواند شرکت کنندگان بیشتری را جذب کند.
  • crabz از فرمت های بیشتری (Gzip، Zlib، Mgzip، BGZF، Raw Deflate و Snap) پشتیبانی می کند.

اگرچه کاملاً کاربردی است، اما crabz توسط توسعه دهنده به عنوان یک نمونه اولیه مفهومی از یک ابزار CLI با استفاده از بسته جعبه GZP توصیف شده است.

منبع: opennet.ru

اضافه کردن نظر