تقترح هذه المكتبة اثنين من برامج ترميز الإنتروبيا عالية السرعة:
Huff0 ، برنامج ترميز Huffman مصمم لوحدة المعالجة المركزية الحديثة، ويتميز بعمليات OoO (خارج الترتيب) على ALU (وحدة المنطق الحسابي) المتعددة، مما يحقق سرعات ضغط وإلغاء ضغط سريعة للغاية.
FSE هو نوع جديد من أدوات التشفير Entropy، استنادًا إلى نظرية ANS، من Jarek Duda، مما يحقق دقة ضغط دقيقة (مثل التشفير الحسابي) بسرعات أعلى بكثير.
فرع | حالة |
---|---|
يتقن | |
ديف |
يتم تشغيل المعايير على Intel Core i7-5600U، مع Linux Mint 64 بت. يتم تجميع كود المصدر باستخدام نظام دول مجلس التعاون الخليجي 4.8.4، وضع 64 بت. يتم إنشاء ملفات الاختبار باستخدام برنامج probagen
المقدم. يقوم Benchmark بتقسيم ملفات العينة إلى كتل بحجم 32 كيلو بايت. تتم مقارنة Huff0
و FSE
بـ zlibh
، برنامج تشفير huffman داخل zlib، المقدم من Frederic Kayser.
ملف | الترميز | نسبة | ضغط | تخفيف الضغط |
---|---|---|---|---|
بروبا80 | ||||
هوف0 | 6.38 | 600 ميجابايت/ثانية | 1350 ميجابايت/ثانية | |
FSE | 8.84 | 325 ميجابايت/ثانية | 440 ميجابايت/ثانية | |
زليبه | 6.38 | 265 ميجابايت/ثانية | 300 ميجابايت/ثانية | |
بروبا14 | ||||
هوف0 | 1.90 | 595 ميجابايت/ثانية | 860 ميجابايت/ثانية | |
FSE | 1.91 | 330 ميجابايت/ثانية | 460 ميجابايت/ثانية | |
زليبه | 1.90 | 255 ميجابايت/ثانية | 250 ميجابايت/ثانية | |
Proba02 | ||||
هوف0 | 1.13 | 525 ميجابايت/ثانية | 555 ميجابايت/ثانية | |
FSE | 1.13 | 325 ميجابايت/ثانية | 445 ميجابايت/ثانية | |
زليبه | 1.13 | 180 ميجابايت/ثانية | 210 ميجابايت/ثانية |
حسب التصميم، لا يستطيع هوفمان كسر حد "1 بت لكل رمز"، وبالتالي يفقد الكفاءة في التوزيعات المضغوطة، مثل Proba80
. FSE خالي من هذا الحد، وتبقى كفاءة الضغط الخاصة به قريبة من حد شانون في جميع الظروف. ومع ذلك، فإن هذه الدقة ليست ضرورية دائمًا، وتظهر التوزيعات الأقل انضغاطًا اختلافًا بسيطًا مع هوفمان. ومن جانبه، يوفر Huff0 ميزة سرعة هائلة.
المساهمات الخارجية موضع ترحيب وتشجيعها. الفرع "الرئيسي" مخصص فقط لاستضافة الإصدارات المستقرة. فرع "dev" هو الفرع الذي يتم فيه دمج جميع المساهمات. إذا كنت تريد اقتراح تصحيح، فيرجى الالتزام بفرع "المطور" أو فرع الميزات المخصص. لا يُسمح بالالتزام المباشر بـ "السيد".