Shell benchmark comparison #72
Replies: 5 comments
-
I know we are only talking in the scale of milliseconds but I wouldn't have expected such a big difference from brush in relative performance to the more established players! Their project page says that brush "is functional for interactive use as a daily driver!". However it also states "Out of an abundance of caution, we wouldn't recommend using it yet in production scenarios in case it doesn't behave identically to your existing stable shell." Definitely sounds like more testing of more scenario's would be useful to see if there are any edge cases where brush doesn't perform as well. I also wonder about testing on different hardware (older maybe) to see how these benchmarks track in a wider range of use cases. Great job! |
Beta Was this translation helpful? Give feedback.
-
I'll be honest when I say, I was somewhat expecting Fish and NU to do better. But I am guessing that their extra features are actually slowing factors. I do prefer them and the delay seems insignificant enough. That the better user experience seems worth it but this didn't test any edge cases I should also note that fish and nu have other native ways for many of these tasks that may be faster if they were written in their native way. |
Beta Was this translation helpful? Give feedback.
-
I've added 2 more shells. ZSH & DASH for comparison. See the results below. ![]() ![]() ![]() ![]() |
Beta Was this translation helpful? Give feedback.
-
By @ermo Request I've added the mksh shell. ![]() ![]() ![]() ![]() |
Beta Was this translation helpful? Give feedback.
-
could you test busybox sh and freebsd ash? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I've done some testing for different shells.
Testing was done using Hyperfine and some generated test files.
The results can be viewed below for the different tests I've done.
I tested how quick they're to open, some pipes and generating a 256 sha checksum. If people want other tests included or other shells as well let me know. This is what I have thus far. I have rendered the json output with HTML for your viewing pleasure.
Some relevant data
Operating System: AerynOS 2025.08
KDE Plasma Version: 6.4.4
KDE Frameworks Version: 6.17.0
Qt Version: 6.9.2
Kernel Version: 6.15.11-108.desktop (64-bit)
Graphics Platform: Wayland
Processors: 14 × Intel® Core™ Ultra 5 125U
Memory: 16 GiB of RAM (15.1 GiB usable)
Graphics Processor: Intel® Graphics
Manufacturer: LENOVO
System Version: ThinkPad L13 2-in-1 Gen 5
Beta Was this translation helpful? Give feedback.
All reactions