Date: 2026-03-02
Machine: A1 (216.81.248.152), NVIDIA A100-SXM4-80GB, PyTorch 2.10.0+cu126, CUDA 12.6
Code: monarch repo, commit aa3bb6f (token-local swap-FFN state)
Checkpoints: Trained baseline and hybrid1 checkpoints from s3://voltcode-artifacts-17f9c348/runs/monarch-swap-ffn/20260302/
Results: s3://voltcode-artifacts-17f9c348/runs/swap-ffn-bench/a1-compiled-20260302/
Detailed execution trace comparing the fused Triton kernel path vs the unfused PyTorch/cuBLAS path for Swap-FFN decode inference.
Config: d_model=1024, d_ff=4096, core_count=512, n_events=8, k_ffn=2, d_router=64, collapse_k=8, collapse_r=224
Hardware: A100-SXM4-80GB, 108 SMs, 40 MB L2 cache
| console.log("Verification test"); |
| console.log("Hello from MCP server!"); |
| |pass &noun | |
| :- %k %lard %base !< shed:khan | |
| %+ slap (slop .^(vase %ca %/lib/strandio/hoon) !>(..zuse)) | |
| !, *hoon | |
| =* strandio - | |
| =, strand=strand:rand | |
| ^- shed:khan | |
| =/ m (strand ,vase) | |
| |- ^- form:m | |
| ;< =bowl:rand bind:m get-bowl:strandio |
| => | |
| |% | |
| +$ ulam | |
| $~ [%coin *coin] | |
| :: leaves | |
| :: | |
| $% [%coin =coin] :: atom, noun, or compound coin | |
| [%path =pith] :: hoon path syntax | |
| [%page =mark noun=*] :: %foo|bar, bar is coin blob | |
| :: |
- Apps that use JSON will need to drop compatibility for 414 and older Kelvins by default. The old
%jsonmark from 414 will not compile on 413, and this will not be caught at build time.- Make sure the
%jsonmark file in your app desk compiles on 413, and test your%jsonmark conversions to make sure they don't crash at runtime due to this change. - The json (de)serialization interface changed and is only backwards-compatible at the outermost layer (
+en-json,+de-json).apex:de-json:html, part of the JSON parser internals, isn't there any more.
- Make sure the
- A number of arms and new tasks and gifts were added to Lull and Zuse.
- These should not cause any issues unless your app code was expecting something very specific, such as if you were doing metaprogramming on Lull or Zuse (e.g. Pyro).
- The
%gallscry namespace has been changed:%gu, to check if an app is an running, has a new path format:- old:
.^(? %gu /=dojo=) - new:
.^(? %gu /=dojo=/$)
- old:
- Similar changes were made
| /+ default-agent, verb, dbug | |
| :: | |
| |% | |
| +$ poke | |
| $% [%grow =case =spur =noun] | |
| [%tomb =case =spur] | |
| [%cull =case =spur] | |
| == | |
| -- | |
| :: |
This Kelvin requires more work to update than some previous Kelvins because the $foam type was deleted from Lull. This means if your app imports the full base-dev folder as a dependency the way most apps do and your app imports /sur/hood/hoon (as a lot of apps do), you will need to update that dependency for 414 by copying in the most recent files, and also drop support for older Kelvins by deleting their entries from /sys/kelvin and replacing them all with just [%zuse 414]. If your app does not have any files that import /sur/hood/hoon with Ford runes, you might be able to support 414 and 415 without modifying code -- if so, please test your app to be sure.
Note that Clay can still handle later commits targeted at 415, so as an app dev, you can maintain both 414 and 415 -- the constraint is that each commit to your app desk can only support one or the other if you are using the standard /sur/hood/hoon. Supporting both in the same stream of commits to
- yes to epoch system
- each epoch has a version file, an initial snapshot, and an event log database file
- we will need to add code to vere to find the latest epoch folder before loading snapshot and event log
- there are two separable operations involved in truncation:
- create new epoch, by copying snapshot into a new epoch folder, creating a new version file in that folder, and creating a new event log database file in that folder whose events db is empty and whose metadata db contains entries copied from the previous epoch's metadata db
- a "keep only N recent epochs" command, which removes all epoch folders older than that