Major Features: - Debug counter infrastructure for Refill Stage tracking - Free Pipeline counters (ss_local, ss_remote, tls_sll) - Diagnostic counters for early return analysis - Unified larson.sh benchmark runner with profiles - Phase 6-3 regression analysis documentation Bug Fixes: - Fix SuperSlab disabled by default (HAKMEM_TINY_USE_SUPERSLAB) - Fix profile variable naming consistency - Add .gitignore patterns for large files Performance: - Phase 6-3: 4.79 M ops/s (has OOM risk) - With SuperSlab: 3.13 M ops/s (+19% improvement) This is a clean repository without large log files. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
33 lines
1.0 KiB
Bash
Executable File
33 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Debug-oriented Tiny triad run with counters + perf
|
|
# Usage: scripts/run_tiny_debug.sh [cycles]
|
|
|
|
ROOT_DIR=$(cd "$(dirname "$0")/.." && pwd)
|
|
cd "$ROOT_DIR"
|
|
|
|
cycles=${1:-40000}
|
|
|
|
echo "[build] bench_debug (HAKMEM_DEBUG_COUNTERS=1)"
|
|
make -s bench_debug >/dev/null
|
|
|
|
export HAKMEM_TINY_PATH_DEBUG=1
|
|
export HAKMEM_TINY_COUNTERS_DUMP=1
|
|
|
|
echo "[run] tiny hot triad (cycles=$cycles)"
|
|
HAKMEM_TINY_SPECIALIZE_32_64=${HAKMEM_TINY_SPECIALIZE_32_64:-1} \
|
|
HAKMEM_TINY_BUMP_SHADOW=${HAKMEM_TINY_BUMP_SHADOW:-0} \
|
|
HAKMEM_TINY_BG_BIN=${HAKMEM_TINY_BG_BIN:-0} \
|
|
HAKMEM_TINY_ULTRA_SIMPLE=${HAKMEM_TINY_ULTRA_SIMPLE:-0} \
|
|
HAKMEM_TINY_HOTMAG=${HAKMEM_TINY_HOTMAG:-0} \
|
|
HAKMEM_WRAP_TINY=1 HAKMEM_INT_ENGINE=0 HAKMEM_TINY_TLS_SLL=1 \
|
|
bash scripts/run_tiny_hot_triad.sh "$cycles"
|
|
|
|
echo "[perf] 32B / 64B"
|
|
HAKMEM_TINY_SPECIALIZE_32_64=1 bash scripts/run_perf_hot_triad.sh 32 100 50000 3
|
|
HAKMEM_TINY_SPECIALIZE_32_64=1 bash scripts/run_perf_hot_triad.sh 64 100 50000 3
|
|
|
|
echo "[done] Inspect stderr for [Tiny Path Debug] and [Tiny Extended Counters]"
|
|
|