Files
hakmem/core/front/tiny_ring_cache.d
Moe Charm (CI) eb12044416 Phase 21-1-C: Ring cache Refill/Cascade + Metrics - SLL → Ring cascade
**実装内容**:
- Alloc miss → refill: ring_refill_from_sll() (32 blocks from TLS SLL)
- Free full → fallback: 既に Phase 21-1-B で実装済み(Ring full → TLS SLL)
- Metrics 追加: hit/miss/push/full/refill カウンタ(Phase 19-1 スタイル)
- Stats 出力: ring_cache_print_stats() を bench_random_mixed.c から呼び出し

**修正内容**:
- tiny_alloc_fast.inc.h: Ring miss 時に ring_refill_from_sll() 呼び出し、retry
- tiny_ring_cache.h: Metrics カウンタ追加(pop/push で更新)
- tiny_ring_cache.c: tls_sll_box.h をインクルード、refill カウンタ追加
- bench_random_mixed.c: ring_cache_print_stats() 呼び出し

**ENV 変数**:
- HAKMEM_TINY_HOT_RING_ENABLE=1: Ring 有効化
- HAKMEM_TINY_HOT_RING_CASCADE=1: Refill 有効化(SLL → Ring)
- HAKMEM_TINY_HOT_RING_C2=128: C2 サイズ(default: 128)
- HAKMEM_TINY_HOT_RING_C3=128: C3 サイズ(default: 128)

**動作確認**:
- Ring ON + CASCADE ON: 836K ops/s (10K iterations) 
- クラッシュなし、正常動作

**次のステップ**: Phase 21-1-D (A/B テスト)
2025-11-16 08:15:30 +09:00

42 lines
1.8 KiB
Makefile

core/front/tiny_ring_cache.o: core/front/tiny_ring_cache.c \
core/front/tiny_ring_cache.h core/front/../hakmem_build_flags.h \
core/front/../box/tls_sll_box.h \
core/front/../box/../hakmem_tiny_config.h \
core/front/../box/../hakmem_build_flags.h \
core/front/../box/../tiny_remote.h core/front/../box/../tiny_region_id.h \
core/front/../box/../hakmem_build_flags.h \
core/front/../box/../tiny_box_geometry.h \
core/front/../box/../hakmem_tiny_superslab_constants.h \
core/front/../box/../hakmem_tiny_config.h \
core/front/../box/../ptr_track.h \
core/front/../box/../hakmem_tiny_integrity.h \
core/front/../box/../hakmem_tiny.h core/front/../box/../hakmem_trace.h \
core/front/../box/../hakmem_tiny_mini_mag.h \
core/front/../box/../ptr_track.h core/front/../box/../ptr_trace.h \
core/front/../box/../box/tiny_next_ptr_box.h core/hakmem_tiny_config.h \
core/tiny_nextptr.h core/hakmem_build_flags.h \
core/front/../box/../tiny_debug_ring.h
core/front/tiny_ring_cache.h:
core/front/../hakmem_build_flags.h:
core/front/../box/tls_sll_box.h:
core/front/../box/../hakmem_tiny_config.h:
core/front/../box/../hakmem_build_flags.h:
core/front/../box/../tiny_remote.h:
core/front/../box/../tiny_region_id.h:
core/front/../box/../hakmem_build_flags.h:
core/front/../box/../tiny_box_geometry.h:
core/front/../box/../hakmem_tiny_superslab_constants.h:
core/front/../box/../hakmem_tiny_config.h:
core/front/../box/../ptr_track.h:
core/front/../box/../hakmem_tiny_integrity.h:
core/front/../box/../hakmem_tiny.h:
core/front/../box/../hakmem_trace.h:
core/front/../box/../hakmem_tiny_mini_mag.h:
core/front/../box/../ptr_track.h:
core/front/../box/../ptr_trace.h:
core/front/../box/../box/tiny_next_ptr_box.h:
core/hakmem_tiny_config.h:
core/tiny_nextptr.h:
core/hakmem_build_flags.h:
core/front/../box/../tiny_debug_ring.h: