I haven't spent a huge amount of time on this topic because we are generally happy with our build time, but I can imagine merge modules are disk i/o intensive not cpu / memory intensive. There is a lot of copying going on to get the files, create the cabinet and stream it into storage. Then again to copy the msm, extract the cabs, extract the files, rebuild the new cab and put it back into storage of the msi.
I'd suggest building in a ramdisk but these days windows is pretty darn effecient at it's disk caching as long as you give it plenty of memory. Maybe try giving it more first. Otherwise look at how you set your storage up on the Hyper-V. I don't know if you snapshot and rollback your vm's ( we have a build farm of around 100+ VM's that we do this to ) but if you don't you can consider setting up a direct disk for the VM. Of course there is always more expensive disk solutions. Christopher Painter, Author of Deployment Engineering Blog Have a hot tip, know a secret or read a really good thread that deserves attention? E-Mail Me ----- Original Message ---- From: Bill Packard <bill.pack...@kepware.com> To: wix-users@lists.sourceforge.net Sent: Fri, October 8, 2010 1:26:18 PM Subject: [WiX-users] Build speed, suggestions? I have recently migrated from Wise to WiX. I have approximately 150 merge modules (at some point in the future I may be able to implement libs instead of merge modules, but for now .) and several installs that include some subset of the merge modules. I have implemented a VS solution for all the merge modules and for each MSI project. I am wondering if amyone has any insight or suggestions as to how I might reduce the compilation time for the merge module solution? I have attempted simply loading the solution with devenv and sending each wixproj to msbuild seperately. Both take basically the same amount of time. I also attempted to parallelize the calls to msbuild, both using the maxcpu switch and by starting each process as a background process (under cygwin), neither approach succeeded in reducing the build time. The system CPU seems to idle at about 20% and the memory footprint is ~ 0.5GB. The machine is a Quad core with 4GB, running Windows Server 2003 R2 (32bit). On real hardware the merge module solution takes about 30 minutes. But we recently virtualized our build machines and on the virtual systems the same solution takes about 90 minutes. Virtual servers are running Microsoft's Hyper-V Platform, each virtual server currently has 4 processors allocated, 4GB, running Server 2003 R2. Suggestions would be welcome. Thanks, Bill ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today. http://p.sf.net/sfu/beautyoftheweb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today. http://p.sf.net/sfu/beautyoftheweb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users