-
-
Notifications
You must be signed in to change notification settings - Fork 824
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Use jemalloc #481
Use jemalloc #481
Conversation
Benchmark #1: ./fd-sys-alloc '[0-9]\.jpg$' /home/shark Time (mean ± σ): 246.8 ms ± 3.4 ms [User: 960.1 ms, System: 810.0 ms] Range (min … max): 244.1 ms … 257.1 ms 12 runs Benchmark #2: ./fd-jemalloc '[0-9]\.jpg$' /home/shark Time (mean ± σ): 201.0 ms ± 3.0 ms [User: 833.9 ms, System: 666.9 ms] Range (min … max): 196.1 ms … 206.9 ms 14 runs Summary './fd-jemalloc '[0-9]\.jpg$' /home/shark' ran 1.23 ± 0.03 times faster than './fd-sys-alloc '[0-9]\.jpg$' /home/shark'
Released in v7.4.0. |
|
|
Yep. Is there some easy way to do such benchmark? I would try to check the Fedora builds. |
Yes. Build the current master and compare it against a version with these lines removed: Lines 38 to 41 in d48aeda
Benchmark scripts are available at: https://github.com/sharkdp/fd-benchmarks You can use the |
Great. I'll do bench on latest Fedora and come back with results. |
where |
Thank you very much for the feedback! It looks like you can reproduce my results (10%-30% speedup when using jemalloc). |
I keep (compiled) old versions of
fd
around to find performance regressions.I noticed that there was a drop in performance between my
fd-7.0.0
and thefd-7.1.0
binary. However, when re-compiling these old versions with the current version of Rust (1.37), both of them were slow.So this had to do something with the version of Rust I was using at that time. The only thing that came to my mind was the change from jemalloc to the system allocator.
Turns out this makes a pretty big difference (23%):
./fd-sys-alloc '[0-9]\.jpg$'
./fd-jemalloc '[0-9]\.jpg$'
This PR re-enables jemalloc for
fd
.