Я использовал этот сценарий в течение многих лет, тогда как в 7z были проблемы с двумя ядрами, и я только что предложил себе блестящий i7:

"C:\Program Files\7-Zip\7z.exe" u -m5=lzma2 -mmt=8 %1.7z %1

Преимущество этого состоит в использовании 8 ядер, компрессии lzma2 и установке частоты процессора (как правило, в состоянии ускоренного шага) на макс + турбо. Потрясающая скорость и удобство (в Windows SendTo).

Мне недавно напомнили, что файлы размером более 4 ГБ трудно восстановить после случайного удаления (NTFS). Я только что стер резервную копию тома по ошибке ...

Извлеченный урок, я решил изменить свой сценарий, чтобы охватить архив по 2 ГБ томам.

"C:\Program Files\7-Zip\7z.exe" a -m5=lzma2 -mmt=8 %1.7z %1 -v2g

Потеря удобства обновления в процессе.

Что меня беспокоило, и это тема моего вопроса, так это то, что я не мог слышать, как вентиляторы процессора и корпуса, как они привыкли, в то время как xeon westmere становились все жарче. Я думал, что у меня проблема с оборудованием ... При проверке выяснилось, что не только процессор был занят примерно на 50% (на всех ядрах), но и не вышел из сокращенного состояния, в котором находился (12x из 22). Это усугубляет: используется только 25% доступной вычислительной мощности вместо 100% без учета объема. По моим оценкам, время архивирования было увеличено в 10 раз, а не в 4 раза.

Баг или фича? Я что-то пропустил? Это Windows 8.1/64, 4-ядерный Westmere Xeon с 24 ГБ оперативной памяти. 7Z 9,20 /64.

Я использую этот скрипт довольно часто, иногда для нескольких папок архивов:

for %%i in (%*) do call "....\archive.cmd" %%i

Довольно удобно в Windows, без нее жизнь будет сложнее :)

У кого-нибудь есть идея это исправить? Я немного погуглил без удачи ...

Спасибо за любой вклад. Хорошего дня.

1 ответ1

2

7-zip, вероятно, тратит больше времени на ввод-вывод, чем на сжатие данных. Я предлагаю использовать -mx9 (режим Ultra) и -md30 (размер словаря 1 ГБ).

Размер словаря по умолчанию составляет 16 МБ. В ультра-режиме размер словаря по умолчанию составляет 64 МБ. Z-zip использует 10,5-кратный размер словаря для буферов памяти (-md30 увеличивает общее использование памяти примерно до 11 ГБ). Конечно, большой размер словаря означает, что компьютер, извлекающий архив, должен также выделить этот большой словарь. Вы также можете попробовать -d28.


Увеличение количества потоков или использование ключа -v уменьшает сжатие (согласно документации командной строки). Настройка -v4095m должна разрешить восстановление потерянных файлов?

Параметр -slp (Установить режим большой страницы) может ускорить сжатие. Ознакомьтесь с описанием и предостережениями по адресу http://sevenzip.sourceforge.jp/chm/cmdline/switches/large_pages.htm.


В общем случае с таким объемом памяти вам не нужен файл подкачки (за исключением сохранения аварийных дампов). Если у вас большой файл подкачки, Windows попытается переместить большую часть памяти программы в файл подкачки и страницу в частях памяти программы по мере необходимости. Это также значительно замедлит программу.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .