Repository navigation
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
CPU table for
Median -9.29%, slower 0/7, not flagged.
Median -2.08%, slower 3/7, not flagged.
|
|
Review of head What I checked:
Asks:
CPU pairs (our run).
Nothing is flagged (new slower in at least 6 of 7 pairs, or ranges that don't overlap). Instructions and console are identical in every run. No RV32 workload moves outside the noise: c3-hello −0.4%, c6-hello −0.7%, c6-wifi-station 0.0%, p4-hello −0.4%, with new slower in at most 2 of 7 pairs. Your C6 starter gain is on a workload outside the repo, so this run neither confirms nor contradicts it. s3-hello's +4.2% is one 0.01 s tick on a 0.24 s median, in 3 of 7 pairs, on an Xtensa control this PR doesn't touch. JSON below. The only edit is the ROM directory written as 335-483777b9-04f07602.json{
"started": "2026-11-01T23:17:37+0100",
"pairs": 7,
"workloads": {
"c3-hello": {
"command": [
"esp32sim-c3",
"--boot",
"rom",
"--rom",
"$ESP32SIM_ROM_DIR/esp32c3_rev3_rom.elf",
"--flash-mb",
"4",
"--bootloader",
"web/wasm/fw/public/c3-hello-bootloader.bin",
"--ptable",
"web/wasm/fw/public/c3-hello-ptable.bin",
"--app",
"web/wasm/fw/public/c3-hello_world.bin",
"--max-seconds",
"30",
"--no-dump"
],
"load_before": [
4.87890625,
7.1953125,
8.05126953125
],
"runs": [
{
"user_s": 2.5,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "new",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 2.49,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "base",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 2.58,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "base",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 2.49,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "new",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 2.51,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "new",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 2.49,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "base",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 2.5,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "base",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 2.5,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "new",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 2.46,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "new",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 2.51,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "base",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 2.61,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "base",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 2.45,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "new",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 2.5,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "new",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 2.51,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "base",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 2.48,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "base",
"pair": "pair7",
"order": "B->N"
},
{
"user_s": 2.74,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd",
"exit": 0,
"side": "new",
"pair": "pair7",
"order": "B->N"
}
],
"load_after": [
5.29150390625,
7.01123046875,
7.943359375
],
"summary": {
"base_median_s": 2.51,
"new_median_s": 2.5,
"change_pct": -0.4,
"base_range_s": [
2.48,
2.61
],
"new_range_s": [
2.45,
2.74
],
"new_slower_pairs": 2,
"identical_work_and_console": true,
"insns": [
4800000000
],
"console_sha256": "3b9d8d3eb053a97670f11896674e70ffc968fd7a803cb2cdc5c051414af94efd"
}
},
"c6-hello": {
"command": [
"esp32sim-c6",
"--boot",
"rom",
"--rom",
"$ESP32SIM_ROM_DIR/esp32c6_rev0_rom.elf",
"--flash-mb",
"4",
"--bootloader",
"web/wasm/fw/public/c6-hello-bootloader.bin",
"--ptable",
"web/wasm/fw/public/c6-hello-ptable.bin",
"--app",
"web/wasm/fw/public/c6-hello_world.bin",
"--max-seconds",
"30",
"--no-dump"
],
"load_before": [
5.29150390625,
7.01123046875,
7.943359375
],
"runs": [
{
"user_s": 1.5,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "new",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 1.53,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "base",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 1.58,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "base",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 1.56,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "new",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 1.56,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "new",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 1.58,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "base",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 1.53,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "base",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 1.54,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "new",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 1.51,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "new",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 1.54,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "base",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 1.57,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "base",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 1.53,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "new",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 1.64,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "new",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 1.51,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "base",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 1.55,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "base",
"pair": "pair7",
"order": "B->N"
},
{
"user_s": 1.52,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad",
"exit": 0,
"side": "new",
"pair": "pair7",
"order": "B->N"
}
],
"load_after": [
5.06005859375,
6.81640625,
7.845703125
],
"summary": {
"base_median_s": 1.55,
"new_median_s": 1.54,
"change_pct": -0.65,
"base_range_s": [
1.51,
1.58
],
"new_range_s": [
1.51,
1.64
],
"new_slower_pairs": 2,
"identical_work_and_console": true,
"insns": [
4800000000
],
"console_sha256": "bd69fbb9ac5c677337a293c1ec0ff7941306eec82c499290917a7c42360f86ad"
}
},
"c6-wifi-station": {
"command": [
"esp32sim-c6",
"--rom",
"$ESP32SIM_ROM_DIR/esp32c6_rev0_rom.elf",
"--boot",
"rom",
"--flash-mb",
"4",
"--console",
"usb",
"--no-dump",
"--bootloader",
"web/wasm/fw/public/c6-wifi-bootloader.bin",
"--ptable",
"web/wasm/fw/public/c6-wifi-ptable.bin",
"--app",
"web/wasm/fw/public/c6-wifi_station.bin",
"--wifi",
"ssid=esp32sim,psk=esp32sim-pass",
"--net",
"none",
"--max-seconds",
"14"
],
"load_before": [
5.06005859375,
6.81640625,
7.845703125
],
"runs": [
{
"user_s": 0.99,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "new",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 1.03,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "base",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 1.01,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "base",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 1.02,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "new",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 1.03,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "new",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 1.03,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "base",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 1.02,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "base",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 1.0,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "new",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 1.01,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "new",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 1.03,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "base",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 1.02,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "base",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 1.02,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "new",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 1.0,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "new",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 1.04,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "base",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 1.02,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "base",
"pair": "pair7",
"order": "B->N"
},
{
"user_s": 1.02,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601",
"exit": 0,
"side": "new",
"pair": "pair7",
"order": "B->N"
}
],
"load_after": [
4.90478515625,
6.6943359375,
7.78369140625
],
"summary": {
"base_median_s": 1.02,
"new_median_s": 1.02,
"change_pct": 0.0,
"base_range_s": [
1.01,
1.04
],
"new_range_s": [
1.0,
1.03
],
"new_slower_pairs": 1,
"identical_work_and_console": true,
"insns": [
2240000000
],
"console_sha256": "75b99af7d413ac5dcfd7d610c3f7360b004460e9d14493416b6c5f4533690601"
}
},
"s3-hello": {
"command": [
"esp32sim",
"--boot",
"rom",
"--rom",
"$ESP32SIM_ROM_DIR/esp32s3_rev0_rom.elf",
"--board",
"none",
"--bootloader",
"web/wasm/fw/public/hello-bootloader.bin",
"--ptable",
"web/wasm/fw/public/hello-ptable.bin",
"--app",
"web/wasm/fw/public/hello_world.bin",
"--max-seconds",
"30",
"--no-dump"
],
"load_before": [
4.90478515625,
6.6943359375,
7.78369140625
],
"runs": [
{
"user_s": 0.25,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "new",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 0.25,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "base",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 0.24,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "base",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 0.25,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "new",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 0.24,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "new",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 0.25,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "base",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 0.24,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "base",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 0.24,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "new",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 0.26,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "new",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 0.24,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "base",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 0.25,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "base",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 0.25,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "new",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 0.24,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "new",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 0.25,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "base",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 0.24,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "base",
"pair": "pair7",
"order": "B->N"
},
{
"user_s": 0.25,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3",
"exit": 0,
"side": "new",
"pair": "pair7",
"order": "B->N"
}
],
"load_after": [
5.712890625,
6.83203125,
7.82568359375
],
"summary": {
"base_median_s": 0.24,
"new_median_s": 0.25,
"change_pct": 4.17,
"base_range_s": [
0.24,
0.25
],
"new_range_s": [
0.24,
0.26
],
"new_slower_pairs": 3,
"identical_work_and_console": true,
"insns": [
11990305,
6798164
],
"console_sha256": "04d4912461cbf19e2d2af0a61885991156d7ebdde8641f2d64d9b219b5ff47d3"
}
},
"pocket-tank": {
"command": [
"esp32sim",
"--boot",
"rom",
"--rom",
"$ESP32SIM_ROM_DIR/esp32s3_rev0_rom.elf",
"--board",
"waveshare-amoled18-v2",
"--flash-mb",
"16",
"--psram-mb",
"8",
"--bootloader",
"web/wasm/fw/public/pocket-tank-bootloader.bin",
"--ptable",
"web/wasm/fw/public/pocket-tank-ptable.bin",
"--app",
"web/wasm/fw/public/pocket-tank.bin",
"--flash-at",
"0x290000=web/wasm/fw/local/model_q4.bin",
"--max-seconds",
"8",
"--no-dump"
],
"load_before": [
5.712890625,
6.83203125,
7.82568359375
],
"runs": [
{
"user_s": 7.4,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "new",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 7.45,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "base",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 7.4,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "base",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 7.35,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "new",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 7.42,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "new",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 7.37,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "base",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 7.35,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "base",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 7.35,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "new",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 7.42,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "new",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 7.34,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "base",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 7.39,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "base",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 7.34,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "new",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 7.31,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "new",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 7.34,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "base",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 7.41,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "base",
"pair": "pair7",
"order": "B->N"
},
{
"user_s": 7.3,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8",
"exit": 0,
"side": "new",
"pair": "pair7",
"order": "B->N"
}
],
"load_after": [
5.06884765625,
6.2158203125,
7.4443359375
],
"summary": {
"base_median_s": 7.37,
"new_median_s": 7.35,
"change_pct": -0.27,
"base_range_s": [
7.34,
7.41
],
"new_range_s": [
7.3,
7.42
],
"new_slower_pairs": 2,
"identical_work_and_console": true,
"insns": [
1115772031,
946151715
],
"console_sha256": "1d1d57f7c150bcaf169c57bd1f050f5b86cb5550b121480254bcaa616d201bd8"
}
}
},
"finished": "2026-11-01T23:21:04+0100"
}335-483777b9-04f07602-extra.json{
"started": "2026-11-01T23:26:13+0100",
"pairs": 7,
"workloads": {
"p4-hello": {
"command": [
"esp32sim-p4",
"--rom",
"$ESP32SIM_ROM_DIR/esp32p4_rev0_rom.elf",
"--boot",
"rom",
"--flash-mb",
"2",
"--bootloader",
"web/wasm/fw/public/p4-hello-bootloader.bin",
"--ptable",
"web/wasm/fw/public/p4-hello-ptable.bin",
"--app",
"web/wasm/fw/public/p4-hello_world.bin",
"--max-seconds",
"30",
"--no-dump"
],
"load_before": [
4.970703125,
5.33544921875,
6.6337890625
],
"runs": [
{
"user_s": 15.84,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "new",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 15.71,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "base",
"pair": "warmup",
"order": "N->B"
},
{
"user_s": 15.47,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "base",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 15.41,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "new",
"pair": "pair1",
"order": "B->N"
},
{
"user_s": 15.56,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "new",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 15.65,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "base",
"pair": "pair2",
"order": "N->B"
},
{
"user_s": 15.52,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "base",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 15.64,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "new",
"pair": "pair3",
"order": "B->N"
},
{
"user_s": 15.61,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "new",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 15.79,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "base",
"pair": "pair4",
"order": "N->B"
},
{
"user_s": 15.51,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "base",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 15.49,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "new",
"pair": "pair5",
"order": "B->N"
},
{
"user_s": 15.52,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "new",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 15.62,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "base",
"pair": "pair6",
"order": "N->B"
},
{
"user_s": 15.81,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "base",
"pair": "pair7",
"order": "B->N"
},
{
"user_s": 15.56,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5",
"exit": 0,
"side": "new",
"pair": "pair7",
"order": "B->N"
}
],
"load_after": [
5.6591796875,
5.4609375,
6.34375
],
"summary": {
"base_median_s": 15.62,
"new_median_s": 15.56,
"change_pct": -0.38,
"base_range_s": [
15.47,
15.81
],
"new_range_s": [
15.41,
15.64
],
"new_slower_pairs": 1,
"identical_work_and_console": true,
"insns": [
10800000000,
0
],
"console_sha256": "3d24ec4ac730ed8f8843eda1997dea9cf115707ce7832196076a8a6730842be5"
}
}
},
"finished": "2026-11-01T23:30:26+0100"
}Merge after 1 and 2, ideally 3 and 4 as well. |
|
Thanks for this. The code change is two attributes ( Conflict. Only should: evidence size. Almost all of the +26k lines are two per-function hash tables: should: timing coverage. The change also alters C3 and P4 codegen (and WASM size grows by 1.67%), but only C6 was timed. CONTRIBUTING's Speed section asks for low. The differential test never sets Interaction with #356 (decoded RV32 blocks). That PR rewrites the same Happy to merge once the experiments row is rebased and the evidence is trimmed. The timing additions can come in the same push. |
What and why
On the C3 and C6 (and P4, same core) the result-only run loop calls the RV32 interpreter's
step_outcomeout of line for every instruction, and that call builds the full observing facts (fetch bytes, length, kind, control) that the result-only caller then throws away. Inlining it lets the compiler drop those facts in the loop.dd72abaa,riscv-rv32/src/exec.rs, +3/−1):#[inline(always)]onstep_outcome,#[inline]→#[inline(always)]onexec_insn, one comment. No change to fetch, retirement, cycles, traps, IRQs, device accesses or budgets; no new state or API.riscv-rv32/tests/result_only.rs: observing step, result-only step and one-instruction run compared field by field on all CPU state and RAM.docs/experiments.mdand the receipt indocs/evidence/c6-step-facts/(CPU table added in483777b9, docs only).Based on main
04f07602; no stack dependency. Against the other open PRs it conflicts only in thedocs/experiments.mdrow append (#290).CPU
Measured on
dd72abaaagainst main04f07602(2026-11-01, 1 warmup + 7 alternating pairs, user CPU at 0.01 s resolution, load 1.65–2.33, console SHA-256 identical within each workload):Per-pair tables are in the receipt. Earlier, on old main
bd0dbd1awith a retirement-probe build: starter −10.41% (0/7), hello +0.00% (3/7).Verification
result_only.rs(release): 49,152 compressed encodings, 16,384 deterministic full-width words and 77 directed instruction/state combinations; passes on main too (it's a preservation test, not a speed oracle).dd72abaa: native and WASM Clippy-D warnings; ROM workspace tests 1,460 passed / 0 failed; plain 1,396 passed / 95 ignored; WASM build and eight demos (hello c3-hello c6-hello c6-energy-scan c6-contiki c6-contiki-net c6-rpl-net panel); evidence privacy check;git diff --checkclean.04f07602(untimed, native release--bins, ROM boot, 10 emulated s). Scheduler work, IRQ lines/sources and console from the unprobed binaries; retirement from a separate post-run reporting build whose selected hot symbols match the unprobed one (128/128 main, 130/130 PR):6dd87f0ce7e0…d5d1f41f315b…1e6395a895a9…Machine<C3/C6>::run_unmodeledchange layout as the step moves into them (C3 1,060 → 1,040, C6 1,065 → 1,058 static ops); the outlined C6step_outcome(1,853 ops) is gone. Bus, IRQ, decode, Xtensa and the classic/S3 run loops are identical.step_outcomeleft (main has five, called from ten sites). Size 4,065,319 → 4,133,209 bytes (+1.67%),gzip -n1,142,241 → 1,165,704 (+2.05%).Limits
The CPU table covers C6 only; C3 and P4 share the changed loop layout and are not timed. C6 hello (~0.47 s/run) sits near the 0.01 s timer resolution. Retirement is not read from the timed binary. WASM gets bigger and is not timed here; no browser claim.