3 puan yazan GN⁺ 2025-02-03 | 1 yorum | WhatsApp'ta paylaş
  • BZip3, BZip2'nin devamı olarak daha yüksek sıkıştırma oranı ve performans sunar.
  • Order-0 bağlam karışımı entropi kodlayıcısı, hızlı Burrows-Wheeler dönüşüm kodu, LZ77 tarzı dize eşleştirme ile PPM tarzı bağlam modellemeye dayalı RLE ve Lempel Ziv+Prediction geçişlerini kullanır.
  • Metin veya kod sıkıştırmada çok başarılıdır.
  • Perl kaynak kodu karşılaştırması
    • Perl5'in tüm sürümleri indirilip arşivden çıkarıldıktan sonra, .tar dosyaları çeşitli sıkıştırıcılarla test edildi.
    • BZip3, farklı ayarlarda diğer sıkıştırıcılara kıyasla daha iyi sıkıştırma performansı gösterir.
    • Açma süresinde de BZip3, paralel işlem sayesinde üstün performans sergiler.
  • Sorumluluk reddi
    • BZip3 kullanımından kaynaklanan veri kaybı için sorumluluk kabul edilmez.
    • BZip3'ün performansı büyük ölçüde derleyiciye bağlıdır; x64 Linux clang13 derlemesi iş parçacığı başına en fazla 17MiB/s sıkıştırma ve 23MiB/s açma hızına ulaşabilir.
    • x86, x86_64, armv6, armv7, aarch64, mips, sparc gibi çeşitli mimarilerde test edilmiştir.
  • Lisans
    • BZip3, LGPLv3 ile lisanslanmıştır.
    • Burrows-Wheeler dönüşümü ve LZP kodu Apache 2.0 lisansına sahiptir.
    • Diğer derleme zamanı ve çalışma zamanı bileşenleri kendi lisanslarına tabidir.

1 yorum

 
GN⁺ 2025-02-03
Hacker News görüşleri
  • Burrows-Wheeler Transform'u birçok kez uyguladım, ama neden çalıştığına dair sezgiyi hâlâ kavramak zor
    • Bu algoritma her zaman etkileyici
  • Perl kaynak kodunun sıkıştırma benchmark sonuçları paylaşılıyor
    • xz, bzip2, bzip3, zstd için sıkıştırma ve açma süreleriyle bellek kullanımı karşılaştırılıyor
    • Bellek kullanımı farkı dikkat çekici: 8M'ye karşı 18301M
  • Malbolge adlı zor bir programlama dilinde program yazan kişi gerçekten olağanüstü
  • Geçmişte verileri bzip ile yeniden sıkıştırdım, ama sonradan bu formatın eskiyip açılmasının zorlaştığını fark ettim
    • Artık uzun süre yaşayacak verimsiz formatlar kullanıyorum
  • BWT iyileştirmeleri harika
    • "uzun menzilli" sıkıştırma iyileştirmelerinde büyük potansiyel olduğunu düşünüyorum
    • Çoklu GB veri kümelerinde benzerlikleri verimli biçimde bulmak gerekiyor
  • Sıkıştırma verimliliğini kaydeden bir header ya da tail block yazılması yönünde küçük bir istek var
    • bzip2 bunu yapmıyor ama gzip yapıyor
  • bzip3'ün hâlâ büyük metin sıkıştırma benchmark'larında listelenmemesi garip
  • BWT tabanlı sıkıştırıcılarla karşılaştırmaya dair bir soru var
  • Girdideki uzun tekrarları önce sıkıştırıp yalnızca literal block'ları BWT'den geçirme fikri öneriliyor
    • Bu yöntem PPM ya da Brotli'nin varsayılan context modeling yaklaşımından daha kötü olabilir
  • Yüksek sıkıştırma algoritmaları oldukça uzmanlık gerektiren bir alan
    • zstd ya da brotli'yi düşük ayarlarda kullanmak, ağ veya depolama aktarımını azaltarak hızı artırabilir
    • Modern RAM miktarları sayesinde zstd ve brotli uzun menzilli eşleşmelerden yararlanabiliyor