使用Inno Setup更快地创建安装程序

teeks99

当我在大量文件(> 2GB)上运行Inno Setup时,需要很长时间才能运行。我相信它将时间花在压缩上,这应该是受CPU限制的,但是它只使用了几个CPU。有没有办法在(许多)更多的内核中推广呢?

具体来说,我正在使用这个Boost-release存储库,该存储库具有一个Inno Setup脚本,其中包括:

[Setup]
....
Compression=lzma2/ultra64
....

[Files]
Source: "boost_1.69.0/*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs ignoreversion
....

Compil32.exe boost_installer.iss在具有16个内核和32GB RAM(Azure F16s v2)的计算机上,调用大约需要25分钟。

文件集大约为2.5GB,其中2 GB是大约300个编译库的集合。剩余的500MB是60,000个源文件。

teeks99

因此,为了深入浅出,我创建了一个测试项目,该项目经历了各种Inno Setup配置选项的各种排列。

我发现有用的那些(并使我的速度提高了40%!)是:

SolidCompression=yes
LZMASeparateProcess=yes
LZMANumBlockThreads=6

没有SolidCompressionLZMANumBlockThreads不会有太大影响。但是在一起,我看到了一个更典型的可并行化的问题,其中更多的线程给出了更快的结果。

如果你发现这个有趣的,我建议你的书面记录我就它没有,它有很多的数据进行备份。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Inno Setup创建透明的安装程序?

Inno Setup:单个安装程序,可从INI文件读取名称并为每个名称创建安装

使用Inno Setup为Python创建Windows安装程序

如何使用Inno Setup创建MSI安装程序?

如何使用izPack创建安装程序

如何使用Maven创建安装程序

使用Jenkins创建Inno Setup安装程序而无需在代理程序上进行预安装

使用 Inno Setup 安装程序安装 Windows shell 扩展 DLL

使用Python在Debian中创建安装程序

使用 cpack 和 windeployqt 创建安装程序

Microsoft SmartScreen-使用Inno Setup安装程序已暂停?

使用Inno Setup安装隐藏文件

使用Inno Setup创建硬链接

使用高级安装程序为Excel DNA加载项创建安装程序

我可以使用 Inno Setup 为 Java 应用程序创建独立的 .exe 安装程序吗?

Linux:我需要使用Shell脚本为自己的应用程序创建安装程序

为C#应用程序创建安装程序时要使用的数据库

使用MySQL DB完成Java桌面应用程序后,如何创建安装程序?

VS在应用程序中使用SQL Server数据库创建安装程序

如果安装程序中的字体版本高于安装的字体版本,请使用Inno Setup安装字体

使用MSI / WiX安装升级Inno Setup安装时,已安装程序中的重复条目

使用InstallShield创建安装文件

如何使用install4j为套件创建安装程序?

如何使用Visual Studio为.net Windows服务创建安装程序

保留预打包的.cab文件,以便使用WiX创建安装程序

在使用 CPack 和 NSIS 创建安装程序之前生成一个文件

如何使用 dd 从 USB (Mac/Windows) 重新创建安装程序 iso?

使用--app-image选项创建安装程序时,jpackage崩溃

如何使用Inno Setup安装程序和卸载程序删除某些文件