Відбувся випуск утиліти crabz, що реалізує багатопоточний стиск та розпакування даних, аналогічно подібній утиліті pigz. Обидві ці утиліти є багатопотокові варіанти програми gzip, оптимізовані для роботи на багатоядерних системах. Сам же crabz відрізняється тим, що написаний мовою програмування Rust, на відміну від утиліти pigz, написаної C (і, частково, C++), і демонструє значний приріст продуктивності, у деяких випадках досягає 50%.
На сторінці розробників є детальне порівняння швидкості роботи обох утиліт з різними ключами та використаними бекендами. Заміри проводилися на півторагігабайтовому csv-файлі з використанням як тестовий стенд ПК на базі AMD Ryzen 9 3950X 16-Core Processor і з 64 GB DDR4 RAM і на операційній системі Ubuntu 20. Для тих же, хто не хоче занурюватися в докладний підготовлено короткий звіт:
- crabz з використанням бекенду zlib ідентичний pigz за продуктивністю;
- з використанням бекенду zlib-ng до півтора раза швидше, ніж pigz;
- crabz з бекендом rust незначно (на 5-10%) швидше за pigz.
За словами розробників, крім вищої швидкості роботи, crabz, у порівнянні з pigz, також має наступні переваги:
- crabz з бекендом deflate_rust використовує код, повністю написаний на Rust, що є безпечнішим;
- crabz є кроссплатформенним і підтримує Windows, що може залучити більше учасників;
- crabz підтримує більше форматів (Gzip, Zlib, Mgzip, BGZF, Raw Deflate та Snap).
Незважаючи на повну працездатність, crabz характеризується розробником як концептуальний прототип CLI-інструменту, що використовує crate-пакет GZP.
Джерело: opennet.ru