Κυκλοφορία του crabz 0.7, ένα βοηθητικό πρόγραμμα συμπίεσης και αποσυμπίεσης πολλαπλών νημάτων γραμμένο σε Rust

Κυκλοφόρησε το βοηθητικό πρόγραμμα crabz, το οποίο υλοποιεί συμπίεση και αποσυμπίεση δεδομένων πολλαπλών νημάτων, παρόμοια με το παρόμοιο βοηθητικό πρόγραμμα pigz. Και τα δύο αυτά βοηθητικά προγράμματα είναι εκδόσεις πολλαπλών νημάτων του gzip, βελτιστοποιημένες για να εκτελούνται σε συστήματα πολλαπλών πυρήνων. Το ίδιο το Crabz διαφέρει στο ότι είναι γραμμένο στη γλώσσα προγραμματισμού Rust, σε αντίθεση με το βοηθητικό πρόγραμμα pigz, γραμμένο σε C (και, εν μέρει, σε C++) και παρουσιάζει σημαντική αύξηση απόδοσης, φτάνοντας σε ορισμένες περιπτώσεις το 50%.

Στη σελίδα των προγραμματιστών υπάρχει μια λεπτομερής σύγκριση της ταχύτητας και των δύο βοηθητικών προγραμμάτων με διαφορετικά κλειδιά και backend που χρησιμοποιούνται. Οι μετρήσεις έγιναν σε ένα αρχείο csv ενάμιση gigabyte χρησιμοποιώντας έναν υπολογιστή που βασίζεται σε επεξεργαστή AMD Ryzen 9 3950X 16-Core με 64 GB DDR4 RAM και το λειτουργικό σύστημα Ubuntu 20 ως πάγκο δοκιμών. Για όσους δεν θέλουν να βουτήξουν σε μια λεπτομερή ανάλυση της απόδοσης, έχει ετοιμαστεί μια σύντομη αναφορά:

  • Το crabz χρησιμοποιώντας το backend zlib είναι πανομοιότυπο σε απόδοση με το pigz.
  • χρησιμοποιώντας το backend zlib-ng έως και μιάμιση φορά πιο γρήγορα από το pigz.
  • Το crabz με το backend της σκουριάς είναι ελαφρώς (5-10%) ταχύτερο από το pigz.

Σύμφωνα με τους προγραμματιστές, εκτός από την υψηλότερη ταχύτητα, το crabz, σε σύγκριση με το pigz, έχει επίσης τα ακόλουθα πλεονεκτήματα:

  • Το crabz με το backend deflate_rust χρησιμοποιεί κώδικα εξ ολοκλήρου γραμμένο σε Rust, ο οποίος είναι πιο ασφαλής.
  • Το crabz είναι cross-platform και υποστηρίζει Windows, τα οποία μπορούν να προσελκύσουν περισσότερους συμμετέχοντες.
  • Το crabz υποστηρίζει περισσότερες μορφές (Gzip, Zlib, Mgzip, BGZF, Raw Deflate και Snap).

Αν και πλήρως λειτουργικό, το crabz περιγράφεται από τον προγραμματιστή ως ένα εννοιολογικό πρωτότυπο ενός εργαλείου CLI που χρησιμοποιεί το πακέτο κλουβιών GZP.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο