code wiki / (root) / nx_swarm_pack_units_baseline_t70.nx

nx_swarm_pack_units_baseline_t70.nx source

↩ module page · 20 lines · 1736 B

1import "nx_swarm_pack.nx" 2import "nx_gate_verdict.nx" 3const KG_NOW:i64=1000000000 4const KG_WINDOW:i64=10000000 5func kg_path(stamp:i64,label:*u8,kind:*u8)->*u8{let p:*u8=sys_mmap(256);var n:i64=fa_cat(p,0,"/tmp/packv2_" as *u8);n=fa_catn(p,n,stamp);n=fa_cat(p,n,"_" as *u8);n=fa_cat(p,n,label);n=fa_cat(p,n,kind);p[n]=0 as u8;return p} 6func kg_write(path:*u8,b:*u8,n:i64)->i64{let fd:i64=__syscall(SYS_OPENAT,AT_FDCWD,path as i64,193,420,0,0);if fd<0{return 0};let wr:i64=fa_write_all(fd,b,n);let closed:i64=sys_close(fd);if wr==n&&closed==0{return 1};return 0} 7func kg_case(stamp:i64,label:*u8,nodes:*u8,gpus:*u8,want:i64,gs:i64,vr:i64,ge:i64,ctr:*i64)->i64{ 8 let np:*u8=kg_path(stamp,label,"_n.snap" as *u8);let gp:*u8=kg_path(stamp,label,"_g.snap" as *u8) 9 if kg_write(np,nodes,fa_len(nodes))!=1||kg_write(gp,gpus,fa_len(gpus))!=1{gv_check(label,0==1,ctr);return 0} 10 let pool:*i64=sys_mmap(SK_MAXP*SK2_FIELDS*8) as *i64;let meta:*i64=sys_mmap(32) as *i64 11 let n:i64=sk2_pool(np,gp,KG_NOW,KG_WINDOW,KG_WINDOW,0,pool,SK_MAXP,meta) 12 var ok:i64=0;if n==want{ok=1};if n>0{if pool[6]!=gs||pool[4]!=vr||pool[1]!=7000||pool[2]!=8192{ok=0};if ge<0&&meta[2]!=ge{ok=0}} 13 gv_check(label,ok==1,ctr);return ok 14} 15func main(argc:i64,argv:*i64)->i64{ 16 let ctr:*i64=gv_ctr();let stamp:i64=sys_now_us();gv_head("PACK-UNITS-BASELINE-NEGATIVE" as *u8) 17 kg_case(stamp,"old_accepts_invalid_percent101" as *u8,"NODE laptop 100 100 8 125 101 8192 16384 0 1000000000 -1 -1\n" as *u8,"" as *u8,1,0,0,0,ctr) 18 kg_case(stamp,"old_refuses_valid_smallRAM" as *u8,"NODE tiny 10 0 1 0 50 0 1 0 1000000000 -1 -1\n" as *u8,"" as *u8,(0-43),0,0,0,ctr) 19 return gv_verdict("PACK-UNITS-BASELINE" as *u8,ctr,"PASS reproduces original defects, not desired behavior" as *u8) 20}