LZMA compression?

12 messages Options
Embed this post
Permalink
Wesley W. Terpstra

LZMA compression?

Reply Threaded More More options
Print post
Permalink
I have an msi package which comes out to 77MB when compression is set
to "high". Inspecting the msi file shows that the space is almost
entirely consumed by the contained cab file. If I take the same files
in that cab file and compress them with 7zip it comes out to 27MB.
Normally I wouldn't care too much about compression, but when the
difference is a factor 3* (!!), I take notice. I also tried
compressing it using tar.bz2, which comes out to around 78MB and
tar.7z which clocks in at 30MB.

In summary:
raw data: 320MB
tar.bz2 78MB
msi: 77MB
tar.7z: 30MB
7z: 27MB

I know these numbers seem impossibly extreme, but I have triple
checked them! Generally I don't see such a difference between 7zip and
bzip2, but for whatever reason these executables love 7zip.

Since the main savings appears to come from the use of 7zip's LZMA
algorithm (the solid encoding + BCJ only saved 30-27=3MB), I wonder if
it is possible to use the LZMA algorithm on my msi's cab file? It
would be a real shame to make users of my installer download 77MB when
they could be downloading 27 or 30MB instead.

Thanks.

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Pally Sandher

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
Try using "mszip" instead of "high" for compression on your media tag &
see if that changes the size of the cab file.
Essentially though you're comparing apples and steaks (see
http://en.wikipedia.org/wiki/List_of_archive_formats). If you want your
files be installed without any extra work you're going to have to use
the CAB format. CAB archives are a proprietary format (spec ->
http://msdn.microsoft.com/en-us/library/bb267310.aspx) Looking at more
modern compression algorithms is all well & good but if it's not
supported by Windows Installer why are you even looking other than for
theory crafting?
If you want to use another discrete proprietary format for your archives
you'll have to find some way of integrating it into Windows Installer.
My suggestion would be to build your MSI with the files "uncompressed"
then compress them yourself using 7zip or whatever. You can then use a
bootstrapper to uncompress your files before running the MSI to install
it. Seems like a hell of a lot of work though for not a huge payoff &
there are probably better ways to achieve the result, that was just off
the top of my head.

Palbinder Sandher
Software Deployment & IT Administrator
T: +44 (0) 141 945 8500
F: +44 (0) 141 945 8501

http://www.iesve.com 
**Design, Simulate + Innovate with the <Virtual Environment>**
Integrated Environmental Solutions Limited. Registered in Scotland No.
SC151456
Registered Office - Helix Building, West Of Scotland Science Park,
Glasgow G20 0SP
Email Disclaimer


-----Original Message-----
From: Wesley W. Terpstra [mailto:[hidden email]]
Sent: 02 November 2009 03:27
To: [hidden email]
Subject: [WiX-users] LZMA compression?

I have an msi package which comes out to 77MB when compression is set to
"high". Inspecting the msi file shows that the space is almost entirely
consumed by the contained cab file. If I take the same files in that cab
file and compress them with 7zip it comes out to 27MB.
Normally I wouldn't care too much about compression, but when the
difference is a factor 3* (!!), I take notice. I also tried compressing
it using tar.bz2, which comes out to around 78MB and tar.7z which clocks
in at 30MB.

In summary:
raw data: 320MB
tar.bz2 78MB
msi: 77MB
tar.7z: 30MB
7z: 27MB

I know these numbers seem impossibly extreme, but I have triple checked
them! Generally I don't see such a difference between 7zip and bzip2,
but for whatever reason these executables love 7zip.

Since the main savings appears to come from the use of 7zip's LZMA
algorithm (the solid encoding + BCJ only saved 30-27=3MB), I wonder if
it is possible to use the LZMA algorithm on my msi's cab file? It would
be a real shame to make users of my installer download 77MB when they
could be downloading 27 or 30MB instead.

Thanks.

------------------------------------------------------------------------
------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA is
the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and
stay ahead of the curve. Join us from November 9 - 12, 2009. Register
now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users



------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Wesley W. Terpstra

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
On Mon, Nov 2, 2009 at 3:30 PM, Pally Sandher <[hidden email]> wrote:
> Try using "mszip" instead of "high" for compression on your media tag &
> see if that changes the size of the cab file.

It does. It becomes 99MB, i.e. bigger.

> If you want your
> files be installed without any extra work you're going to have to use
> the CAB format.

I thought it understood that I was willing to put in some work. :)

> My suggestion would be to build your MSI with the files "uncompressed"
> then compress them yourself using 7zip or whatever. You can then use a
> bootstrapper to uncompress your files before running the MSI to install
> it. Seems like a hell of a lot of work though for not a huge payoff &
> there are probably better ways to achieve the result, that was just off
> the top of my head.

Yes, I'd tried this already this morning. I ended up with a 35MB
installer when using a self-extracting 7zip archive of the
uncompressed msi. The down-side is that it dumps the uncompressed msi
into the users temporary folder before the installation begins,
doubling the free space required to perform an install. For such a big
savings in download-time I think that's a reasonable trade-off.

It was at most 2 hours of fiddling, so not that much work. Of course
35MB still isn't 27MB, but it's enough better than 77MB that I'm
happy.

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Pally Sandher

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
The way you worded your question it appeared that you were asking if you
could simply compress a .cab using 7-zip's LZMA compression algorithm &
I may be too used to people on this list expecting the minimum amount of
effort to solve anything remotely difficult (and subsequently blaming a
lack of Windows Installer familiarity on non-existent shortcomings in
WiX but lets not get started on that).
However 2 hours of time coding & testing compared to the 20 seconds it
takes to write <Media Id="1" Cabinet="mycab.cab" EmbedCab="yes"
CompressionLevel="high" /> ?
Could be worth feature requesting for something like Burn but taking
modern internet connections into consideration I don't see many people
being that bothered about it if they have to put that amount of effort
in to make it work.

FYI I just checked our installation archive sizes.

Raw data = 193 MB (202,991,281 bytes)
MSI with embedded Cab using "high" compression = 55.7 MB (58,464,768
bytes)
7z archive = 42 MB (44,049,930 bytes)

For the raw data & 7z archive I used the administrative install I use
for creating a minor update patch. MSI is generated with WiX
v3.0.5419.0. 7z archive is default "ultra" compression level settings in
7-zip v4.65.

It greatly depends on what your application is installing to the user's
machine on how big a difference you will see in the compression. If
you're taking 320 MB & compressing it to 35 MB I'm going to guess that
the majority of your files aren't binaries or of similar complexity but
are 'data' such as XML, images etc.


Palbinder Sandher
Software Deployment & IT Administrator
T: +44 (0) 141 945 8500
F: +44 (0) 141 945 8501

http://www.iesve.com 
**Design, Simulate + Innovate with the <Virtual Environment>**
Integrated Environmental Solutions Limited. Registered in Scotland No.
SC151456
Registered Office - Helix Building, West Of Scotland Science Park,
Glasgow G20 0SP
Email Disclaimer
 

-----Original Message-----
From: Wesley W. Terpstra [mailto:[hidden email]]
Sent: 02 November 2009 16:31
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] LZMA compression?

On Mon, Nov 2, 2009 at 3:30 PM, Pally Sandher <[hidden email]>
wrote:
> Try using "mszip" instead of "high" for compression on your media tag
> & see if that changes the size of the cab file.

It does. It becomes 99MB, i.e. bigger.

> If you want your
> files be installed without any extra work you're going to have to use
> the CAB format.

I thought it understood that I was willing to put in some work. :)

> My suggestion would be to build your MSI with the files "uncompressed"
> then compress them yourself using 7zip or whatever. You can then use a

> bootstrapper to uncompress your files before running the MSI to
> install it. Seems like a hell of a lot of work though for not a huge
> payoff & there are probably better ways to achieve the result, that
> was just off the top of my head.

Yes, I'd tried this already this morning. I ended up with a 35MB
installer when using a self-extracting 7zip archive of the uncompressed
msi. The down-side is that it dumps the uncompressed msi into the users
temporary folder before the installation begins, doubling the free space
required to perform an install. For such a big savings in download-time
I think that's a reasonable trade-off.

It was at most 2 hours of fiddling, so not that much work. Of course
35MB still isn't 27MB, but it's enough better than 77MB that I'm happy.


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Wesley W. Terpstra

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
On Mon, Nov 2, 2009 at 7:14 PM, Pally Sandher <[hidden email]> wrote:
> Could be worth feature requesting for something like Burn but taking
> modern internet connections into consideration I don't see many people
> being that bothered about it if they have to put that amount of effort
> in to make it work.

Many people still have 1MB/s or slower connections. 77MB vs 27MB is a
big difference in download time. It's also a very large subjective
difference.

> FYI I just checked our installation archive sizes.
>
> Raw data = 193 MB (202,991,281 bytes)
> MSI with embedded Cab using "high" compression = 55.7 MB (58,464,768
> bytes)
> 7z archive = 42 MB (44,049,930 bytes)

Yes, my particular case happens to benefit *a lot*. For 55MB->42MB I
definitely wouldn't have bothered.

> If you're taking 320 MB & compressing it to 35 MB I'm going to guess
> that the majority of your files aren't binaries or of similar complexity but
> are 'data' such as XML, images etc.

Actually, no. It's a whole whack of executables. Unfortunately,
several of them are statically linked against a similar set of
libraries, which I expect is where 7zip is finding the redundancy.

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Richard-45

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
In reply to this post by Wesley W. Terpstra

In article <[hidden email]>,
    "Wesley W. Terpstra" <[hidden email]>  writes:

> [...] For such a big
> savings in download-time I think that's a reasonable trade-off.

Have you been receiving complaints about download times?

Doing the simplest thing that could possibly work is generally the
best approach with installers.
--
"The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
 <http://legalizeadulthood.wordpress.com/the-direct3d-graphics-pipeline/>

      Legalize Adulthood! <http://legalizeadulthood.wordpress.com>

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Wesley W. Terpstra

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
On Mon, Nov 2, 2009 at 11:41 PM, Richard <[hidden email]> wrote:
> In article <[hidden email]>,
>    "Wesley W. Terpstra" <[hidden email]>  writes:
>> [...] For such a big
>> savings in download-time I think that's a reasonable trade-off.
>
> Have you been receiving complaints about download times?

Actually, yes. However, even more worrisome to me are the complaints
I've *not* received from people who simply decided it was too big and
didn't bother downloading it.

> Doing the simplest thing that could possibly work is generally the
> best approach with installers.

True, and I still provide the non-7zip msi as well.

As a footnote, I've found a way to radically improve the compression
of both the 7zip'd msi and the windows compressed cab file. It seems
that WiX puts files into the cabinet sorted by their 'Id' strings.
Since some of the files are very similar or even identical (32-bit vs
64-bit headers), it helps a lot if these files appear one after the
other in the cabinet file. I've switched my Id='xxx' strings to use
the format Id='file.reversed-filename.path-hash'.

For example, the file bin/gcc.exe gets called
'file.exe.ccg.12345667890ABCDEF' (with a real hash). Since I am
generating these fragments of my WiX xml automagically, this switch
was no problem. This reduced the compressed msi from 77MB to 59MB by
better exposing the locality to the compressor. The 7zip size went
from 36MB to 27.5MB (nearly as small as the raw files compressed
completely by 7zip itself!).

I imagine these savings would probably also apply to other projects.
Clumping all the C headers together likewise makes compression
dictionaries far more effective. Ditto for Standard ML signature and
source files.

Actually, just sorting files by their size would probably get much of
the same locality benefits. It's really quite stupid of WiX to sort by
the user-specified 'Id'. I doubt many WiX users realize how relevant
the Id choice is to the final installer size.

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Richard-45

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink

In article <[hidden email]>,
    "Wesley W. Terpstra" <[hidden email]>  writes:

> On Mon, Nov 2, 2009 at 11:41 PM, Richard <[hidden email]> wrote:
> > In article <[hidden email]>,
> > =A0 =A0"Wesley W. Terpstra" <[hidden email]> =A0writes:
> >> [...] For such a big
> >> savings in download-time I think that's a reasonable trade-off.
> >
> > Have you been receiving complaints about download times?
>
> Actually, yes.

Then its worth pursuing.

