3 पॉइंट द्वारा GN⁺ 2025-02-03 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • BZip3, BZip2 का उत्तराधिकारी है, जो बेहतर compression ratio और performance प्रदान करता है.
  • यह Order-0 context mixing entropy coder, तेज़ Burrows-Wheeler transform code, और LZ77-स्टाइल string matching तथा PPM-स्टाइल context modeling पर आधारित RLE और Lempel Ziv+Prediction pass का उपयोग करता है.
  • यह टेक्स्ट या code compression में उत्कृष्ट है.
  • Perl source code benchmark
    • Perl5 के सभी versions को डाउनलोड और extract करने के बाद, विभिन्न compressors का उपयोग करके .tar files पर compression test किया गया.
    • BZip3 ने विभिन्न settings में अन्य compressors की तुलना में बेहतर compression performance दिखाई.
    • decompression समय में भी BZip3 ने parallel processing के माध्यम से उत्कृष्ट performance दिखाई.
  • अस्वीकरण
    • BZip3 के उपयोग से होने वाले data loss के लिए कोई ज़िम्मेदारी नहीं ली जाती.
    • BZip3 की performance compiler पर बहुत अधिक निर्भर करती है, और x64 Linux clang13 build प्रति thread अधिकतम 17MiB/s compression और 23MiB/s decompression हासिल कर सकती है.
    • इसे विभिन्न architectures पर test किया गया है: x86, x86_64, armv6, armv7, aarch64, mips, sparc आदि.
  • लाइसेंस
    • BZip3, LGPLv3 के तहत licensed है.
    • Burrows-Wheeler transform और LZP code, Apache 2.0 license के अंतर्गत हैं.
    • अन्य compile-time और runtime components अपने-अपने licenses का पालन करते हैं.

1 टिप्पणियां

 
GN⁺ 2025-02-03
Hacker News टिप्पणियाँ
  • Burrows-Wheeler Transform को कई बार इम्प्लीमेंट किया है, लेकिन यह क्यों काम करता है इसकी सहज समझ अब भी पकड़ में नहीं आती
    • यह एल्गोरिदम हमेशा प्रभावशाली लगता है
  • Perl source code के compression benchmark नतीजे साझा किए गए
    • xz, bzip2, bzip3, zstd के compression और decompression time तथा memory usage की तुलना की गई
    • memory usage का अंतर खास तौर पर ध्यान देने योग्य है: 8M बनाम 18301M
  • Malbolge जैसी कठिन programming language में प्रोग्राम लिखने वाला लेखक सचमुच कमाल का है
  • पहले bzip से data को फिर से compress किया था, लेकिन बाद में एहसास हुआ कि यह format पुराना हो गया और decompress करना मुश्किल हो गया
    • अब ऐसे inefficent format का उपयोग करता हूँ जो लंबे समय तक टिकेगा
  • BWT में सुधार शानदार है
    • लगता है कि "long-range" compression improvements की काफी संभावनाएँ हैं
    • multi-GB data sets में समानताओं को efficiently ढूँढ़ना ज़रूरी है
  • एक छोटी-सी request है कि compression efficiency दर्ज करने वाला header या tail block लिखा जाए
    • bzip2 ऐसा नहीं करता, लेकिन gzip करता है
  • यह अजीब है कि bzip3 अभी तक बड़े text compression benchmarks में सूचीबद्ध नहीं है
  • BWT-आधारित compressors के साथ तुलना को लेकर सवाल है
  • यह विचार रखा गया कि input में लंबे repetitions को पहले compress किया जाए, और सिर्फ literal blocks को BWT से प्रोसेस किया जाए
    • यह तरीका PPM या Brotli की basic context modeling से खराब हो सकता है
  • high-compression algorithms बहुत ही specialized क्षेत्र हैं
    • zstd या brotli को low settings पर इस्तेमाल करने से network या storage transfer कम होकर गति बढ़ सकती है
    • आधुनिक RAM की मात्रा की वजह से zstd और brotli long-range matches का फायदा उठा सकते हैं