On Thu, Jun 19, 2008 at 03:49:25PM +0300, Led wrote: > В сообщении от Thursday 19 June 2008 15:30:48 Alexey Tourbin написал(а): > > Самый плохой способ группировки -- это случайное перемешивание файлов. > > Осмысленная же группировка по каталогам всегда "less than random". > > А то, что он (lzma) однотредовый - это издержки алгоритма или дизайна? Новый формат контейнера (который пока alpha) предусматривает параллельное сжатие и расжатие. liblzma.git doc/history.txt The new .lzma format allows dividing the data in multiple independent blocks, which can be compressed and uncompressed independenly. This makes multi-threading possible with algorithms that aren't inherently parallel (such as LZMA). There's also a central index of the sizes of the blocks, which makes it possible to do limited random-access reading with granularity of the block size. Но я бы не советовал обольщаться на эту тему. Как поиск по словарю, так и частотное кодирование -- это по сути очень инкрементные алгоритмы, и ничего распараллелить здесь на самом деле нельзя. Распараллеливание достигается за счёт "independent blocks", а это ухудшает сжатие. То есть порубили файл на куски и давай сжимать по кускам. При этом сходство между кусками уже никак учесть нельзя. А инкрементное "скользящее окно" улавливает это сходство очень хорошо.