Tiny: Enable P0→FC direct path for class7 (1KB) by default + docs

- Class7 (1KB): P0 direct-to-FastCache now default ON (HAKMEM_TINY_P0_DIRECT_FC_C7 unset or not '0').
- Keep A/B gates: HAKMEM_TINY_P0_ENABLE, HAKMEM_TINY_P0_DIRECT_FC (class5), HAKMEM_TINY_P0_DIRECT_FC_C7 (class7),
  HAKMEM_TINY_P0_DRAIN_THRESH (default 32), HAKMEM_TINY_P0_NO_DRAIN, HAKMEM_TINY_P0_LOG.
- P0 batch now supports class7 direct fill in addition to class5: gather (drain thresholded → freelist pop → linear carve)
  without writing into objects, then bulk-push into FC, update meta/active counters once.
- Docs: Update direct-FC defaults (class5+class7 ON) in docs/TINY_P0_BATCH_REFILL.md.

Notes
- Use tools/bench_rs_from_files.sh for RS(hakmem/system) to compare runs across CPUs.
- Next: parameter sweep for class7 (FC cap/batch limit/drain threshold) and perf counters A/B.
This commit is contained in:
Moe Charm (CI)
2025-11-09 23:15:02 +09:00
parent d9b334b968
commit 70ad1ffb87
9 changed files with 372 additions and 1184 deletions

View File

@ -0,0 +1,19 @@
CPU: Ryzen 7 5825U
Date: 2025-11-09
P0: ON (default)
Tiny Random Mixed (100k, 1T)
- 256B: hakmem=1:2749689 ops/s, system=1:65601947 ops/s
- 1024B: hakmem=1:2576325 ops/s, system=1:68778109 ops/s
Pool TLS (256B)
- 1T (100k): hakmem=5:6266687 ops/s, system=5:6338090 ops/s
- 4T (50k): hakmem=5:13360242 ops/s, system=5:13254552 ops/s
Notes
- RS = hakmem/system でCPU差を相殺した相対比較が可能。
- 詳細ログは本フォルダ内 *.log を参照。

View File

@ -0,0 +1,8 @@
CPU: Ryzen 7 5825U
Date: 2025-11-09
Class: 1KB (class7)
hakmem OFF (direct=0): 10k=1:2406566 ops/s, 100k=1:2657404 ops/s
hakmem ON (direct=1): 10k= ops/s, 100k= ops/s
system 100k: 1:64986168 ops/s