Besides upgrading Visual Studio, which seems inevitable, this PR also:
- bumps vcpkg to the latest version (previous one was in bitcoin/bitcoin#24847)
- fixes cache size limit for
ccache
Besides upgrading Visual Studio, which seems inevitable, this PR also:
ccache98 | @@ -99,10 +99,10 @@ task: 99 | windows_container: 100 | cpu: 4 101 | memory: 8G 102 | - image: cirrusci/windowsservercore:visualstudio2019 103 | + image: cirrusci/windowsservercore:visualstudio2022
I can't find this in the docs: https://cirrus-ci.org/guide/windows/#os-versions
Yes. I hastened a bit :)
https://github.com/cirruslabs/docker-images-windows/pull/30
But a new image is not available yet on https://hub.docker.com/r/cirrusci/windowsservercore/tags.
Looks like it is now?
Please revert fa72e0ba15c6382e9068be221ab4872bef000cbc as well
Looks like it is now?
Still getting "Agent is not responding!" error (
~Could you look at linker error here? (fwiw, I have wiped all caches)~
nm, forgot to update PlatformToolset :)
98 | @@ -99,10 +99,10 @@ task:
99 | windows_container:
could adjust the name to mention 22?
Done.
Dependency changes:
- boost-* 1.78.0#0 -> 1.79.0#0
93 | @@ -94,17 +94,17 @@ task: 94 | FILE_ENV: "./ci/test/00_setup_env_native_tidy.sh" 95 | 96 | task: 97 | - name: "Win64 native [msvc]" 98 | + name: "Win64 native [vs2022]" 99 | << : *FILTER_TEMPLATE 100 | windows_container: 101 | - cpu: 4 102 | + cpu: 6
any reason to change this? With 6 cpu it finished 1 minute earlier compared to master ( https://cirrus-ci.com/task/5018066990923776 ), so it seems like a random fluke.
Also, if someone pushes several pull requests at the same time, the scheduler will hit the total cpu limit earlier.
Also, looking at the graph, the CPU usage density is less, indicating that the 5th and 6th cpu may be idle most of the time
any reason to change this?
On master, the time required to get the task done with no caches is very close to 2 hours limit.
With 6 cpu it finished 1 minute earlier compared to master ( https://cirrus-ci.com/task/5018066990923776 ), so it seems like a random fluke.
Such comparison is not correct, because vcpkg_binary cache was invalidated for this PR. Functional tests are more then 10 minutes faster now.
Also, looking at the graph, the CPU usage density is less, indicating that the 5th and 6th cpu may be idle most of the time
~Will 5 cpus be OK?~ UPDATE: Odd CPU number does not work (
On master, the time required to get the task done with no caches is very close to 2 hours limit.
Ok, no objection then.
Is there a reason why vs22 needs more resources?
Is there a reason why vs22 needs more resources?
On master, with cleared caches:

On master + 156bc89788034c509051e0635ed40694b8d717c6 commit, with cleared caches:

Actually, there is no significant difference in resources at all.
I think it might be best to revert this. Looks like now this won't be scheduled until 4 hours later. If the CPU was reduced, so that it was scheduled earlier, it would take 15 minutes longer to run, but still finish earlier.
I think it might be best to revert this. Looks like now this won't be scheduled until 4 hours later. If the CPU was reduced, so that it was scheduled earlier, it would take 15 minutes longer to run, but still finish earlier.
Ok, But a similar situation with ARM task been observed right now.
too bad that this doesn't fix #25472. Though, I guess it can't hurt to bump now, given that we'll have to do it anyway at some point. However, I think our windows docs should match the windows CI.
~Could you look at linker error here? (fwiw, I have wiped all caches)~
nm, forgot to update
PlatformToolset:)
I find myself doing that everytime I do a build. Maybe this PR is a good time to udate the default?
ACK 3dabd2891825a0b9a40276dffc5953f91a013c8d.
Currently, the time it takes to get the "Win64 native" task done with
all of the caches been invalidated is very close to the 2 hours limit.
This task is the only one which runs on Windows Community Cluster,
therefore this change should not affect other CI tasks.
Added Visual Studio 2022.
178 | @@ -179,7 +179,7 @@ task: 179 | build_script: 180 | - '%x64_NATIVE_TOOLS%' 181 | - cd %CIRRUS_WORKING_DIR% 182 | - - ccache --zero-stats 183 | + - ccache --zero-stats --max-size=%CCACHE_SIZE%
is CCACHE_SIZE set at all?
On master:
Summary:
Hits: 239 / 239 (100.0 %)
Direct: 239 / 239 (100.0 %)
Preprocessed: 0 / 0
Misses: 0
Direct: 0
Preprocessed: 0
Uncacheable: 10
Primary storage:
Hits: 478 / 478 (100.0 %)
Misses: 0
Cache size (GB): 1.35 / 5.00 (27.06 %)
Use the -v/--verbose option for more details.
With this PR:
Summary:
Hits: 239 / 239 (100.0 %)
Direct: 239 / 239 (100.0 %)
Preprocessed: 0 / 0
Misses: 0
Direct: 0
Preprocessed: 0
Uncacheable: 10
Primary storage:
Hits: 478 / 478 (100.0 %)
Misses: 0
Cache size (GB): 0.07 / 0.20 (32.93 %)
Use the -v/--verbose option for more details.
Compare the "Cache size" string.
Updated 3dabd2891825a0b9a40276dffc5953f91a013c8d -> 05b2d9fe076233961ebf24e74d47c57cc0618bbb (pr25460.01 -> pr25460.02, diff):
However, I think our windows docs should match the windows CI.
nm, forgot to update PlatformToolset :)
I find myself doing that everytime I do a build. Maybe this PR is a good time to udate the default?
reACK 05b2d9fe076233961ebf24e74d47c57cc0618bbb.
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--174a7506f384e20aa4161008e828411d-->
Reviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
ACK 05b2d9fe076233961ebf24e74d47c57cc0618bbb
Changes look good to me, makes sense to update as visual studio 2019 will "will go out of support in October 2022". PR description could state some of the motivation for the update.
Milestone
24.0