Kompresi 7-Zip pada komputer multi-core

20

Apakah 7-Zip memanfaatkan sistem multiprosesor atau multi-core saat mengompresi?

Misalnya, apakah akan ada peningkatan kecepatan hingga 16 kali pada sistem 16 inti dengan asumsi tidak ada hambatan disk atau memori?

Atau terbatas pada 2 utas (2 kali percepatan pada sistem dengan lebih dari satu CPU atau inti)?


Sunting : Untuk meringkas: versi stabil saat ini dari 7-Zip (dan lebih lama) tidak mengambil keuntungan penuh dari lebih dari 2 CPU / core ketika dikompresi sebagai 7z (hanya untuk Zip dan BZip2), tetapi versi 9 (saat ini dalam versi beta) tidak . Opsi baris perintah untuk menggunakan 16 core dengan versi 9 adalah (ini ada di folder instalasi untuk versi Windows, di file bantuan,, 7-zip.chmVersi Baris Perintah / Switch / -m (Set Metode kompresi) / <near> "Set mode multithread "):

-mt16
Peter Mortensen
sumber
1
Saya tidak berpikir rangkumannya cukup akurat, lihat beberapa jawaban lain untuk lebih jelasnya ...
rogerdpack

Jawaban:

10

Anda harus menggunakan versi beta untuk mendapatkan akses untuk lebih banyak core. Beta seperti stabil di perangkat lunak lain, jangan khawatir tentang hal itu. Ada penjelasan di posting forum di situs resmi. Saya sudah menggunakannya untuk sementara waktu, dan tidak ada masalah dengan itu.

Pertama

Kedua

Ngomong-ngomong, saya menggunakan 7z 9,13 beta x64 pada saat ini. Menggunakannya pada lingkungan produktif juga, kedahsyatan. (Terima kasih Igor untuk perangkat lunak yang hebat.;))

Apache
sumber
3
Sejak itu, versi stabil baru keluar, yang mendukung kompresi multi-utas secara default, tidak perlu untuk rilis beta.
Apache
Itu tidak benar. Itu dapat menggunakan 4, 8, dan lebih banyak core. Cukup gunakan versi terbaru. Astaga.
Apache
4
Perhatikan bahwa jawaban ini menggunakan LZMA2 dan bukan LZMA. LZMA2 dapat menggunakan lebih dari dua core dengan memecah file menjadi potongan-potongan dan memprosesnya secara mandiri. Ini dapat menghasilkan LZMA yang menawarkan rasio kompresi yang lebih tinggi.
Louis
4

Saat membuat file 7-Zip, ia dapat menggunakan dua utas, sementara membuat file ZIP, ia dapat menggunakan delapan utas (pada mesin delapan inti saya).

akira
sumber
1
Anda dapat menggunakan 7z dengan metode LZMA2 untuk menggunakan core maksimum
Behrouz.M
1
@raypixar Tidak berfungsi untuk saya di komputer i7. Hanya algoritma BZip2 yang memungkinkannya berjalan penuh 8-thread, algoritma lainnya tidak berjalan 100%, hanya ~ 20% yang terbaik. BAHKAN LZMA2 menampilkan 8/8 inti pada panel pengaturan tetapi saat memproses, itu hanya menghasilkan ~ 20% CPU.
Edward
1
@Edward: tidak dapat mengkonfirmasi nomor / pengalaman Anda: pada i5 7z-9.22beta saya menggunakan antara 75% dan 95% cpu dan memunculkan antara 8 dan 32 utas untuk mengarsipkan folder ~ 240mb yang penuh dengan MP3. .bz2.7z butuh waktu lama, .lzma2.7z cukup cepat (semua ultra-pengaturan) dan hanya sedikit lebih besar dari .bz2.7z.
akira
1
@ Akira Ya, saya tahu. Pokoknya komentar sebelumnya langsung ke anggota "ray pixar" saran - gunakan 7z dengan LZMA2 untuk menggunakan semua core, tetapi dalam kasus saya tidak. Tentang nomor Anda, saya pikir ini logis. Saya mencari di situs su ini lebih sering setelah membaca artikel ini dan menemukan sesuatu yang salah dengan instalasi 7zip saya saat ini. Tetapi masalah hanya muncul di GUI (UI grafis), itu tidak menggunakan lebih dari 20% CPU ketika saya kompres file dengan metode LZMA2. Hanya ketika saya menggunakan baris perintah dengan parameter seperti -m0 = lzma2 -mmt = 8 kompresi mengambil cpu 100%, jika tidak dengan GUI, saya belum tahu mengapa tidak.
Edward
2

Menurut artikel Wikipedia :

Fitur 7-Zip mendukung banyak fitur, termasuk:

  1. Dukungan untuk cipher AES 256-bit. Enkripsi dapat diaktifkan untuk file dan struktur direktori 7z. Ketika struktur direktori dienkripsi, pengguna diharuskan menyediakan kata sandi untuk melihat nama file yang terkandung dalam arsip, kecuali hanya data yang dienkripsi tetapi bukan nama file. Standar enkripsi AES yang dikembangkan WinZip juga tersedia dalam 7-Zip untuk mengenkripsi arsip ZIP dengan AES 256-bit, tetapi tidak menawarkan enkripsi nama file seperti pada arsip 7z.
  2. Volume ukuran variabel yang dinamis, memungkinkan digunakan untuk cadangan pada media yang dapat dilepas seperti CD dan DVD yang dapat ditulisi.
  3. Kegunaan sebagai manajer file ortodoks dasar bila digunakan dalam mode 2-panel.
  4. Beberapa pengaturan CPU / core / threading dapat dikonfigurasi.
  5. Kemampuan untuk mencoba membuka file EXE sebagai arsip, memungkinkan dekompresi data dari dalam banyak program "SetUp" atau "Installer" atau "Extract" tanpa harus meluncurkannya.
  6. Kemampuan membongkar arsip dengan nama file yang rusak, mengganti nama file sesuai kebutuhan. Kemampuan untuk membuat arsip self-extracting walaupun tidak dapat melakukannya untuk arsip multi-volume.

Jadi buka aplikasi dan lihat multi-threading apa yang didukung.

ta.speot.is
sumber
0

Anda juga bisa menggunakan versi 7-Zip Zstandard , yang mendukung threading hingga 256 utas untuk semua 5 codec tambahan.

Codec adalah:

  1. Brotli
  2. LZ4
  3. LZ5
  4. Kadal
  5. Zstandard

Jalankan seperti:

7z a archiv.7z -m0=brotli -mx1 -mmt=1

...

7z a archiv.7z -m0=brotli -mx1 -mmt=256

Tino Reichardt
sumber