Add Adaptive Replacement Cache to NFD
I would like to suggest the implementation of the Adaptive Replacement Cache (ARC) in NFD.
ARC was developed by IBM in 2006 and keeps track of both frequently and recently used. It has shown better performance than LRU.
There are C++ implementations available.
Updated by Junxiao Shi about 1 year ago
ARC tracks 2c pages in four lists T1, B1, T2, B2, where pages contained in T1 and T2 are stored in the cache, and pages in B1 and B2 are tracked but not stored in the cache.
In NFD 0.6, a
cs::Entry represents an entry that is stored in the cache. It cannot identify an entry that is tracked but not stored. Therefore, ARC is not implementable as a
cs::Policy subclass in current architecture.