> As a footnote, I've found a way to radically improve the compression
> of both the 7zip'd msi and the windows compressed cab file. It seems
> that WiX puts files into the cabinet sorted by their 'Id' strings.
> Since some of the files are very similar or even identical (32-bit vs
> 64-bit headers), it helps a lot if these files appear one after the
> other in the cabinet file. I've switched my Id='xxx' strings to use
> the format Id='file.reversed-filename.path-hash'.

This is a good observation!
--
"The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
 <http://legalizeadulthood.wordpress.com/the-direct3d-graphics-pipeline/>

      Legalize Adulthood! <http://legalizeadulthood.wordpress.com>

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Christopher Painter

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
In reply to this post by Wesley W. Terpstra
> Actually, yes. However, even more worrisome to me are the
> complaints
> I've *not* received from people who simply decided it was
> too big and
> didn't bother downloading it.
>
> > Doing the simplest thing that could possibly work is
> generally the
> > best approach with installers.

Ever notice the trend at Microsoft these days?   I tiny internet bootstrapper to trick the user into thinking it's a small download and then hit em up for the real download(s) once they have comitted to the install and choosen which features they want.  SysAdmins who want the "simple"  single MSI are then forced to go through manual procedures to create the "offline" installer.

Hardly "simple" but driven no doubt by business concerns such as the two that you mentioned and the desire to drive down their bandwidth costs.


     

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Rob Mensching-7

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
In reply to this post by Wesley W. Terpstra
The Visual Studio team building the .NET Framework made similar
observations. They've done a serious amount of work to shrink the size of
the .NET Framework 4.0 and I'm hoping we can get some of their observations
(which seem to be identical to yours) into WiX v4.0.

Also, I am investigating what it takes to get LZMA support into Burn. It
seems like it should be doable but getting my lawyers to approve new Open
Source licenses always takes time.

On Mon, Nov 2, 2009 at 6:42 PM, Wesley W. Terpstra <[hidden email]>wrote:

> On Mon, Nov 2, 2009 at 11:41 PM, Richard <[hidden email]> wrote:
> > In article <[hidden email]
> >,
> >    "Wesley W. Terpstra" <[hidden email]>  writes:
> >> [...] For such a big
> >> savings in download-time I think that's a reasonable trade-off.
> >
> > Have you been receiving complaints about download times?
>
> Actually, yes. However, even more worrisome to me are the complaints
> I've *not* received from people who simply decided it was too big and
> didn't bother downloading it.
>
> > Doing the simplest thing that could possibly work is generally the
> > best approach with installers.
>
> True, and I still provide the non-7zip msi as well.
>
> As a footnote, I've found a way to radically improve the compression
> of both the 7zip'd msi and the windows compressed cab file. It seems
> that WiX puts files into the cabinet sorted by their 'Id' strings.
> Since some of the files are very similar or even identical (32-bit vs
> 64-bit headers), it helps a lot if these files appear one after the
> other in the cabinet file. I've switched my Id='xxx' strings to use
> the format Id='file.reversed-filename.path-hash'.
>
> For example, the file bin/gcc.exe gets called
> 'file.exe.ccg.12345667890ABCDEF' (with a real hash). Since I am
> generating these fragments of my WiX xml automagically, this switch
> was no problem. This reduced the compressed msi from 77MB to 59MB by
> better exposing the locality to the compressor. The 7zip size went
> from 36MB to 27.5MB (nearly as small as the raw files compressed
> completely by 7zip itself!).
>
> I imagine these savings would probably also apply to other projects.
> Clumping all the C headers together likewise makes compression
> dictionaries far more effective. Ditto for Standard ML signature and
> source files.
>
> Actually, just sorting files by their size would probably get much of
> the same locality benefits. It's really quite stupid of WiX to sort by
> the user-specified 'Id'. I doubt many WiX users realize how relevant
> the Id choice is to the final installer size.
>
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> WiX-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>


--
virtually, Rob Mensching - http://RobMensching.com LLC
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Rob Mensching-7

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
In reply to this post by Wesley W. Terpstra
PS: The Windows Installer .PCP files requires the File/@Id and
File/@Sequence to be stable during the patching process. That is why the WiX
toolset sorts the way it does, it ensures the MSIs will be able to be
patched. Now, IIRC, pyro is smart enough to handle the File/@Sequence
changes but the File/@Id must remain stable.

As usual, the Windows Installer requirements add the real complication when
trying to optimize. <smile/>

On Mon, Nov 2, 2009 at 6:42 PM, Wesley W. Terpstra <[hidden email]>wrote:

> On Mon, Nov 2, 2009 at 11:41 PM, Richard <[hidden email]> wrote:
> > In article <[hidden email]
> >,
> >    "Wesley W. Terpstra" <[hidden email]>  writes:
> >> [...] For such a big
> >> savings in download-time I think that's a reasonable trade-off.
> >
> > Have you been receiving complaints about download times?
>
> Actually, yes. However, even more worrisome to me are the complaints
> I've *not* received from people who simply decided it was too big and
> didn't bother downloading it.
>
> > Doing the simplest thing that could possibly work is generally the
> > best approach with installers.
>
> True, and I still provide the non-7zip msi as well.
>
> As a footnote, I've found a way to radically improve the compression
> of both the 7zip'd msi and the windows compressed cab file. It seems
> that WiX puts files into the cabinet sorted by their 'Id' strings.
> Since some of the files are very similar or even identical (32-bit vs
> 64-bit headers), it helps a lot if these files appear one after the
> other in the cabinet file. I've switched my Id='xxx' strings to use
> the format Id='file.reversed-filename.path-hash'.
>
> For example, the file bin/gcc.exe gets called
> 'file.exe.ccg.12345667890ABCDEF' (with a real hash). Since I am
> generating these fragments of my WiX xml automagically, this switch
> was no problem. This reduced the compressed msi from 77MB to 59MB by
> better exposing the locality to the compressor. The 7zip size went
> from 36MB to 27.5MB (nearly as small as the raw files compressed
> completely by 7zip itself!).
>
> I imagine these savings would probably also apply to other projects.
> Clumping all the C headers together likewise makes compression
> dictionaries far more effective. Ditto for Standard ML signature and
> source files.
>
> Actually, just sorting files by their size would probably get much of
> the same locality benefits. It's really quite stupid of WiX to sort by
> the user-specified 'Id'. I doubt many WiX users realize how relevant
> the Id choice is to the final installer size.
>
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> WiX-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>


--
virtually, Rob Mensching - http://RobMensching.com LLC
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
saschabeaumont

Re: LZMA compression?

Reply Threaded More More options
Print post
Permalink
In reply to this post by Wesley W. Terpstra
Correct, it's all due to the compression algorithm :)

We use "mszip" for internal beta builds, "high" for MSI-only releases
for corporate customers (as well as for the 1Mb bootstrap EXE that
later downloads an MSI payload), and finally an LZMA  self-extracting
EXE containing an MSI with compression set to "none" for our standard
downloadable release.

If you're using nant or similar to manage your build process it's
fairly trivial to build multiple times with varying compression.


Sascha



On Mon, Nov 2, 2009 at 2:27 PM, Wesley W. Terpstra <[hidden email]> wrote:

> I have an msi package which comes out to 77MB when compression is set
> to "high". Inspecting the msi file shows that the space is almost
> entirely consumed by the contained cab file. If I take the same files
> in that cab file and compress them with 7zip it comes out to 27MB.
> Normally I wouldn't care too much about compression, but when the
> difference is a factor 3* (!!), I take notice. I also tried
> compressing it using tar.bz2, which comes out to around 78MB and
> tar.7z which clocks in at 30MB.
>
> In summary:
> raw data: 320MB
> tar.bz2 78MB
> msi: 77MB
> tar.7z: 30MB
> 7z: 27MB
>
> I know these numbers seem impossibly extreme, but I have triple
> checked them! Generally I don't see such a difference between 7zip and
> bzip2, but for whatever reason these executables love 7zip.
>
> Since the main savings appears to come from the use of 7zip's LZMA
> algorithm (the solid encoding + BCJ only saved 30-27=3MB), I wonder if
> it is possible to use the LZMA algorithm on my msi's cab file? It
> would be a real shame to make users of my installer download 77MB when
> they could be downloading 27 or 30MB instead.
>
> Thanks.
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> WiX-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/wix-users
>

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users