Zstandard (zstd) — быстрый алгоритм сжатия без потерь, CLI-утилита и эталонная библиотека на C.
lz4/lz4
Очень быстрый алгоритм сжатия без потерь на C с быстрым декодером и настраиваемым балансом скорости и степени сжатия.
- Звёзды
- 12,611
- Форки
- 1,642
- Открытые issues
- 7
- Последний коммит
- 23 часа назад
Что это?
LZ4 — алгоритм сжатия без потерь, написанный на C. В режиме по умолчанию он сжимает данные со скоростью более 500 MB/s на ядро и масштабируется на несколько ядер. Скорость распаковки достигает нескольких GB/s на ядро; в многопроцессорных системах её обычно ограничивает пропускная способность RAM.
Скорость сжатия можно настраивать с помощью коэффициента ускорения, жертвуя степенью сжатия ради скорости. Вариант LZ4_HC тратит больше времени CPU, чтобы добиться лучшей степени сжатия; скорость распаковки у всех вариантов одинакова. Проект также поддерживает сжатие со словарём через API и инструмент командной строки lz4, что помогает при работе с небольшими файлами.
В проекте есть block API, API для сжатия с высокой степенью сжатия и frame API для потоков; форматы block и frame задокументированы. Для сборки доступны стандартный Makefile, CMake, Meson, файлы Visual Studio и установка через vcpkg.
Ключевые возможности
- 01Сжатие со скоростью более 500 MB/s на ядро с масштабированием на несколько ядер
- 02Распаковка со скоростью нескольких GB/s на ядро
- 03Настраиваемый коэффициент ускорения для баланса между степенью сжатия и скоростью
- 04Режим LZ4_HC для достижения более высокой степени сжатия
- 05Сжатие со словарём через API и CLI lz4
Сценарии использования
- Сжатие данных в реальном времени, когда важно свести к минимуму нагрузку на CPU
- Ускорение хранения или передачи больших наборов данных, когда важна скорость распаковки
- Сжатие небольших файлов с помощью общего словаря
- Встраивание быстрого компрессора в приложения на C или C++
Быстрый старт
- 1
Соберите проект из каталога с исходным кодом
make - 2
Установите собранные бинарные файлы и библиотеку
make install
Что важно знать
- Утилита командной строки lz4 распространяется по лицензии GPL-2.0-or-later, а библиотека — по лицензии BSD 2-Clause.
- Метаданные лицензии проекта неясны, поэтому перед использованием проверьте файлы лицензии.
В подборках
Темы
Частые вопросы
- Что такое lz4?
- Очень быстрый алгоритм сжатия без потерь на C с быстрым декодером и настраиваемым балансом скорости и степени сжатия. LZ4 — алгоритм сжатия без потерь, написанный на C. В режиме по умолчанию он сжимает данные со скоростью более 500 MB/s на ядро и масштабируется на несколько ядер. Скорость распаковки достигает нескольких GB/s на ядро; в многопроцессорных системах её обычно ограничивает пропускная способность RAM.
- lz4 можно использовать бесплатно? Какая у него лицензия?
- lz4 распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- lz4 всё ещё поддерживается?
- Активно поддерживается. Последний коммит в lz4 — 6 нояб. 2026 г..
- Для чего можно использовать lz4?
- Сжатие данных в реальном времени, когда важно свести к минимуму нагрузку на CPU Ускорение хранения или передачи больших наборов данных, когда важна скорость распаковки Сжатие небольших файлов с помощью общего словаря Встраивание быстрого компрессора в приложения на C или C++
- Как установить lz4?
- Соберите проект из каталога с исходным кодом: make Установите собранные бинарные файлы и библиотеку: make install
- Где скачать lz4?
- Исходный код и инструкции по установке — на GitHub: https://github.com/lz4/lz4
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Нативные биндинги C# и высокоуровневые потоковые API для LZ4, Zstandard и экспериментального OpenZL в .NET и Unity.
Многопоточный оптимизатор PNG и APNG без потери качества на Rust, доступный как CLI-инструмент и библиотека Rust.
Быстрая конкурентная библиотека кеширования для Go с ограничением по памяти, вытеснением по стоимости и допуском записей с помощью TinyLFU.
Программа для резервного копирования с дедупликацией, опциональным сжатием и аутентифицированным шифрованием, которая хранит только изменившиеся фрагменты данных.
Консольный CLI для сжатия, распаковки и просмотра архивов множества форматов с определением формата по расширению файла.