Wydanie crabz 0.7, narzędzia do wielowątkowego kompresowania i dekompresowania, napisanego w Rust

Wydano narzędzie crabz, które implementuje wielowątkowe kompresowanie i dekompresowanie danych, podobnie jak narzędzie pigz. Oba te narzędzia są wielowątkowymi wersjami programu gzip, zoptymalizowanymi do pracy na systemach wielordzeniowych. Sam crabz różni się tym, że został napisany w języku programowania Rust, w przeciwieństwie do narzędzia pigz, które zostało napisane w C (częściowo też w C++) i wykazuje znaczący wzrost wydajności, w niektórych przypadkach osiągający 50%.

Na stronie deweloperów znajduje się szczegółowe porównanie prędkości działania obu narzędzi z różnymi kluczami i użytymi backendami. Pomiarów dokonano na półtora gigabajtowym pliku csv, korzystając jako stanowiska testowego z PC opartym na AMD Ryzen 9 3950X 16-Core Processor z 64 GB pamięci DDR4 RAM oraz na systemie operacyjnym Ubuntu 20. Dla tych, którzy nie chcą zagłębiać się w szczegółową analizę wydajności, przygotowano krótkie sprawozdanie:

  • crabz z użyciem backendu zlib jest równy pigz pod względem wydajności;
  • z użyciem backendu zlib-ng do półtora raza szybszy niż pigz;
  • crabz z backendem rust nieznacznie (o 5-10%) szybszy od pigz.

Według deweloperów, oprócz większej prędkości działania, crabz w porównaniu do pigz posiada również następujące zalety:

  • crabz z backendem deflate_rust wykorzystuje kod w całości napisany w Rust, co jest bardziej bezpieczne;
  • crabz jest wieloplatformowy i wspiera Windows, co może przyciągnąć więcej uczestników;
  • crabz wspiera więcej formatów (Gzip, Zlib, Mgzip, BGZF, Raw Deflate i Snap).

Pomimo pełnej funkcjonalności, crabz charakteryzuje się jako koncepcyjny prototyp narzędzia CLI, korzystającego z paczki crate GZP.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster