Tiny: unify adopt boundary via helper; extend simple refill to class5/6; front refill tuning for class5/6
- Add adopt_bind_if_safe() and apply across reuse and registry adopt paths (single boundary: acquire→drain→bind). - Extend simplified SLL refill to classes 5/6 to favor linear carve and reduce branching. - Increase ultra front refill batch for classes 5/6 to keep front hot. Perf (1T, cpu2, 500k, HAKMEM_TINY_ASSUME_1T=1): - 256B ~85ms, cycles ~60M, branch‑miss ~11.05% (stable vs earlier best). - 1024B ~80–73ms range depending on run; cycles ~27–28M, branch‑miss ~11%. Next: audit remaining adopt callers, trim debug in hot path further, and consider FC/QuickSlot ordering tweaks.
This commit is contained in:
@ -1456,7 +1456,9 @@ static inline int ultra_batch_for_class(int class_idx) {
|
||||
case 2: return 96; // 32B(A/B最良)
|
||||
case 3: return 224; // 64B(A/B最良)
|
||||
case 4: return 64; // 128B
|
||||
default: return 32; // others
|
||||
case 5: return 64; // 256B (promote front refill)
|
||||
case 6: return 64; // 512B (promote front refill)
|
||||
default: return 32; // 1024B and others
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user