การเปิดตัว Crabz 0.7 ซึ่งเป็นยูทิลิตี้การบีบอัดและคลายการบีบอัดแบบมัลติเธรดที่เขียนด้วยภาษา Rust

ยูทิลิตี้ Crabz เปิดตัว ซึ่งใช้การบีบอัดข้อมูลแบบมัลติเธรดและคลายการบีบอัด คล้ายกับยูทิลิตี้ pigz ที่คล้ายกัน ยูทิลิตี้ทั้งสองนี้เป็น gzip เวอร์ชันมัลติเธรด ซึ่งได้รับการปรับแต่งให้ทำงานบนระบบมัลติคอร์ Crabz นั้นแตกต่างตรงที่มันเขียนในภาษาการเขียนโปรแกรม Rust ซึ่งแตกต่างจากยูทิลิตี้ pigz ที่เขียนด้วยภาษา C (และบางส่วนเป็น C++) และแสดงให้เห็นถึงประสิทธิภาพที่เพิ่มขึ้นอย่างมีนัยสำคัญ ในบางกรณีถึง 50%

ในหน้านักพัฒนาซอฟต์แวร์จะมีการเปรียบเทียบโดยละเอียดเกี่ยวกับความเร็วของยูทิลิตี้ทั้งสองด้วยคีย์และแบ็กเอนด์ที่แตกต่างกันที่ใช้ ทำการวัดบนไฟล์ csv หนึ่งกิกะไบต์ครึ่งโดยใช้พีซีที่ใช้โปรเซสเซอร์ AMD Ryzen 9 3950X 16-Core พร้อม RAM DDR64 ขนาด 4 GB และระบบปฏิบัติการ Ubuntu 20 เป็นตัวทดสอบ สำหรับผู้ที่ไม่ต้องการดำน้ำ ในการวิเคราะห์ประสิทธิภาพโดยละเอียด จึงได้จัดทำรายงานสั้นๆ ดังนี้

  • Crabz ที่ใช้แบ็กเอนด์ zlib นั้นมีประสิทธิภาพเหมือนกันกับ pigz
  • ใช้แบ็กเอนด์ zlib-ng เร็วกว่า pigz ถึงหนึ่งเท่าครึ่ง
  • Crabz ที่มีแบ็กเอนด์ที่เป็นสนิมจะเร็วกว่า pigz เล็กน้อย (5-10%)

ตามที่นักพัฒนานอกเหนือจากความเร็วสูงกว่า Crabz เมื่อเปรียบเทียบกับ pigz แล้วยังมีข้อดีดังต่อไปนี้:

  • Crabz ที่มีแบ็กเอนด์ deflate_rust ใช้โค้ดที่เขียนด้วยภาษา Rust ทั้งหมด ซึ่งมีความปลอดภัยมากกว่า
  • Crabz เป็นแพลตฟอร์มข้ามแพลตฟอร์มและรองรับ Windows ซึ่งสามารถดึงดูดผู้เข้าร่วมได้มากขึ้น
  • Crabz รองรับรูปแบบเพิ่มเติม (Gzip, Zlib, Mgzip, BGZF, Raw Deflate และ Snap)

แม้ว่า Crabz จะทำงานได้อย่างสมบูรณ์ แต่นักพัฒนาก็อธิบายว่า Crabz เป็นต้นแบบแนวคิดของเครื่องมือ CLI โดยใช้แพ็คเกจ GZP crate

ที่มา: opennet.ru

เพิ่มความคิดเห็น