pub struct TierConfig {Show 14 fields
pub alpha: f32,
pub tau: f32,
pub w_ema: f32,
pub w_pop: f32,
pub w_rec: f32,
pub t1: f32,
pub t2: f32,
pub t3: f32,
pub hysteresis: f32,
pub min_residency: u32,
pub max_delta_chain: u8,
pub block_bytes: usize,
pub tier1_byte_cap: Option<usize>,
pub warm_aggressive_threshold: Option<usize>,
}Expand description
Enhanced tier policy with EMA + popcount + recency scoring.
Score = w_ema * ema_rate + w_pop * (popcount(window)/64) + w_rec * exp(-dt/tau)
Fields§
§alpha: f32EMA smoothing factor (0..1). Higher = more responsive to recent access.
tau: f32Recency decay time constant. Larger = slower decay.
w_ema: f32Weight for EMA access rate in score.
w_pop: f32Weight for popcount (recent tick activity) in score.
w_rec: f32Weight for recency (time since last access) in score.
t1: f32Score threshold for Tier1 (hot).
t2: f32Score threshold for Tier2 (warm).
t3: f32Score threshold for Tier3 (cold).
hysteresis: f32Hysteresis margin. Upgrade needs score > threshold + hysteresis, downgrade needs score < threshold - hysteresis.
min_residency: u32Minimum ticks a block must stay in its current tier.
max_delta_chain: u8Maximum delta chain length before compaction.
block_bytes: usizeBlock size in bytes.
tier1_byte_cap: Option<usize>Maximum bytes allowed in Tier1.
warm_aggressive_threshold: Option<usize>Use 5-bit instead of 7-bit when warm set exceeds this byte count.
Trait Implementations§
Source§impl Clone for TierConfig
impl Clone for TierConfig
Source§fn clone(&self) -> TierConfig
fn clone(&self) -> TierConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more