diff options
| author | eunhhu <[email protected]> | 2026-10-18 16:44:17 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-10-18 16:44:17 +0100 |
| commit | 241016b0fc3139414089619f0ef8cb7237722c6c (patch) | |
| tree | b782ed50757ee910278c8d1129dcfc7ded48d527 /research/experiments/044-specs/2026-10-18-stage2c.jsonl | |
| parent | 433f56c29b26b83cd2991b4a834b427fae3e75d4 (diff) | |
| download | pure-241016b0fc3139414089619f0ef8cb7237722c6c.tar.gz pure-241016b0fc3139414089619f0ef8cb7237722c6c.zip | |
Research 140, 027's stage 2c measured: JSON read into a tree by recursive descent (aup's examples/json_tree.aup: value(d, i) -> Json, number giving the value and where it ends, each call's own let's lists, string's escapes joined by char(u), a depth-first walk passing items as values) against Python's reading walked so: JSONTestSuite's 95 y_ taken alike, no n_ taken, 2b's 6 i_ taken (a lone surrogate refused by char as encoding); 100,000 and 50,000 deep refused as memory (the frames fill the event's room, 0.2 s), 30,000 deep taken (past Python's json); 300 random documents alike; in make check (module_specs' digest now depth first, three paths); 142 lines against the same design's 105 in Python (json_rec.py; the bar missed: 24 lines of declarations, 23 of braces), 46 times cJSON's time and 1.6 times plain Python's (600 ns a byte, 248 Pure instructions; 71% in the steps, about 10% in calls, 66,000 calls a document, most of them small block fns like skip); characters against Python's ord in aup's check; probes: p5-chars compiles, p4-rec (a view calling itself) refused; instruction counts: the workloads' modules the same, batches within 0.001% of 2b (BFS -0.21%), the executor alone -0.001% to +0.30%, the bank's queries -0.30% to +0.11% (four runs each; bar 1%); json_rec_time.c (cJSON, a depth-first digest compared first); CHECKPOINT's direction row through 2c
Diffstat (limited to 'research/experiments/044-specs/2026-10-18-stage2c.jsonl')
| -rw-r--r-- | research/experiments/044-specs/2026-10-18-stage2c.jsonl | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/research/experiments/044-specs/2026-10-18-stage2c.jsonl b/research/experiments/044-specs/2026-10-18-stage2c.jsonl new file mode 100644 index 0000000..99972d6 --- /dev/null +++ b/research/experiments/044-specs/2026-10-18-stage2c.jsonl @@ -0,0 +1,6 @@ +{"size":103781,"jit":"0","batch":"","c_ns_per_byte":13.050,"pure_ns_per_byte":599.753,"ratio":46.0,"instructions":25733137,"instructions_per_byte":248.0} +{"size":103781,"python_ns_per_byte":367.8,"python_json_module_ns_per_byte":54.0} +{"size":103781,"jit":"0","batch":"","c_ns_per_byte":13.814,"pure_ns_per_byte":600.877,"ratio":43.5,"instructions":25733137,"instructions_per_byte":248.0} +{"size":103781,"python_ns_per_byte":365.5,"python_json_module_ns_per_byte":53.8} +{"size":103781,"jit":"0","batch":"","c_ns_per_byte":13.141,"pure_ns_per_byte":598.454,"ratio":45.5,"instructions":25733137,"instructions_per_byte":248.0} +{"size":103781,"python_ns_per_byte":369.3,"python_json_module_ns_per_byte":54.8} |
