Predictive Execution

Predictive execution is feature that enhances the parallelization of tasks by allowing task to spawn out of order. In most cases, this speeds up your builds, however it depends on each environment and in a small number of cases it can actually slow down your builds. Therefore, we recommend trying it to determine if it is effective for your use case.

Note: Starting with version 10.4, Incredibuild only uses our own proprietary algorithm and no longer makes use of Visual Studio's Parallelism. You can still enable this Visual Studio feature directly in their user interface.

Predictive execution can be applied to builds with Visual Studio, MSBuild C++, and Android NDK compilations. It should NOT be used with builds targeting Nintendo platforms.

You can enable or disable this feature in the Agent Settings > Visual Studio Builds > Advanced tab.

Overriding the Agent's Predictive Execution Setting on a Single Build

Regardless of whether predictive execution is enabled or disabled in the user interface, you can manually enable or disable it for a single build using the command line.

When using BuildConsole commands, using the /pemode flag. /pemode=0 disables predictive execution, while /pemode=2 enables it.

You can also override the Agent's Predictive Execution setting using a configuration file.

Supported MSBuild Versions

This feature is tightly integrated with MSBuild. Therefore, it requires the Incredibuild team to certify each MSBuild version that is released by Microsoft prior to allowing the predictive execution feature to be used.

If the MSBuild version you are working with is higher than any of the versions listed below, you can either contact Incredibuild’s support at support@Incredibuild.com and ask us to certify this version, or you can try manually instructing Incredibuild to use the predictive execution feature with the MSBuild version you are currently using and see whether you receive the expected results.

Incredibuild 10.1 and higher:

  • Visual Studio 2022 MSBuild 32 or 64 bit, all versions of MSBuild

  • Visual Studio 2019 and higher, all version of MSBuild.

  • Visual Studio 2017 supports MSBuild up to version 15.9.21.664

  • Visual Studio 2015 supports MSBuild up to version 14.0.27530.0

  • Visual Studio 2013 supports MSBuild up to version 12.0.40629.0

  • Visual Studio 2012 supports MSBuild up to version 4.8.3761.0.

  • Visual Studio 2010 support MSBuild up to version 4.8.3752.0

Incredibuild 10.0.4:

  • Visual Studio 2022 MSBuild 32 bit up to version 17.0.0.80000

    • Limitation: Visual Studio 2022 Preview 5 MSBuild 64 bit is not supported

  • Visual Studio 2019 supports MSBuild up to version 16.200.19.32702

  • Visual Studio 2017 supports MSBuild up to version 15.9.21.664

  • Visual Studio 2015 supports MSBuild up to version 14.0.27530.0

  • Visual Studio 2013 supports MSBuild up to version 12.0.40629.0

  • Visual Studio 2012 supports MSBuild up to version 4.8.3761.0.

  • Visual Studio 2010 support MSBuild up to version 4.8.3752.0