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

box warp routes #5540

Merged
merged 1 commit into from
Nov 5, 2024
Merged

box warp routes #5540

merged 1 commit into from
Nov 5, 2024

Conversation

PSeitz
Copy link
Contributor

@PSeitz PSeitz commented Nov 5, 2024

box warp routes to avoid super heavy types.
Performance impact should be okay, since these heavy types
are not cache friendly.

This reduces type complexity significantly, but some really long type chains remain.
I've identified two, but they may be more

  1. Boxed or chains
  2. Response type chains

We can replace the boxed or chains with a Vec, since they all contain the same
box type now. Such a type doesn't seem to exist in warp yet.

cargo install --path .
Compile time before
4m49s
Compile time now
4m14s

Tool to list heavy functions:
CARGO_PROFILE_RELEASE_LTO=fat cargo llvm-lines --release --bin quickwit > llvm_lines
Size down from 32MB to 22MB

update rust tool chain to 1.81 to fix compilation error (servo/rust-url#992)

addresses #5539

@PSeitz PSeitz force-pushed the warp_types branch 2 times, most recently from 7f76b61 to 3cb9ffe Compare November 5, 2024 05:08
box warp routes to avoid super heavy types.
Performance impact should be okay, since these heavy types
are not cache friendly.

This reduces type complexity significantly, but some really long type chains remain.

I've identified two, but they may be more
1. Boxed or chains
2. Response type chains

We can replace the boxed or chains with a Vec, since they all contain the same
box type now. Such a type doesn't seem to exist in warp yet.

`cargo install --path .`
Compile time before
4m49s
Compile time now
4m14s

Tool to list heavy functions:
`
CARGO_PROFILE_RELEASE_LTO=fat cargo llvm-lines --release --bin quickwit > llvm_lines
`
Size down from 32MB to 22MB

addresses #5539
@fulmicoton
Copy link
Contributor

nice!

@PSeitz PSeitz merged commit e590855 into main Nov 5, 2024
4 of 5 checks passed
@PSeitz PSeitz deleted the warp_types branch November 5, 2024 06:22
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.

2 participants