Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clean up "performance allocators" and "performance flate2" backends #7686

Merged
merged 1 commit into from
Sep 25, 2024

Conversation

konstin
Copy link
Member

@konstin konstin commented Sep 25, 2024

Rebased version of #7000, description copied below.

Closes #7000


Summary

@charliermarsh has long suspected local builds could be made faster by disabling things like: tikv-jemalloc/mimalloc, zlibng etc.

I'm going through the cargo dep tree looking at things that can be disabled locally.

Methodology:

production cargo flag enables all the production stuff (good allocators, fast compression libs, etc.)

I measure fresh cargo check runs, like so:

rm -rf /tmp/timings; CARGO_TARGET_DIR=/tmp/timings cargo check -F production-memory-allocator --timings

Varying the -F to enable/disable the features

FAQ

Q: Why only check check?

A: The benefits will trickle down to other subcommands (including test/nextest etc.) — check/clippy are super common while iterating. We can do larger checks near the end.

Q: Why only check cold builds?

A: Warm builds depend on a lot on which part of the code is touched — I'll optimize typical interactions later on.

Instead of having conditional cargo dependencies in both uv-dev and uv,
and different `--features` invocations in CI, this introduces a series of
`uv-performance-*` crates that do the right thing.

These are enabled by default, but can be disabled when working on correctness
alone, locally.
@konstin konstin enabled auto-merge (squash) September 25, 2024 14:34
@fasterthanlime
Copy link
Contributor

Windows CI is being flaky again :(

@konstin konstin merged commit f5601e2 into main Sep 25, 2024
79 checks passed
@konstin konstin deleted the konsti/fewer-deps-rebase branch September 25, 2024 15:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants