A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
CacheKeyHash Struct Reference

#include <PageCache.h>

+ Collaboration diagram for CacheKeyHash:

Public Member Functions

std::size_t operator() (const CacheKey &key) const
 

Detailed Description

How many cache policies we want to support?

0. LRU.

  1. MRU.
  2. Priority-based LRU/MRU. Step 1. select Set based on following priority order
    • Lifetime-ended task-level visibility data
    • Lifetime-ended job-level visibility data
    • Lifetime-ended application-level visibility data
    • To-expire application-level visibility data
    • To-expire job-level visibility data
    • To-expire task-level visibility data Step 2. evict one or more pages from the Set based on LRU/MRU
  3. Cost-based. Hash function for CacheKey, used for caching and retrieving a page.

Definition at line 64 of file PageCache.h.

Member Function Documentation

std::size_t CacheKeyHash::operator() ( const CacheKey key) const
inline

Definition at line 66 of file PageCache.h.


The documentation for this struct was generated from the following file: