Как включить многопоточный LZMA2, используя 7-zip 9.20 в командной строке?

13

Как включить многопоточный LZMA2, используя 7-zip 9.20 в командной строке? Я знаю, что это обычно делается с опцией -t, например: "-tzip".

Как мне сделать это с LZMA2? Я пробовал -tlzma и -tlzma2, и ни один не работает. Я также попытался вообще не передавать -t, и он просто запускает однопоточный режим "lzma".

Вот команда, которая у меня сейчас есть, но она медленная и однопоточная:

"C:\Program Files\7-Zip\7z.exe" a -r -tzip -y XMLBackup.zip *.xml
djangofan
источник

Ответы:

11

Пытаться -m0=lzma2

"C:\Program Files\7-Zip\7z.exe" a -m0=lzma2 -r -y XMLBackup.zip *.xml

больше информации

Timothy003
источник
5
Это в сочетании с -mmt = x помогло мне. Кажется, что если lzma2 не указан, он использует более старое сжатие lzma и поэтому не может использовать несколько потоков. Если вы укажете оба варианта, он сможет использовать многопоточность.
Кибби
5

Файл справки говорит, что это mt = number_of_threads

Я знаю, что речь идет именно о командной строке, но я могу сказать одну вещь при использовании графического интерфейса, как только вы переключаетесь на LMZA2, вы получаете все опции. И это значительно ускоряет сжатие, используя все 100% мощности вашего процессора, а не обычные 25%.

Инго
источник
1
7z a -txz -mx=9 -mmt=on out.tar.xz in.tar

-txz использует XZ (LZMA2)

-mx=9 устанавливает уровень сжатия (1 самое быстрое / 9 лучших сжатие)

-mmt=onLZMA2 поддерживает только до 2 потоков (либо -mmt=onили -mmt=off), но многопоточность onпо умолчанию

https://sevenzip.osdn.jp/chm/cmdline/switches/method.htm#XZ

clarkk
источник
0

Режим многопоточности указан во -mфлаге и, по-видимому, реализован только для zip, 7z, bzip2 и xz. Более конкретно -mmt=<<# of threads>>. Однако, согласно документации, он включен по умолчанию. См. Руководство по CHM, прилагаемое к 7-zip для получения дополнительной информации.

Jessidhia
источник
Я попробовал это и не заметил никакого видимого увеличения скорости. Я не совсем уверен, что это работает.
Джангофан
Сколько физических ядер видит Windows на вашем компьютере? Вы можете сказать, используется ли многопоточность при использовании процессора; Возможно, вы уже видите лучшую скорость, а отключение многопоточности делает ее еще медленнее.
Джессидия
Я уже думал об этом. Я открыл 7-zip (версия 9.20) и посмотрел на то, что он «определил» как количество ядер. Это номер, который я использовал.
Джангофан
0

Я попробовал простую команду 7z без параметров многопоточности на сервере Windows 2012 с 2 процессорами, и оба процессора усердно работают, чтобы сжать мой большой файл, поэтому я думаю, что многопоточность активна по умолчанию.

Альберто Лепор
источник
Это было опубликовано в качестве ответа, но оно не пытается ответить на вопрос. Возможно, это должно быть редактирование, комментарий , другой вопрос или полное удаление. Учитывая ответы на этот вопрос, это скорее комментарий.
Cand3r