Workload capsules the DoE births are definitions only; each defines WL-RUN (its old birth-time work plus its entry word twice) and WL-DONE-ARGS. The driver births N workers, SENDs each 'WL-RUN WL-DONE-ARGS SEND', waits in an ordinary loop for N MU-DONE messages, KILLs them (parked idle), and emits the marker. The serialized VM-EXEC round-robin is gone. Kernel: no switch checkpoint after a payload's last word; work heat is the assessed per-beat charge, and a VM gaining work is raised to the busy set's floor (Captain Bob's ruling) -- fixes a live stall where a busy-waiting Hera never yielded, without serializing batch starts. Evidence: cfg-4 rows spread evenly over Hera and all 8 worker slots (44k switches); full cfg-4 trials on amd64/aarch64/riscv64 end fail=0 with 8/8 KILL dead; Stage G interleave byte-identical on all three. Acceptance: dict_hash unchanged, relay 3, idle growth 0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
21 lines
665 B
Forth
21 lines
665 B
Forth
Block 5058
|
|
( workload-1-lite.4th -- bounded MICRO-BURST, SXXXIII. )
|
|
( workload-1.4th's own self-exec tail (SQUARE-WAVE + )
|
|
( SQUARE-BURST + 100000x MICRO-BURST) is ~875M words -- )
|
|
( found live, ~4.3hrs just to birth one worker. Same )
|
|
( BURST/COMPUTE/MICRO-BURST bodies, bounded self-exec. )
|
|
: COMPUTE ( n -- )
|
|
0 SWAP 0 DO I 7 * + LOOP DROP ;
|
|
: BURST ( intensity -- )
|
|
100 * COMPUTE ;
|
|
: MICRO-BURST ( -- )
|
|
10 30 RANDOM BURST
|
|
50 150 RANDOM WAIT ;
|
|
|
|
Block 5059
|
|
: RUN-MICRO-BURSTS ( -- )
|
|
1000 0 DO MICRO-BURST LOOP ;
|
|
( FABRIC-3.8 3.9: defs only; the DoE SENDs WL-RUN )
|
|
: WL-RUN RUN-MICRO-BURSTS MICRO-BURST MICRO-BURST ;
|
|
: WL-DONE-ARGS S" MU-DONE" S" Hera" ;
|