Actions
Feature #6310
open[FUSE] Support scaling the internal block cache based on number of open files
Story points:
-
Release:
Release relationship:
Auto
Description
FUSE's current caching strategy can serve you well if you're reading files sequentially, or a bunch of small files. If you're interleaving reads across many large files, you can potentially exhaust the cache and thrash it endlessly.
For these sorts of use cases, FUSE would perform better if it kept a small number of blocks in the cache for each file it has open.
The exact implementation should be hashed out. One possibility: the current limit becomes the maximum size of the entire cache. FUSE tracks which blocks belong to which file(s). When it comes time to evict blocks from the cache, FUSE figures out which file(s) have the most blocks cached, and from that list, evicts the least recently used block.
Related issues
Updated by Brett Smith over 9 years ago
- Description updated (diff)
- Category set to FUSE
Updated by Ward Vandewege over 3 years ago
- Target version deleted (
Arvados Future Sprints)
Actions