Page 1 of 1
Steps to take to decrease install time.
Posted: Fri Jul 10, 2009 10:01 am
by DanStutzman
I was wondering what people are currently doing to decrease the time it takes to install an application.
For example currently I am using 9.06 & IS 9.0 Enterprise with a repackaged app, MasterTax Client Update 4.9.02. This is a 250 MB package with about 1100 files, almost all PDF's.
When I repackage the installation with IA and then build a single file EXE with no compression, the time to install takes approximately 18 minutes.
When I repackage the installation with IS and then build a single file MSI, the time to install takes approximately 8 minutes.
What can I do to narrow that gap?
Thanks,
Dan
Posted: Fri Jul 10, 2009 6:25 pm
by MichaelNesmith
Please enable the compiler optimizations. These will help. To further boost speed, please read the list of pre-defined variables in the help file as some will again directly boost your installation speeds.
Posted: Mon Jul 13, 2009 10:17 am
by DanStutzman
I've been playing with the different settings and I haven't noticed a change for the better at all. I've also noticed that the Verifying contacts message box takes a long time too. Is there any way to disable that?
I just find it unique that I can install the primary InstallAware package in about the sametime it takes to install a package that is 1/50th in size. Also the different steps, such as computing space requirements take a significant amount of time. And then with each file, it's almost as if there is a 500 ms pause after each file.
Posted: Mon Jul 13, 2009 10:23 am
by DanStutzman
Also, the compiler variables I'm using are:
NOHARDLINKS = TRUE
BUILDMODE = SFX
LOCMODE = VARSONLY
LONGCOMPONENTS = FALSE
With MSI Database Optimization:
Enabled = Reduce MSI File component Count
Enabled = Reduce MSI registry component Count
MSICOde Statement Identifiers:
Generate stable idenifiers (constant when rebuilding)
Posted: Mon Jul 13, 2009 11:52 am
by ALive
Hi, Dan!
Same thing i have. I'm glad that you arise this topic. I was planning to write about this issue too, pity that I haven't much time.
I have the same settings and the installation time is too long. Most interesting is that this only happen on a real machine, even with Core 2 processor, 7200 SATA-II HDD, and 2-4 Gb of RAM. But on the virtual machine with only 256 amount of RAM running on the same hardware the installation time takes 10 time faster without any delay on the operations that you mentioned. I wouldn't wonder if it be vice versa, but the real problem that our customers does not use virtual machines. My bosses are getting nervous because our previous installer (developed on WiX) worked twice faster as our current (developed on IA).
Our application has about 150-200 files, 300 Mb. Not so big. B.t.w. HDD lamp is off while this delays happen, so it could not be the copy file procedure. Moreover when file copy began (according to the PROGRESSTEXT info) it takes nearly the same amount of time as you would copy it via Windows Explorer. So it's definitely not the File Copy routine that makes this delay.
It has more clues on some network access, imo. This is just a theory.
According to log file it takes quiet amount of time between Media Block definition with it's contents, before Apply Install command. I can see this writing my own log file. After Apply Install execution on the "Calculating Disk Space" sequence there's another long delay.
Maybe someone experience the same issues with installation speed?
Posted: Mon Jul 13, 2009 12:25 pm
by DanStutzman
ALive,
I have discovered that if I remove the ProgressBar from my Progress dialog, it speeds things up considerably. I also began stripping out much of the unneccessary bloat in the pre-configured script which is speeding things up. I also discovered that if your installation is deleting alot of local files (ie upgraded) that this will slow things down, especially if the installation is overwriting much of the same files.
I would like to hear from IA though on their stance on all this.
Posted: Mon Jul 13, 2009 2:49 pm
by MichaelNesmith
Use the Blend mode for MSIcode Statement Identifiers.
If your real machines are slow but VMs are fast, that might point to processes on the real system that are filtering file system access, such as search indexers, anti-virus products, and so forth.
Web Media Block statements trigger a download and then extraction of the downloaded file, so a web built setup vs. other setups is not a fair comparison, due to extra processing that occurs with web media blocks.
To speed up the Windows Installer side of things, I'm pasting content verbatim from the Pre-Defined Variables help topic:
MYAH_COMPRESS_INSTALLER_CACHE: Initially TRUE. Indicates if the installer cache location for the setup engine should be compressed on NTFS volumes. Set to FALSE to disable installer cache compression.
MYAH_DISABLE_ROLLBACK: Initially FALSE. Indicates whether Windows Installer's built-in rollback functionality should be disabled during setup. Set to TRUE to disable rollback and improve runtime performance; however if setup is cancelled, this will leave the target system in an inconsistent state.
MYAH_DISABLE_VISTA_RESTART_MANAGER: Initially FALSE. Indicates whether the Restart Manager on Windows Vista should be disabled. Set to TRUE to disable the Restart Manager and improve runtime performance; however this may necessitate a reboot at the end of the installation if some files are in use by applications that the Restart Manager could have shut down.
Posted: Mon Jul 13, 2009 3:09 pm
by DanStutzman
Mike you rock.
Just an FYI... those entries are not in my Pre-Defined Compiler Variables but in Pre-Defined Variables.
I'm going to go through all of these variables and see how they work out.
Posted: Tue Jul 14, 2009 2:02 am
by ALive
Michael, thank you for so reach guide!
On my side i'll test them either and let you know what i found.
Thanks again!