1
0
Fork 0
mirror of https://github.com/romkatv/powerlevel10k.git synced 2024-12-23 23:51:58 +00:00

add wsl benchmarks

This commit is contained in:
romkatv 2019-03-02 19:28:29 +01:00
parent a325489dcc
commit a6f5e68ffd

View file

@ -93,6 +93,31 @@ POWERLEVEL9K_VCS_STATUS_COMMAND=gitstatus_query_dir
function custom_rprompt() echo -E "hello world" function custom_rprompt() echo -E "hello world"
``` ```
For completeness, here's the same benchmark for Windows Subsystem for Linux (WSL) with
zsh running in the standard Command Prompt (`cmd.exe`).
| Theme | / | ~/testrepo | ~/nerd-fonts | ~/linux |
|----------------------------------|----------:|-----------:|-------------:|------------:|
| powerlevel9k/master | 313 ms | 531 ms | 693 ms | 5898 ms |
| powerlevel9k/next | 119 ms | 278 ms | 442 ms | 5710 ms |
| powerlevel10k | 66 ms | 237 ms | 399 ms | 5569 ms |
| **powerlevel10k with gitstatus** | **22 ms** | **30 ms** | **30 ms** | **5098 ms** |
| naked zsh | 16 ms | 16 ms | 16 ms | 16 ms |
Here Powerlevel10k with [gitstatus](https://github.com/romkatv/gitstatus) has even bigger
advantage over Powerlevel9k and manages to render prompt with low latency.
However, every theme failed miserably on the humongous Linux kernel repo, showing prompt latency
over 5 seconds. This might be related to some sort of system cache, which can fit indices of
smaller repos but of Linux kernel. To work around this problem, you can instruct
[gitstatus](https://github.com/romkatv/gitstatus) to not scan dirty files on repos with over 4k
files in the index (see `GITSTATUS_DIRTY_MAX_INDEX_SIZE` in
[gitstatus docs](https://github.com/romkatv/gitstatus). Linux kernel is the only repo in these
benchmarks that is affected by this setting. Its prompt latency goes down to 32 ms. The prompt no
longer shows whether there are dirty (unstaged or untracked) files but it does indicate with the
color that there _might_ be such files.
## What's the catch? ## What's the catch?
Really, there is no catch. It's literally the same prompt with the same flexibility Really, there is no catch. It's literally the same prompt with the same flexibility