一键导入
habu-host-profiles
Use when timing the Habu native test suite on a supported host class, comparing host profiles, or setting timing-regression policy.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when timing the Habu native test suite on a supported host class, comparing host profiles, or setting timing-regression policy.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when recovering or refreshing Habu bin/hb, selecting Gforth, validating no-binary bootstrap, or porting bootstrap work to zed/Linux.
Use when running Habu focused tests, the full native gate, timing the gate, or changing gate pool and budget arguments.
Use when building standalone Habu AOT binaries, REPL images, or validating native hb-build behavior.
| name | habu-host-profiles |
| description | Use when timing the Habu native test suite on a supported host class, comparing host profiles, or setting timing-regression policy. |
The test suite auto-detects its host profile by default. Use
--perf-profile NAME only to force a specific profile. Profiles set pool slots,
nested pool slots, and timing budgets. Put manual overrides after
--perf-profile.
Profiles:
macos-arm64-10x2: macOS ARM64 target, --pool-slots 10,
--nested-pool-slots 2, hot and cold --budget-ms 30000,
--wall-budget-ms 35000.jetson-orin-clocks-4x2: Linux target on NVIDIA Jetson with CPUs 0-7
online, --pool-slots 4, --nested-pool-slots 2, hot
--budget-ms 100000, --wall-budget-ms 110000; cold 150000 / 160000.linux-arm64-4x2: generic Linux ARM64 target, --pool-slots 4,
--nested-pool-slots 2, hot --budget-ms 120000; cold 150000.dgx-spark-10x2: Linux target on an NVIDIA DGX Spark (GB10), --pool-slots 10,
--nested-pool-slots 2, hot and cold --budget-ms 30000,
--wall-budget-ms 35000. Detected from the SMBIOS/DMI product family
(/sys/class/dmi/id/product_family contains DGX Spark), since the GB10
exposes no /proc/device-tree/model.The runner's --wall-budget-ms uses its monotonic elapsed test-suite time;
wrap the command with /usr/bin/time -p when exact process wall time matters.
Top-level --pool-slots is capped at 12.
macOS hot profile:
/usr/bin/time -p bin/hb --load test/run.f -- --under bin/hb --timings
macOS cache-fill profile:
/usr/bin/time -p bin/hb --load test/run.f -- --under bin/hb --cold-cache --timings
Jetson/Orin prep:
sudo jetson_clocks --store /tmp/habu-clocks-before.conf || true
for c in 4 5 6 7; do echo 1 | sudo tee /sys/devices/system/cpu/cpu$c/online >/dev/null; done
sudo jetson_clocks
Jetson/Orin hot profile:
/usr/bin/time -p bin/hb --load test/run.f -- --under bin/hb --timings
Jetson/Orin cache-fill profile:
/usr/bin/time -p bin/hb --load test/run.f -- --under bin/hb --cold-cache --timings
DGX Spark (GB10) hot profile (auto-detected):
/usr/bin/time -p bin/hb --load test/run.f -- --under bin/hb --timings
DGX Spark (GB10) cache-fill profile:
/usr/bin/time -p bin/hb --load test/run.f -- --under bin/hb --cold-cache --timings
DGX Spark calibration note: the GB10 has heterogeneous cores — 10 Cortex-X925
performance cores at 3.9GHz (the fixed calibration spin measures 87ms) and 10
Cortex-A725 efficiency cores at 2.8GHz (132ms). The perf verdict brackets each
attempt with a pre-run and a post-run calibration spin and invalidates the
attempt on >10% drift. The spin has zero in-process drift, but the long-lived
gate driver launches on a performance core (pre-cal 87ms) and, while it blocks
waiting on the pool, is migrated onto an efficiency core; its single in-process
post-cal spin then starts there and migrates back mid-spin, reading a blended
~104ms and tripping the drift gate. The runner therefore measures the post-run
calibration in a freshly spawned child (test/cal-spin.f), which the scheduler
places on a performance core again, so pre and post both read ~87ms and the
verdict is admissible. The committed reference is TR-CAL-REF-SPARK-MS = 87.
Do not "fix" a spark drift red by widening the stability threshold.
--cold-cache uses a private per-run cache root and the profile cold budget. It
does not delete the persistent content cache.
Default persistent-cache runs also mark themselves cold if a source change
invalidates HABU_UNDER_TEST or builder cache artifacts during setup.