# QuickFIX/Go distribution-toolchain validation — 2026-09-11

This is a focused Stage-2 codec run to validate the distribution-provided Go
toolchains after removing the obsolete user-local Go/Rust installs. It is **not**
a replacement for the 19-engine microbench campaign, and its hosts are not a
matched-hardware ranking set.

## Run contract

| Item | Value |
|---|---|
| Engine | `quickfix_go` (QuickFIX/Go) only |
| libhft checkout | `a908057` |
| Measured / warm-up iterations | 50,000 / 5,000 |
| Parity probes | 3/3 pass per host: `extract_8`, `extract_w`, `light_w` |
| Fixtures | `D` NewOrderSingle, `8` ExecutionReport, `W` depth-20 MarketDataSnapshot |

Each negative probe preserved FIX framing while changing field data. A pass
means QuickFIX/Go rejected the stale light/full field-work hash.

## Installed Go toolchain and report

| Host | Go | Parity-audited report |
|---|---|---|
| Beelink2 | `go1.26.0 linux/amd64` | [HTML](microbench-quickfix-go-beelink2.html) |
| HP | `go1.26.7 (Red Hat 1.26.7-1.el9_8) linux/amd64` | [HTML](microbench-quickfix-go-hp.html) |
| Scan | `go1.26.7 (Red Hat 1.26.7-1.el9_8) linux/amd64` | [HTML](microbench-quickfix-go-scan.html) |

## Headline p50 (ns)

| Host | D parse | D extract | D build | 8 parse | 8 extract | 8 build | W parse | W extract | W build |
|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|
| Beelink2 | 1,525 | 1,639 | 4,744 | 2,073 | 2,521 | 5,585 | 18,732 | 17,598 | 27,201 |
| HP | 1,860 | 1,898 | 7,485 | 2,236 | 2,873 | 8,790 | 18,500 | 19,745 | 34,871 |
| Scan | 2,611 | 2,660 | 10,496 | 3,152 | 4,022 | 12,332 | 25,013 | 28,323 | 53,391 |

The host-local HTML pages contain the sortable matrix, all 25 operation rows,
and retained p90–p99.99 summaries. Do not combine the rows into an engine
ranking: Beelink2 is WSL2 and the three hosts were not run under a matched
isolation/frequency contract. The full campaign must rerun all 19 adapters with
`--parity-audit` on the selected quiet benchmark box.
