Cache Pools in Hybrid Cache #64
-
Hello, I would like to implement a few features to use Cachelib for my research.
I wanted to ask if there is any way to know about current development status of Hybrid Cache, or talk to anyone for advice, guidance on how to approach Hybrid Cache development. I wanted to know if there are any big obstacles, advice or things to look out when trying to implement this feature. Thank you! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
Can you explain what you're trying to achieve with cache pools on NvmCache? Also what sort of workloads? The reason we didn't implement pools is because they can easily lead to excessive random writes, which hurt device endurance. Note this is specifically for BlockCache (large items) which benefits greatly from sequential writes. Typically the need for pools is to isolate workload. For this, we ask the user to control this logically using the AdmissionPolicy API for NvmCache. (Refer to this for API: https://github.com/facebook/CacheLib/blob/main/cachelib/allocator/NvmAdmissionPolicy.h) |
Beta Was this translation helpful? Give feedback.
Can you explain what you're trying to achieve with cache pools on NvmCache? Also what sort of workloads?
The reason we didn't implement pools is because they can easily lead to excessive random writes, which hurt device endurance. Note this is specifically for BlockCache (large items) which benefits greatly from sequential writes.
Typically the need for pools is to isolate workload. For this, we ask the user to control this logically using the AdmissionPolicy API for NvmCache. (Refer to this for API: https://github.com/facebook/CacheLib/blob/main/cachelib/allocator/NvmAdmissionPolicy.h)