
Bounce — новый Rust‑архиватор с адаптивными стратегиями сжатия
Bounce — быстрый архиватор на Rust, автоматически подбирает алгоритм (LZ77, Byte‑Shuffle, Huffman, Raw Store) и достигает 71.9 % сжатия 450 МБ .safetensors, скорость декомпрессии 1.3 ГБ/с.
Что такое Bounce?
Bounce – это полностью написанный на Rust архиватор без внешних зависимостей, ориентированный на задачи машинного обучения. Его главная особенность – Smart Routing: при упаковке файла система автоматически выбирает оптимальную стратегию сжатия:
- LZ77 – для обычного текста;
- Byte‑Shuffle – для весов нейросетей (например, .safetensors);
- Huffman – для бинарных данных;
- Raw Store – для уже сжатых файлов, где дополнительное сжатие бессмысленно.
Показатели производительности
- Сжатие 450 МБ файла .safetensors до 71.9 % от исходного размера, что лучше, чем у gzip и zstd в аналогичных условиях.
- Скорость декомпрессии достигает 1.3 ГБ/с, позволяя быстро разворачивать модели даже на ограниченных устройствах.
- Многопоточный pipeline использует до 73.6 МБ оперативной памяти на файл в 450 МБ.
- Размер блока задаётся через золотое сечение, что обеспечивает баланс между скоростью и степенью сжатия.
Где может пригодиться?
Bounce оптимален для CI/CD в проектах машинного обучения, где необходимо часто архивировать и передавать большие модели и датасеты. Он также подходит для edge‑деплоймента LLM, где ограничены ресурсы хранилища и процессора. Благодаря отсутствию внешних зависимостей, интеграция в существующие пайплайны происходит без лишних накладных расходов.
Как начать использовать?
Проект доступен на GitHub, поставляется в виде единого бинарного файла и поддерживает стандартный CLI‑интерфейс. Для сборки из исходников потребуется установленный Rust toolchain (cargo, rustc). Подробные инструкции и примеры команд находятся в репозитории.
Источник: статья на Habr ML, 10 июня 2026.
Bounce открывает новые возможности для ускорения CI/CD в ML‑проектах: автоматический выбор алгоритма сжатия экономит место и время передачи моделей. Для студентов и разработчиков это шанс снизить расходы на хранение, но потребуется знание Rust для интеграции.


