-
Notifications
You must be signed in to change notification settings - Fork 477
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
performance comparison and readme clarifications #138
Comments
I don't understand the real significance of this comparison. The functionality offered by each file manager varies significantly, and when categorized by language, currently only Joshuto is implemented using Rust. However, it doesn't provide out-of-the-box image preview but rather relies on users to implement it themselves, which depends on how users choose to do so. As an old user, I followed the official document using the combination of When navigating quickly with the cursor, all the images stack up together. I believe this is more of a distinction between "usable" and "unusable" rather than a performance issue. If we must compare performance, I can say that Yazi is much better because:
The term "stuff" here is too broad, and I'm not sure how to answer it. However, I will still attempt to write an article later to introduce the internal workings of Yazi from my perspective.
yazi/config/preset/keymap.toml Lines 158 to 203 in b5db6da
These are the Vim keybindings currently supported by Yazi. Yes, it's open-ended, and over time, Yazi will integrate more Vim functionalities, but certainly not all of them, as that would be creating a new text editor.
Yazi doesn't use sched_* and io_uring, and the reason is here: https://www.reddit.com/r/rust/comments/16fxr58/comment/k066gmh/ "Internal task priority assignment" sounds good, I will update it.
If you are referring to transient memory usage, it depends on the user's file type and file size. For image files, it only consumes the memory necessary for image decoding and downscaling, then writes the result to disk and promptly releases the memory. If you are talking about resident memory, for images, it is not applicable because they are reading cache from disk. For regular files, the MIME type of the file is pre-cached, and a The amount of memory consumed in this case also depends on the number of files and user actions -- pre-caching is lazily triggered only when the user scrolls over pages. Given the implementation mentioned above, I don't believe there's a significant need to make it configurable. Therefore, it's non-configurable. |
Wow, thanks alot. That clarifies alot and sounds very convincing, so I'll close this issue. I'll add my only nits regarding relevant rough upper bound memory usage to the (first design draft?) article. |
I'm going to lock this issue because it has been closed for 30 days. ⏳ This helps our maintainers find and focus on the active issues. If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further. |
You call it "Blazing Fast", but do not show benchmarks or comparisons to other terminal file managers.
Some brief design questions:
Some brief comments on README:
Internal one or also by the Kernel scheduler? Use "internal task priority assignment", if you dont't use
sched_*
class functions ie on Linux etc.Are they using blocking syscalls or non-blocking ones (io_uring)? Would sounds nicer, if you mention asynchronous executed and using non-blocking syscalls, if available.
How much additionally memory does this use? Is this configurable? Overall memory consumption would be also nice to know and track to estimate what kind of low(er) end devices can be used with yazi.
The text was updated successfully, but these errors were encountered: