Files
hakmem/docs/status/archive/PHASE_6.20_PLAN_2025_10_23.md

23 lines
1.1 KiB
Markdown
Raw Normal View History

# Phase 6.20 Plan (2025-10-23)
目的: Large(64KB1MB) を「よりシンプルで速いホットパス」に寄せ、free/ミス時の残コストを更に削減。
方針(シンプル/綺麗/効く)
- TC を配列リング化perthread, LIFO
- free は TLS メタデータ(配列)への書込みのみ。ブロックへの `next` 書込みは “spill時” に限定
- run 採用時の owner 更新
- pagedesc.owner_tid を run 採用/バッチpop採用時に現在スレへ更新 → samethread free 命中率UP
- remotefirst の起動条件の明確化
- `ring->top < trigger` かつ `remote_count>0` の時だけ trylock/batchpop。`__builtin_prefetch` を remote_head に
- 中央は run 在庫専用(継続)
- ブロック単位は扱わず、採用後は TLS 直詰め
ENV 追加
- `HAKMEM_L25_TC_CAP` — TC リング容量(既定 64
- `HAKMEM_L25_RING_TRIGGER` — remotefirst 起動のリング残トリガ(既定 2
計測
- 10s/4T, timing OFF で `RUN_FACTOR={3,4,5} × TC_SPILL={8,16,24,32} × TC_CAP={32,64,128}`
- 最良構成で headtohead 保存