Search code examples
7zip

is 7zip faster archiving (solid or not solid)?


I am creating a .7z file, with the -ms=on flag, which is supposed to result in a solid archive. But the listing of the archive, shows that solid is off.

But my really question is what is the fastest way to archive with 7zip, solid or not solid.

I really don't care about compression. What I want is the fastest elapsed time - for creating the archive and especially for the unpack of the archive. And I heard that solid .7z is very fast for the unpack. I am using Powershell to do the commands. (the resulting archive is about 760MB and about 176K files). It is taking me about 12 minutes to create and 8 minutes to unpack.

[string]$zipper = "$($Env:ProgramFiles)\7-Zip\7z.exe"
[Array]$archive = "C:\zip\GL.7z"
[Array]$flags = "a","-t7z","-mx0","-mmt=on","-ms=on", "-r"
[Array]$skip = "-xr!.svn","-xr!.vs","-xr!bin","-xr!obj","-xr!Properties","-x!*.csproj","-x!*.user","-x!*.sln","-x!*.suo","-x!web.config","-x!web.*.config"
$ElapsedTime = [System.Diagnostics.Stopwatch]::StartNew()
echo "Toby..."
[Array]$in = "C:\wwwroot\Toby"
[Array]$cmd = $flags + $archive + $in + $skip
& $zipper $cmd

Solution

  • plushpuffin was correct, solid archives are only created if you have compression on e.g. (-mx1).

    Here is the timing of what it took to do compress and uncompress The original is 950MB of disk space in 176K files, mostly JPG.

    7z uncompressed, not-solid,-mx0
        size: 728 MB
        pack: 12:28
        unpack: 9:28
    
    7z compressed, solid -mx1
        size: 555 MB 
        pack: 18:18
        unpack: 9:13
    
    7z compressed, solid -mx1 -mmt=off (single thread)
        size: 555 MB 
        pack: 22:48
        unpack: 10:32