code wiki / _hdl_build / nx_quality_raci_test.nx

nx_quality_raci_test.nx source

↩ module page · 87 lines · 5373 B

1// nx_quality_raci_test.nx -- proves the feature is ROBUST and correctly DISTRIBUTED across organs: 2// ENGINEER diagnoses the bound, BUILDER decides the operating point under the COUNCIL's quality 3// policy. Exit 0 only if every check holds. 4// (1) decode matvec (Q4) -> Engineer: MEMORY-bound, lever=DATA. 5// (2) Builder, balancing quality(slightly>speed) under the Council floor, picks Q4_K_M -- which 6// the published data independently calls the best quality/size balance. NOT the fastest. 7// (3) contrast: a pure-SPEED choice would pick Q2_K (smallest, +8.82% perplexity) -> proves the 8// balance is doing real work, and quality is being protected. 9// (4) compute-bound kernel -> Builder keeps HIGHEST quality (bytes don't bind; no quality sacrifice). 10// (5) COUNCIL floor rejects Q2_K/Q3_K_M, admits Q4_K_M. 11// (6) ROBUSTNESS: invalid input (0 bytes) -> RF_UNKNOWN (no silent verdict); a 4-exabyte kernel 12// (overflow range) still returns a valid bound; all-below-floor -> graceful highest-quality. 13// license_tier: ORIGINAL 14 15import "nx_builder_quant.nx" // Builder (pulls Engineer + Council-governed quality balance) 16import "nx_syscalls.nx" 17 18func qt_puts(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 } 19func qt_num(v: i64) -> i64 { let bb: *u8 = sys_mmap(28); var m: i64=v; if m<0 {m=0-m}; let t: *u8 = sys_mmap(28); var k: i64=0; if m==0 {t[0]=48;k=1}; while m>0 {t[k]=48+(m%10); m=m/10; k=k+1}; var i: i64=0; while i<k {bb[i]=t[k-1-i]; i=i+1}; sys_write(1, bb, k); return 0 } 20 21func main() -> i64 { 22 qt_puts("=== RACI: Engineer diagnoses -> Builder decides under Council quality policy ===\n" as *u8) 23 // the real llama.cpp quant menu: index name loss_permil bits10 24 // 0 fp16(0,160) 1 Q8_0(1,85) 2 Q6_K(2,66) 3 Q5_K_M(4,55) 4 Q4_K_M(12,45) 5 Q3_K_M(47,34) 6 Q2_K(88,26) 25 let loss: *i64 = sys_mmap(8*8) as *i64 26 let bits: *i64 = sys_mmap(8*8) as *i64 27 loss[0]=0; bits[0]=160 28 loss[1]=1; bits[1]=85 29 loss[2]=2; bits[2]=66 30 loss[3]=4; bits[3]=55 31 loss[4]=12; bits[4]=45 32 loss[5]=47; bits[5]=34 33 loss[6]=88; bits[6]=26 34 let NQ: i64 = 7 35 let pf: i64 = 384 36 let pb: i64 = 45 37 let N: i64 = 4096 38 let mv_flops: i64 = 2 * N * N 39 let mv_bytes: i64 = (N * N * 9) / 16 40 let mm_flops: i64 = 2 * N * N * 64 41 42 let r: *i64 = sys_mmap(8*16) as *i64 43 44 // (1) Engineer diagnoses decode matvec 45 let bound: i64 = eng_diagnose_kernel(mv_flops, mv_bytes, pf, pb) 46 let lever: i64 = eng_recommend_lever(bound) 47 qt_puts(" [Engineer] decode matvec -> bound=" as *u8); qt_num(bound); qt_puts(" lever=" as *u8); qt_num(lever); qt_puts(" (1=DATA)\n" as *u8) 48 r[0] = 0; if bound == RF_MEMORY_BOUND { if lever == ENG_LEVER_DATA { r[0] = 1 } } 49 50 // (2) Builder picks the quality-balanced operating point (expect Q4_K_M = idx 4) 51 let pick: i64 = bld_select_operating_point(mv_flops, mv_bytes, pf, pb, NQ, loss, bits) 52 qt_puts(" [Builder] balanced pick (memory-bound) = idx " as *u8); qt_num(pick); qt_puts(" (expect 4 = Q4_K_M)\n" as *u8) 53 r[1] = 0; if pick == 4 { r[1] = 1 } 54 55 // (3) contrast: pure-speed would pick Q2_K (idx 6) -> proves the balance protects quality 56 let fast: i64 = qb_select_speed_only(NQ, bits) 57 qt_puts(" [contrast] pure-speed pick = idx " as *u8); qt_num(fast); qt_puts(" (Q2_K, +8.82% ppl -- rejected by balance)\n" as *u8) 58 r[2] = 0; if fast == 6 { if pick != fast { r[2] = 1 } } 59 60 // (4) compute-bound kernel -> Builder keeps highest quality (idx 0) 61 let pick_cb: i64 = bld_select_operating_point(mm_flops, mv_bytes, pf, pb, NQ, loss, bits) 62 qt_puts(" [Builder] compute-bound pick = idx " as *u8); qt_num(pick_cb); qt_puts(" (expect 0 = highest quality)\n" as *u8) 63 r[3] = 0; if pick_cb == 0 { r[3] = 1 } 64 65 // (5) Council floor: reject Q2_K(88) & Q3_K_M(47), admit Q4_K_M(12) 66 r[4] = 0 67 if council_quality_admit(88, QB_QUALITY_FLOOR) == 0 { if council_quality_admit(47, QB_QUALITY_FLOOR) == 0 { if council_quality_admit(12, QB_QUALITY_FLOOR) == 1 { r[4] = 1 } } } 68 69 // (6) ROBUSTNESS 70 let bad: i64 = eng_diagnose_kernel(mv_flops, 0, pf, pb) // 0 bytes -> no silent verdict 71 let huge: i64 = rf_bound(8000000000000000000, 4000000000000000000, pf, pb) // ~exabyte, overflow range 72 qt_puts(" [robust] 0-bytes bound=" as *u8); qt_num(bad); qt_puts(" (0=UNKNOWN) exabyte bound=" as *u8); qt_num(huge); qt_puts(" (valid 1/2)\n" as *u8) 73 r[5] = 0 74 if bad == RF_UNKNOWN { if huge == RF_MEMORY_BOUND { r[5] = 1 } } 75 // all-below-floor -> graceful highest-quality fallback (never ship nothing) 76 let lossy: *i64 = sys_mmap(8*4) as *i64; let lb: *i64 = sys_mmap(8*4) as *i64 77 lossy[0]=200; lb[0]=40; lossy[1]=150; lb[1]=34 78 let grace: i64 = qb_select(2, lossy, lb, QB_QUALITY_FLOOR) 79 qt_puts(" [robust] all-below-floor -> graceful idx " as *u8); qt_num(grace); qt_puts(" (1 = least-lossy)\n" as *u8) 80 r[6] = 0; if grace == 1 { r[6] = 1 } 81 82 var pass: i64 = 0; var i: i64 = 0 83 while i < 7 { pass = pass + r[i]; i = i + 1 } 84 qt_puts("----\n passed " as *u8); qt_num(pass); qt_puts("/7\n" as *u8) 85 if pass == 7 { qt_puts(" ROBUST + WIRED: Engineer diagnoses, Builder balances quality>speed under Council floor.\n" as *u8); sys_exit(0); return 0 } 86 qt_puts(" FAIL\n" as *u8); sys_exit(1); return 1 87}