Repository navigation
spec(queen): preemption (slices + isolates) and nodes - actors.t27 sections 8 and 9 (Closes #7900) - #7907
Merged
Conversation
…tors.t27 sections 8 and 9 (Closes #7900) Owner, 2026-10-09: no distribution across machines, no preemption as in the BEAM - improve it and do it. This lands on master what t27#7901 merged into the side branch of #7866, plus the measured correction that came after it. Section 8. Between turns, a slice: at most SLICE_TURNS (64) turns or SLICE_MICROS (5 ms), then yield to the host's timers and I/O. Within a turn, isolation: turn_isolation(cpu_bound, runs_foreign_code, must_stop) picks the host's thread, an OS thread or an OS process. Only a process kill stops the work. Measured on the Queen's host: a terminated Bun worker thread kept spinning 3 s later, so kill_effect(ISO_THREAD) is KILL_ABANDONS and holds_after_kill keeps its row until the work ends. Section 9. A pid carries its node in the top 12 bits of its slot, and node 0 is section 1 unchanged. send_remote, remote_down (X_NOCONNECTION when the node is down), node_up (lease TTL 20 s, heartbeat 5 s), place_before. Section 7: TRANSPARENT_DISTRIBUTION true, PREEMPTIVE_SLICES true, PREEMPTIVE_REDUCTIONS still false. zig test-report: 32 pass, 0 fail, 0 vacuous. C: 32/32. gen, gen-rust, gen-c and gen-verilog exit 0. Runtime and measurements: gHashTag/trios#1704. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
gHashTag
enabled auto-merge (squash)
October 8, 2026 19:11
This was referenced Oct 8, 2026
Contributor
This was referenced Oct 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #7900
#7901 merged into the side branch of #7866, not into master. This lands the final text on master, with the measured correction that came after #7901.
turn_isolation(cpu, foreign, must_stop)picks the loop, a thread or a process. Only a process kill stops the work: a terminated Bun worker thread was measured still spinning 3 s later, sokill_effect(ISO_THREAD)is KILL_ABANDONS.send_remote,remote_down(X_NOCONNECTION),node_up(lease TTL 20 s) andplace_before.Tests: zig 32 pass, 0 fail, 0 vacuous; C 32/32; all four backends exit 0.
Runtime and measurements: gHashTag/trios#1704.
🤖 Generated with Claude Code