|
|
fdbdcdcdb3
|
Phase 21-1-B: Ring cache Alloc/Free 統合 - C2/C3 hot path integration
**統合内容**:
- Alloc path (tiny_alloc_fast.inc.h): Ring pop → HeapV2/UltraHot/SLL fallback
- Free path (tiny_free_fast_v2.inc.h): Ring push → HeapV2/SLL fallback
- Lazy init: 最初の alloc/free 時に自動初期化(thread-safe)
**設計**:
- Lazy init パターン(ENV control と同様)
- ring_cache_pop/push 内で slots == NULL チェック → ring_cache_init() 呼び出し
- Include 構造: ファイルトップレベルに #include 追加(関数内 include 禁止)
**Makefile 修正**:
- TINY_BENCH_OBJS_BASE に core/front/tiny_ring_cache.o 追加
- Link エラー修正: 4箇所の object list に追加
**動作確認**:
- Ring OFF (default): 83K ops/s (1K iterations) ✅
- Ring ON (HAKMEM_TINY_HOT_RING_ENABLE=1): 78K ops/s ✅
- クラッシュなし、正常動作確認
**次のステップ**: Phase 21-1-C (Refill/Cascade 実装)
|
2025-11-16 07:51:37 +09:00 |
|