Put the CPU model in the bench cache's shared-key - #57
Merged
Merged
Conversation
rust-cache appends its `key` input only when `shared-key` is unset, so the CPU model added in #54 never reached the cache key: the benchmark job kept restoring `v1-bench-x86_64-unknown-linux-gnu-Linux-x64-...`. A run on an AMD EPYC 7763 restored proc-macro .so files built on an AVX-512 Intel runner and rustc took SIGILL expanding thiserror's derive. Fold the model into shared-key and drop the key input.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Swatinem/rust-cachetreatsshared-keyandkeyas mutually exclusive:keyis appended only whenshared-keyis unset (config.ts:73-88).So the CPU model added in #54 was computed and then discarded. In run 34847555030:
The job landed on an EPYC 7763 (Zen 3, no AVX-512) and restored
libthiserror_impl-*.sobuilt under-C target-cpu=nativeon an AVX-512 Intel runner, so rustc took SIGILL expanding the derive forsonic-rs.Fold the model into
shared-keyand dropkey. The new prefix also means the poisoned entry can't be restored, so no manual cache purge is needed.release.ymlis unaffected: its matrix pins explicit-C target-cpu=x86-64{,-v2,-v3}, nevernative.