More efficient DirEntry seeking #7
Oakchris1955
started this conversation in
Ideas
Replies: 1 comment
-
|
Bloom filters have now been implemented as an optional crate feature, but I will keep this up just in case there are any other ideas. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
When obtaining the corresponding
DirEntryfrom a directory, the search is linear. This issue impacts both opening a file (if it is at the very end of the entry chain we have to go through all that) as well as creating a file or a directory (we much create a SFN from a LFN. There's no standard procedure for that, we just generate one, check if it exists, if not, continue searching).The only solution I have thought of are Bloom Filters, but they only solve the creation-related issue (we don't have to parse or read anything, we just check the Bloom Filter). The current performance for directories with lot's of files is thus pretty bad (on my computer it takes ~14s to create a file, close it, open it again and do that for 5 000 times. I imagine the performance will be way worse on embedded devices, although for small directories (less than 200 entries), that shouldn't matter) so that's why I am creating this discussion. Any ideas will be appreciated.
Beta Was this translation helpful? Give feedback.
All reactions