From 96caeaca720b250aaf3021304203b5550492a060 Mon Sep 17 00:00:00 2001 From: tooomm Date: Sat, 10 Feb 2024 21:30:43 +0100 Subject: [PATCH] Enable MTT over parallel flag (#4998) --- .ci/compile.sh | 8 +++++++- .github/workflows/desktop-build.yml | 4 +++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.ci/compile.sh b/.ci/compile.sh index 581447e5..5a5f3109 100755 --- a/.ci/compile.sh +++ b/.ci/compile.sh @@ -160,7 +160,13 @@ cmake .. "${flags[@]}" echo "::endgroup::" echo "::group::Build project" -cmake --build . "${buildflags[@]}" +if [[ $RUNNER_OS == Windows ]]; then + # Enable MTT, see https://devblogs.microsoft.com/cppblog/improved-parallelism-in-msbuild/ + # and https://devblogs.microsoft.com/cppblog/cpp-build-throughput-investigation-and-tune-up/#multitooltask-mtt + cmake --build . "${buildflags[@]}" -- -p:UseMultiToolTask=true +else + cmake --build . "${buildflags[@]}" +fi echo "::endgroup::" if [[ $USE_CCACHE ]]; then diff --git a/.github/workflows/desktop-build.yml b/.github/workflows/desktop-build.yml index fe541a80..d19ab375 100644 --- a/.github/workflows/desktop-build.yml +++ b/.github/workflows/desktop-build.yml @@ -358,7 +358,9 @@ jobs: CMAKE_GENERATOR: '${{env.CMAKE_GENERATOR}}' CMAKE_GENERATOR_PLATFORM: 'x64' QTDIR: '${{github.workspace}}\Qt\${{matrix.qt_version}}\win64_${{matrix.qt_arch}}' - run: .ci/compile.sh --server --release --test --package --parallel 4 + # No need for --parallel flag, MTT is added in the compile script to let cmake/msbuild manage core count, + # project and process parallelism: https://devblogs.microsoft.com/cppblog/improved-parallelism-in-msbuild/ + run: .ci/compile.sh --server --release --test --package - name: Upload artifact uses: actions/upload-artifact@v4