mirror of
https://github.com/bdbrown4/peltier.io.git
synced 2026-11-07 10:58:28 +00:00
phase3: coz integration status; cjson C pipeline proven end-to-end
- coz wired (harness -DHOTPATH_COZ hook, scripts, just coz) + installed,
but the apt coz runtime aborts in its own init_coz/pthread_create
interposition on this glibc (known coz bug, reproduces on the pristine
binary). Documented in results/cjson/coz/README.md; callgrind cache-sim
is the working profiler.
- cjson no-op verdict smoke: full C pipeline flows (clang {out} baseline
rebuild, Unity/CTest + golden gates, interleaved bench) to a correct
null result (median 0.9995).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EcKPWQ3MQD4NdEHwar96u2
This commit is contained in:
@@ -0,0 +1,23 @@
|
|||||||
|
# coz on cjson — integration status
|
||||||
|
|
||||||
|
coz is **wired** into the harness (SPEC §12): `targets/cjson/harness.c`
|
||||||
|
carries a `-DHOTPATH_COZ` throughput progress point, and
|
||||||
|
`scripts/coz-profile.sh` + `just coz cjson` build the instrumented binary
|
||||||
|
and run `coz run`. `scripts/coz-summary.py` ranks lines by causal
|
||||||
|
throughput effect.
|
||||||
|
|
||||||
|
**Runtime limitation in this container:** the distro `coz-profiler`
|
||||||
|
(apt) aborts inside its own `init_coz` during startup —
|
||||||
|
`pthread_create` interposition recurses ("init_coz in progress, do not
|
||||||
|
recurse" → SIGABRT) before `main` runs. This is a known coz/glibc
|
||||||
|
incompatibility on newer glibc, independent of the harness. It reproduces
|
||||||
|
on the pristine binary with a bare `coz run`, so it is not our
|
||||||
|
instrumentation.
|
||||||
|
|
||||||
|
**What we use instead:** callgrind `--cache-sim --branch-sim`
|
||||||
|
(`results/cjson/hotspots.txt`) is the working profiler and gives an
|
||||||
|
unambiguous class-selection signal for cjson — glibc float
|
||||||
|
serialization/parsing (`__printf_fp`, `strtod`) plus cJSON
|
||||||
|
`parse_value`/`print_value` dominate. The coz path is ready for an
|
||||||
|
environment with a compatible coz runtime (bench-metal / a pinned coz
|
||||||
|
build); no code change is needed there.
|
||||||
Binary file not shown.
Reference in New Issue
Block a user