runD 1.0.2 Alpha
Pre-releaserunD 1.0.2 Alpha
This release hard-cuts full-capacity tile recurrence and per-tick checkpoint costs while preserving one deterministic Pipeline authority across CPU, Metal, and Vulkan.
Release source: a3188ee5455cc4abe1c6e1d3a87a705b98a90074
Append-only tile outputs (#2)
write_window(...)separates append-only tile publication from recurrent Fold state. The global destination remainsO(Max), while each Fold's private publication bank and work are bounded byO(Tile)and total terminal publication isO(Max).tile_repeat<0>(seed, fold)expresses Seed-to-Fold recurrence without a dummy identity Action.- CPU publishes the exact active slice directly. Metal uses the retained ICB warm path and Vulkan uses its retained command path; neither performs warm allocation, count readback, rebinding, or fallback.
- Zero count, partial tails, high-index writes, duplicate/conflicting targets, deterministic failure priority, and atomic poison/unpublication are covered across CPU, Metal, and Vulkan.
Controlled Max=16, Tile=4 CPU evidence: warm median 57,000 ns -> 39,708 ns (-30.34%), Pipeline-owned peak 744 B -> 56 B (-92.47%), and modeled terminal semantic traffic 576 B -> 64 B (-88.89%). These are fixture-specific measurements, not a whole-application speed claim.
Explicit checkpoint tiers (#3)
latest_device_state()returns a copyableLatestDeviceStatefor live same-Device recovery without host payload, hashing, or checkpoint-path allocation.snapshot_storage([capacity])andsnapshot_into(storage)provide a move-only reusable, atomically published two-bankSnapshotStoragefor portable host recovery. Existing immutablesnapshot()behavior remains available.restore(latest)performs anO(1)selector hand-off when the target shares the publication authority; a disjoint compatible Pipeline performs an exact device-to-device payload copy. Portable restore retains the two-bank host contract.- Ordinary
run()performs no implicit checkpoint operation. Checkpoint allocation/transfer evidence is separated incheckpoint_stats().
For a 4 MiB state, LatestDeviceState acquisition recorded zero checkpoint allocation, payload transfer, and hash work on CPU, Metal, and Vulkan. Warm reusable host export recorded zero process allocation on CPU and Metal; immutable export allocated 3 owners / 4,194,440 B. MoltenVK's driver-inclusive Vulkan observations were 44 allocations / 11,168 B for reusable export versus 47 / 4,205,608 B for immutable export, and are reported without vendor filtering.
Verification and platform boundary
- Debug repository contracts: 35/35 passed.
- Release package contracts: 25/25 passed, including installed SDK consumers.
- Darwin arm64 clean-source candidate: 25/25 passed; archive extraction, identity, consumer rebuild, and SHA-256 verification passed.
- Documentation site contract: 13 pages passed.
- Linux x64: the tag-pinned Ubuntu 24.04 / GCC 13 candidate workflow passed the full release contract, source-identity sealing, SDK candidate packaging, extracted installed consumer, and temporary artifact upload.
Linux validation also closed two portability/verification gaps without weakening product contracts: the official parity example permits only exact AdapterUnavailable at device open on non-Darwin candidates, while Darwin still requires CPU, Metal, and Vulkan; and host-I/O queue verification now distinguishes deterministic FIFO effects from schedule-dependent physical pop retries after lane backpressure.
Linux remains a validated candidate rather than a supported release platform. Its temporary workflow artifact is intentionally not attached to this release; the published SDK asset is Darwin arm64 only.
Assets
rund-sdk-1.0.2-darwin-arm64.tar.gzrund-sdk-1.0.2-darwin-arm64.sha256rund-verify
Darwin SDK SHA-256: 8ad23657f437f9afd7e3a74c2190f864027232f5d5314bbba6a2305f8254f6a4