Debug Counters Implementation - Clean History

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>
This commit is contained in:
Moe Charm (CI)
2025-11-05 12:31:14 +09:00
commit 52386401b3
27144 changed files with 124451 additions and 0 deletions

View File

@ -0,0 +1,64 @@
#!/usr/bin/env bash
set -euo pipefail
# Aggregate suite runner: tiny-hot triad, random-mixed triad, comprehensive pair, optional app benches
# Usage: scripts/run_suite_compare.sh [cycles_hot] [cycles_mixed] [with_apps]
# cycles_hot : tiny hot cycles (default 80000)
# cycles_mixed : random mixed cycles (default 120000)
# with_apps : 0/1 (default 0) — if 1, runs scripts/run_apps_with_hakmem.sh
ROOT_DIR=$(cd "$(dirname "$0")/.." && pwd)
cd "$ROOT_DIR"
cycles_hot=${1:-80000}
cycles_mixed=${2:-120000}
with_apps=${3:-0}
TS=$(date +%Y%m%d_%H%M%S)
OUTDIR="bench_results/suite_${TS}"
mkdir -p "$OUTDIR"
log() { echo "[$(date +%H:%M:%S)] $*"; }
log "tiny hot triad ($cycles_hot)"
bash scripts/run_tiny_hot_triad.sh "$cycles_hot" | tee "$OUTDIR/tiny_hot.log" >/dev/null || true
th_csv=$(sed -n 's/^\[done\] CSV: \(.*\)$/\1/p' "$OUTDIR/tiny_hot.log" | tail -n1)
log "random mixed triad ($cycles_mixed)"
bash scripts/run_random_mixed_matrix.sh "$cycles_mixed" | tee "$OUTDIR/random_mixed.log" >/dev/null || true
rm_csv=$(sed -n 's/^\[done\] CSV: \(.*\)$/\1/p' "$OUTDIR/random_mixed.log" | tail -n1)
log "comprehensive pair"
bash scripts/run_comprehensive_pair.sh | tee "$OUTDIR/comp_pair.log" >/dev/null || true
cp_csv=$(sed -n 's/^\[done\] CSV: \(.*\)$/\1/p' "$OUTDIR/comp_pair.log" | tail -n1)
if [[ "$with_apps" == "1" ]]; then
log "apps (LD-safe)"
bash scripts/run_apps_with_hakmem.sh | tee "$OUTDIR/apps.log" >/dev/null || true
fi
summary="$OUTDIR/summary.md"
{
echo "# HAKMEM vs System vs mimalloc Suite ($TS)"
echo ""
echo "- tiny hot triad CSV: \
\
$th_csv"
echo "- random mixed triad CSV: \
\
$rm_csv"
echo "- comprehensive pair CSV: \
\
$cp_csv"
if [[ "$with_apps" == "1" ]]; then
echo "- apps log: $OUTDIR/apps.log"
fi
echo ""
echo "Quick peek (head):"
echo ""; echo '```'; sed -n '1,20p' "$th_csv"; echo '```'
echo ""; echo '```'; sed -n '1,20p' "$rm_csv"; echo '```'
echo ""; echo '```'; sed -n '1,30p' "$cp_csv"; echo '```'
} > "$summary"
log "done → $summary"