В libdeflate появился экспериментальный DEFLATE level 13. Это сознательно непрактичный режим сжатия: он выжимает лишние байты ценой огромного замедления. Стандартный DEFLATE — основа HTTP, ZIP, PNG, прошивок и бэкапов. Декодеры везде одинаковые, а вот энкодер можно улучшать — правильный выбор ссылок и кодов Хаффмана уменьшает размер без потери совместимости.
За базу взяли libdeflate level 12 — один из самых сильных практических сжимателей. Level 13 перебирает всё 32‑килобайтное окно DEFLATE, делает до 15 проходов оптимизации и применяет статический Хаффман к блокам до 50 000 байт. Для текстовых данных он откладывает разбиение на блоки: если первые 64 КБ текущего блока не содержат нулевых байт и имеют не больше 97 разных значений, мягкий лимит размера блока поднимается до 1 000 000 байт. Идея простая — стабильное распределение байт позволяет одному набору Хаффмана покрыть больше данных.
Парсер считает стоимость каждого варианта: выбирает самое дешёвое смещение для каждой длины совпадения, оценивает частоты литералов и длин, прикидывает частоты слотов смещения, сравнивает динамический и статический Хаффман. Разбиение блоков тоже задерживается — сохраняется до девяти кандидатов с состоянием парсера, затем оценивается их стоимость. Одиночный разрез просто должен быть выгоднее целого блока, а множественный — выигрывать минимум 512 бит. Все проходы и кандидаты жёстко ограничены, чтобы не уйти в бесконечный цикл, как в turtledeflate или ECT.
Разработчики придерживались строгой политики нулевой регрессии на корпусе Silesia: изменения принимали, только если они уменьшают хотя бы один файл, не увеличивая ни один другой. Результаты: на всём корпусе level 13 сэкономил 86 990 байт (0,134%) относительно level 12. Плата — замедление в 56,4 раза: общее время выросло с 29 секунд до почти 28 минут. Лучший результат на файле nci (-0,296%), худший на sao (-0,004%).
Этот уровень — не для повседневного сжатия, а для ситуаций, когда данные пакуют один раз, а распаковывают миллионы раз. Каждый сэкономленный байт оправдывает часы ожидания на сервере.