EnzymeAD / rust

A rust fork to work towards Enzyme integration
https://www.rust-lang.org
Other
52 stars 7 forks source link

chore: Cache random stuff #118

Closed I-Al-Istannen closed 2 months ago

I-Al-Istannen commented 2 months ago

The CI spends quite some time building the cargo project for the initial stages. The directories added in this PR are marked with the CACHE_DIR flag and therefore cargo should be able to deal with them becoming out of date. I just want to see what, if anything, this can save first. There are a few considerations with cache size one has to think about, as we no longer really have a stable hash to base the cache on. Maybe we could build something from the more internal build files, but that is a problem for later. In the meantime it will just bloat the caches, generating a new one every CI run, and then hoping that GitHub ages them out nicely.

ZuseZ4 commented 2 months ago

@wsmoses Do you know if the assumption that the oldest caches get cleaned up holds for the OpenStack runner too?

I-Al-Istannen commented 2 months ago

Yea, the names are pretty much random atm. I first wanted to see whether it helps at all. The Cargo.lock file in src/bootstrap also looks mighty tempting as a hash cache key, that might reduce the amount of caches generated. It doesn't quite seem to be exhaustive though (I have a yoke crate locally in my build folder that I can not find in the dependency tree). But maybe close enough, if the automatic rotation doesn't really like lots of caches.

ZuseZ4 commented 2 months ago

Going from 18-30 to 3 minutes is an awesome speedup. Thanks a lot!