code wiki / (root) / _py_quant_substrate.nx

_py_quant_substrate.nx source

↩ module page · 19 lines · 495 B

1import "syscalls.nx" 2import "sketch_tdigest.nx" 3 4func main() -> i64 { 5 let td: *TDigest = nx_tdigest_alloc(100) 6 if td == (0 as *TDigest) { return 1 } 7 var i: i64 = 1 8 while i <= 100000 { 9 nx_tdigest_add(td, i) 10 i = i + 1 11 } 12 let p99: i64 = nx_tdigest_quantile(td, 990) 13 // gate: p99 within 5% of true 99000 14 let truth: i64 = 99000 15 var diff: i64 = p99 - truth 16 if diff < 0 { diff = -diff } 17 if diff > (truth * 5) / 100 { return 2 } 18 return 0 19}