Rename init-0.4th..init-9.4th to workload-0.4th..workload-9.4th; fix stale WL-HI/WL-LO doc
These are alternate boot personality capsules, not files doe.4th dispatches from -- confirmed by reading doe.4th itself (it generates its own synthetic workload internally, DOE-WORK) and mkcapsule.c (only the exact filename "init.4th" is special-cased as the active MAMA_INIT capsule). "workload-N.4th" names them for what they are without colliding with that reserved name. Renamed the 10 files (git mv, preserving history) and their own self-referential header comments (also fixed a pre-existing typo, "init-4.th" -> "workload-4.4th"), updated capsules/README.md, capsules/MANIFEST.md (21 references), .claude/CLAUDE.md, and a tools/mkcapsule.c comment. Also fixed experiments/bare_metal/README.md's "Adding a Custom Workload Capsule" section, discovered stale while doing this rename: it documented a WL-HI/WL-LO dispatch table and a wl_id CSV column that don't exist anywhere in the current capsules/ tree or doe.4th's own CSV header -- corrected to describe what's actually there (no pluggable workload dispatch; a custom workload is run by substituting it in as the boot's own init.4th). Verified: mkcapsule --lint clean (35 files, 0 violations), all 3 architectures build with zero new warnings, amd64 boots to zuse)ok> with an unchanged dict_hash/capsule_hash from every prior boot this session (0xc8f4b09e36f4fc4a / 0x1ef4939ed32ec1e6) and zero faults. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EXieurDfDSsDFdnSyusuWo
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
71bcb72a59
commit
5c1b31669e
@@ -122,8 +122,15 @@ There are two roles:
|
||||
| **Workload capsule** | DoE machinery | Provides a computational task to time |
|
||||
|
||||
`init.4th` is the Mama VM's init capsule — executed exactly once at kernel
|
||||
boot. The numbered files (`init-0.4th` … `init-9.4th`) and the L8 variant
|
||||
files (`init-l8-*.4th`) are workload capsules used by the DoE.
|
||||
boot, and the only file `mkcapsule` special-cases by exact filename as the
|
||||
active `MAMA_INIT` capsule. The numbered files (`workload-0.4th` …
|
||||
`workload-9.4th`) and the L8 variant files (`init-l8-*.4th`) are alternate
|
||||
personality capsules, not a workload dispatched by `doe.4th`'s own DoE —
|
||||
`doe.4th` generates its own synthetic arithmetic workload internally
|
||||
(`DOE-WORK`) and has no pluggable per-workload dispatch table today. To
|
||||
exercise one of the numbered capsules' own workload, substitute it in as
|
||||
the boot's `init.4th` (e.g. `cp capsules/workload-3.4th capsules/init.4th`
|
||||
before building) rather than wiring it into `doe.4th`.
|
||||
|
||||
---
|
||||
|
||||
@@ -177,7 +184,7 @@ Convention used in this repository:
|
||||
|-------|----------|
|
||||
| 2048–2099 | init.4th (Mama VM boot sequence) |
|
||||
| 2100–2199 | doe.4th (DoE machinery) |
|
||||
| 3000–3999 | Workload capsules (init-0 … init-9, init-l8-*) |
|
||||
| 3000–3999 | Reserved for user-defined workload capsules (see below) |
|
||||
| 4000+ | User-defined capsules |
|
||||
|
||||
---
|
||||
@@ -206,45 +213,28 @@ RUN-MY-WORKLOAD
|
||||
The last line should execute the workload so `EXEC` runs it immediately when
|
||||
the capsule is loaded.
|
||||
|
||||
**Step 2 — Wire it into the DoE.**
|
||||
**Step 2 — Run it.**
|
||||
|
||||
Open `capsules/doe.4th` and add your capsule to the workload dispatch table.
|
||||
Find `WL-HI` (Block 2057) and replace one of the existing entries, or extend
|
||||
the range:
|
||||
|
||||
```forth
|
||||
Block 2057
|
||||
: WL-HI ( n -- c-addr u )
|
||||
CASE
|
||||
0 OF S" init-8.4th" ENDOF
|
||||
1 OF S" init-9.4th" ENDOF
|
||||
2 OF S" init-l8-diverse.4th" ENDOF
|
||||
3 OF S" init-l8-omni.4th" ENDOF
|
||||
4 OF S" init-l8-stable.4th" ENDOF
|
||||
5 OF S" init-l8-temporal.4th" ENDOF
|
||||
6 OF S" init-l8-transition.4th" ENDOF
|
||||
7 OF S" my-workload.4th" ENDOF ← replace slot 7
|
||||
DROP S" init-0.4th"
|
||||
ENDCASE ;
|
||||
```
|
||||
|
||||
There are 16 workload slots total (0–7 in `WL-LO`, 0–7 in `WL-HI`).
|
||||
The DoE machinery picks workloads blindly from these slots — your capsule
|
||||
will appear in the shuffled run matrix alongside the built-in workloads.
|
||||
|
||||
**Step 3 — Run the experiment.**
|
||||
`doe.4th` has no pluggable workload dispatch table today — its own
|
||||
factorial (entropy/CV/temporal-decay/stability × reps) drives a single
|
||||
self-contained synthetic workload (`DOE-WORK`, Block 2103), not a file
|
||||
picked from a list. To measure your own workload's physics behavior
|
||||
instead, run it standalone as the boot's own capsule rather than trying
|
||||
to wire it into `doe.4th`'s factorial:
|
||||
|
||||
```bash
|
||||
cp capsules/my-workload.4th capsules/init.4th # substitutes it in
|
||||
make -f Makefile.starkernel ARCH=amd64 clean qemu
|
||||
```
|
||||
|
||||
Your workload's heartbeat rows will appear in the CSV under whatever
|
||||
`CURR-WL` index maps to `my-workload.4th`. Match by the `DOE-RUN` marker
|
||||
lines in the CSV:
|
||||
(`mkcapsule` special-cases the exact filename `init.4th` as the one
|
||||
capsule flagged `MAMA_INIT` and loaded at boot — this is genuinely a
|
||||
substitution, not a selection from a list, so restore the real `init.4th`
|
||||
afterward, e.g. `git checkout capsules/init.4th`.)
|
||||
|
||||
```
|
||||
DOE-RUN,run_id,cfg,wl_id,rep
|
||||
```
|
||||
Your workload's heartbeat rows will appear in the CSV the same way any
|
||||
boot's do — match by the `DOE-RUN` marker lines described below, once your
|
||||
capsule's own trial-loop word emits one the same way `doe.4th`'s does.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user