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

Make ControlFlowGraph store a reference to Engines to remove clones #5983

Merged
merged 3 commits into from
May 10, 2024

Conversation

JoshuaBatty
Copy link
Member

@JoshuaBatty JoshuaBatty commented May 10, 2024

Description

Using the same performance test as in #5976 and #5978, this change gives a further 21.33% performance improvement.

Before: Elapsed time: 14.653166459s
After: Elapsed time: 11.527667375s

@JoshuaBatty JoshuaBatty self-assigned this May 10, 2024
@JoshuaBatty JoshuaBatty added the compiler General compiler. Should eventually become more specific as the issue is triaged label May 10, 2024
@JoshuaBatty JoshuaBatty requested review from a team May 10, 2024 03:05
@JoshuaBatty JoshuaBatty enabled auto-merge (squash) May 10, 2024 03:05
Copy link

Benchmark for 073f71e

Click to view benchmark
Test Base PR %
code_action 5.4±0.07ms 5.3±0.14ms -1.85%
code_lens 292.7±8.18ns 290.3±4.98ns -0.82%
compile 3.4±0.06s 3.0±0.04s -11.76%
completion 4.9±0.33ms 4.6±0.09ms -6.12%
did_change_with_caching 2.9±0.02s 2.9±0.03s 0.00%
document_symbol 1022.4±38.53µs 961.5±10.09µs -5.96%
format 91.3±1.09ms 90.6±0.89ms -0.77%
goto_definition 356.8±6.35µs 374.6±6.88µs +4.99%
highlight 9.1±0.14ms 8.7±0.18ms -4.40%
hover 476.6±6.04µs 493.2±5.52µs +3.48%
idents_at_position 122.8±0.48µs 124.2±0.26µs +1.14%
inlay_hints 662.7±15.69µs 686.4±55.34µs +3.58%
on_enter 497.8±15.18ns 499.9±12.13ns +0.42%
parent_decl_at_position 3.8±0.03ms 3.6±0.02ms -5.26%
prepare_rename 357.6±6.14µs 374.3±4.37µs +4.67%
rename 9.7±0.12ms 9.4±0.20ms -3.09%
semantic_tokens 1029.2±19.35µs 1075.6±14.70µs +4.51%
token_at_position 361.0±3.84µs 358.4±2.18µs -0.72%
tokens_at_position 3.8±0.04ms 3.6±0.04ms -5.26%
tokens_for_file 437.6±2.37µs 428.4±2.58µs -2.10%
traverse 40.8±1.35ms 41.9±0.86ms +2.70%

Copy link

Benchmark for 524d69f

Click to view benchmark
Test Base PR %
code_action 5.4±0.08ms 5.2±0.08ms -3.70%
code_lens 290.3±8.59ns 287.3±6.16ns -1.03%
compile 3.4±0.05s 3.0±0.04s -11.76%
completion 4.7±0.02ms 4.6±0.06ms -2.13%
did_change_with_caching 2.9±0.03s 2.9±0.04s 0.00%
document_symbol 1004.1±36.56µs 995.9±18.93µs -0.82%
format 90.4±1.24ms 89.7±1.14ms -0.77%
goto_definition 360.6±8.03µs 365.7±8.74µs +1.41%
highlight 9.1±0.02ms 8.7±0.12ms -4.40%
hover 484.1±7.04µs 486.6±5.99µs +0.52%
idents_at_position 122.9±0.58µs 123.7±0.83µs +0.65%
inlay_hints 695.4±6.77µs 653.5±20.10µs -6.03%
on_enter 483.8±11.42ns 488.5±14.12ns +0.97%
parent_decl_at_position 3.8±0.02ms 3.6±0.03ms -5.26%
prepare_rename 361.5±5.15µs 365.7±6.13µs +1.16%
rename 9.7±0.13ms 9.3±0.10ms -4.12%
semantic_tokens 1017.8±23.61µs 1064.5±16.47µs +4.59%
token_at_position 379.1±2.01µs 354.0±3.16µs -6.62%
tokens_at_position 3.8±0.09ms 3.6±0.09ms -5.26%
tokens_for_file 439.2±3.74µs 420.7±2.24µs -4.21%
traverse 40.3±1.34ms 41.0±0.93ms +1.74%

Copy link
Member

@kayagokalp kayagokalp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@kayagokalp kayagokalp requested a review from a team May 10, 2024 07:34
@JoshuaBatty JoshuaBatty merged commit e2f55b8 into master May 10, 2024
38 checks passed
@JoshuaBatty JoshuaBatty deleted the josh/optimisations branch May 10, 2024 08:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler General compiler. Should eventually become more specific as the issue is triaged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants