Skip to content

Conversation

hebasto
Copy link
Member

@hebasto hebasto commented Feb 11, 2023

Changes that are not affecting binaries, e.g., #27070 or #27072, are expected to show up to 100% ccache hit rate. But that is not the case:

Zero hit rate in the "macOS 10.15" is well known. But a fix was considered not "a good change" and closed.

For another task with nearly-zero hit rate--"ARM64 Android APK"--a fix suggested in #27077.

Here are cache hit rates for other problematic tasks:

  • "previous releases": 33.47 % and 40.68 %
  • "TSan": 77.94 % and 81.07 %
  • "MSan": 47.24 % and 49.29 %
  • "ASan + LSan + UBSan + integer": 54.96 % and 59.79 %
  • "multiprocess": 12.05 % and 15.16 %
  • "macOS 13 native": 65.87 % and 67.86 %

In my experiments, making a ccache_cache folder task-specific did not help.

Apparently, the problem is related to cirruslabs/cirrus-ci-docs#896.

This PR fixes the issue. Also CCACHE_SIZE values have been adjusted for some tasks to avoid cache misses due to "cleanups performed".

In Cirrus CI the `/tmp` is a special volume to be mounted into instances
running in a Kubernetes cluster, which makes usage of `ccache` cache
much less effective.
This change improves cache hit rates for the touched CI tasks.
@DrahtBot
Copy link
Contributor

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Reviews

See the guideline for information on the review process.
A summary of reviews will appear here.

@DrahtBot DrahtBot added the Tests label Feb 11, 2023
@hebasto
Copy link
Member Author

hebasto commented Feb 11, 2023

Drafted for now as I'm going to demonstrate benefits of this PR by re-running CI twice. First time with cleaned caches, and second one to ensure higher hit rates.

@hebasto hebasto closed this Feb 11, 2023
@bitcoin bitcoin locked and limited conversation to collaborators Feb 19, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants