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

Use jemallocator #298

Merged
merged 2 commits into from
Apr 10, 2020
Merged

Use jemallocator #298

merged 2 commits into from
Apr 10, 2020

Conversation

Razican
Copy link
Member

@Razican Razican commented Apr 2, 2020

I have changed the system allocator for Jemallocator as the global allocator for the binary and the benchmarks. Jemalloc makes the binary bigger, but the performance should increase nicely, which is something we probably want in a compiler.

My benchmarks show around 10% improvement or more in some cases.

@github-actions
Copy link

github-actions bot commented Apr 2, 2020

Benchmark for f1943c6

Click to view benchmark
Test PR Benchmark Master Benchmark %
Create Realm 360.5±15.93µs 409.0±21.64µs 87.00000000000001%
Expression (Parser) 2.8±0.27µs 3.1±0.09µs 87.99999999999999%
Hello World (Execution) 357.1±20.79µs 369.5±27.44µs 97%
Hello World (Lexer) 953.5±47.84ns 869.3±53.72ns 110.00000000000001%
Hello World (Parser) 1034.5±48.33ns 912.0±83.22ns 112.99999999999999%
Symbol Creation 377.8±22.31µs 466.8±54.15µs 76%
fibonacci (Execution) 4.0±0.14ms 4.0±0.20ms 100%
undefined undefined 100%

@github-actions
Copy link

github-actions bot commented Apr 2, 2020

Benchmark for 9679a78

Click to view benchmark
Test PR Benchmark Master Benchmark %
Create Realm 419.8±12.13µs 470.5±13.15µs 87.99999999999999%
Expression (Parser) 3.1±0.07µs 3.5±0.09µs 87.00000000000001%
Hello World (Execution) 421.6±9.70µs 486.1±12.02µs 85.00000000000001%
Hello World (Lexer) 1186.2±51.31ns 1051.6±23.12ns 112.99999999999999%
Hello World (Parser) 1323.6±48.71ns 1333.0±37.41ns 99%
Symbol Creation 465.5±14.15µs 598.9±23.81µs 71%
fibonacci (Execution) 4.8±0.17ms 5.5±0.08ms 85.00000000000001%
undefined undefined 100%

@jasonwilliams
Copy link
Member

jasonwilliams commented Apr 2, 2020

What’s the reason Jemallocator makes the binaries bigger?
(I know very little about jemalloc)

Edit: reading https://internals.rust-lang.org/t/jemalloc-was-just-removed-from-the-standard-library/8759

@jasonwilliams
Copy link
Member

Why are the benchmarks stuck hmm

@Razican
Copy link
Member Author

Razican commented Apr 4, 2020

I cancelled, but it seems I cannot run it again. Still, it seems it passed two times, right?

@Razican
Copy link
Member Author

Razican commented Apr 9, 2020

Should we merge this?

@Razican Razican added the performance Performance related changes and issues label Apr 10, 2020
@Razican Razican merged commit 795a70e into master Apr 10, 2020
@Razican Razican deleted the jemalloc branch April 10, 2020 11:14
jasonwilliams added a commit that referenced this pull request Apr 13, 2020
jasonwilliams added a commit that referenced this pull request Apr 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance Performance related changes and issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants