По разным причинам я использую LZMA2 для сжатия множества блоков данных разного размера. Поскольку параллельно обрабатывается много блоков, использование памяти необходимо поддерживать на разумном уровне. Учитывая n байтов данных, какой будет оптимальный размер словаря? Типичные исходные блоки различаются по размеру от 4 КБ до 4 МБ.
Я полагаю, что нет смысла иметь размер словаря больше, чем число байтов для сжатия? Я также предполагаю, что если бы данные сжимались до половины размера, не было бы смысла иметь размер словаря, превышающий n / 2 байта.
Конечно, это всего лишь предположение, и мы будем очень признательны за понимание того, почему это так или нет,
Приветствия
John