预执行

预执行通过支持任务非顺序生成来加强任务的并行化功能。在大多数情况下,这会加快您的构建速度,但这取决于每个环境,在少数情况下,这实际上会减慢您的构建速度。因此,我们建议先进行尝试,以确定其是否对您的用例有效。

注意:自 10.4 版本起,Incredibuild 只使用自有的专有算法,不再利用 Visual Studio 的并行性。您仍可以直接在其用户界面中启用 Visual Studio 这一功能。

预执行可以应用于用 Visual Studio、MSBuild C++ 和 Android NDK 编译的构建。它不应该用于针对 Nintendo 平台的构建。

可以在 Agent Settings > Visual Studio Builds > Advanced 标签中启用或禁用该功能。

在 Single Build 上重写 Agent Predictive Execution Setting

无论在用户界面中启用还是禁用预测执行,您可以使用命令行手动启用或禁用单个构建。

使用 BuildConsole 命令时, 使用 /pemode flag。当 /pemode=2 enables it 时,/pemode=0 disables predictive execution。

您还可以使用配置文件覆盖 Agent 的预执行设置。

受支持的 MSBuild 版本

此功能与 MSBuild 紧密集成。因此,在允许使用预测执行功能之前,Incredibuild 团队应验证 Microsoft 发布的的每个 MSBuild 版本。

如果您使用的 MSBuild 版本高于下文所列版本,可以通过以下方式联系 Incredibuild 获取支持: support@Incredibuild.com,并要求我们验证此版本,或者您也可以手动指示 Incredibuild 在您当前使用的 MSBuild 版本下,使用预执行功能并查看是否能收到预期结果。

Incredibuild 10.1 及以上版本。

  • Visual Studio 2022 MSBuild 32 位或 64 位,所有 MSBuild 版本

  • Visual Studio 2019 及以上版本,所有 MSBuild 版本。

  • Visual Studio 2017 支持 MSBuild,最高版本为 15.9.21.664

  • Visual Studio 2015 支持 MSBuild,最高版本为 14.0.27530.0

  • Visual Studio 2013 支持 MSBuild,最高版本为 12.0.40629.0

  • Visual Studio 2012 支持 MSBuild,最高版本为 4.8.3761.0

  • Visual Studio 2010 支持 MSBuild,最高版本为 4.8.3752.0

Incredibuild 10.0.4:

  • Visual Studio 2022 MSBuild 32 位至 17.0.0.80000 版本

    • 限制:不支持 Visual Studio 2022 Preview 5 MSBuild 64 位

  • Visual Studio 2019 支持 MSBuild,最高版本为 16.200.19.32702

  • Visual Studio 2017 支持 MSBuild,最高版本为 15.9.21.664

  • Visual Studio 2015 支持 MSBuild,最高版本为 14.0.27530.0

  • Visual Studio 2013 支持 MSBuild,最高版本为 12.0.40629.0

  • Visual Studio 2012 支持 MSBuild,最高版本为 4.8.3761.0

  • Visual Studio 2010 支持 MSBuild,最高版本为 4.8.3752.0

为 MSBuild Version 手动启用预执行功能

如果上表未列出您正在使用的 MSBuild 版本,而您想尝试启用预测执行功能,或者如果您的主机上安装的 MSBuild 版本在上述列表中且受当前所用 Incredibuild 版本的支持,但是却在将您转至此页的 Incredibuild Build Monitor 中看到一条警告消息,请执行以下操作:

  1. 右键单击 Incredibuild tray icon->Coordinator Monitor,从安装 Coordinator 的机器上打开 Coordinator Monitor。

  2. 从 Agents 列表中选择全部 Initiator 机器(如果方便的话,您也可以选择全部 Agent)。

  3. 右键单击并选择弹出的菜单选项 "Set Registry Value"。

  4. 在出现的对话框中,输入以下内容:

    • 类目Builder

    • 文件名: MSBuildMaxSupportedVersionXX.X(XX.X 是与 Visual Studio 版本相对应的版本号)。见下表)

    • 日期: <当前 MSBuild 版本>

  5. 上述 XX.X 版本应根据您的 Visual Studio 版本做如下替换:
    • Visual Studio 2010 -> 10.0
    • Visual Studio 2012 -> 11.0
    • Visual Studio 2013 -> 12.0
    • Visual Studio 2015 -> 14.0
    • Visual Studio 2017 -> 15.0
    • Visual Studio 2019 -> 16.0
  6. 您的 IncredBuild Initiator 现在应该能够从 IncredBuild Predictive Execution 功能提供的额外性能提升中获益。