Stage‑2 codec microbench report
Synthetic in-memory FIX parser/builder benchmark. Generated 2026-09-11T13:11:11Z.
1/1engines compiled and ran
25operation rows
50,000 / 5,000measured / warm-up iterations
3/3mutation parity audit
Beelink2 Linux 6.18.33.2-microsoft-standard-WSL2 x86_64measurement host
Host-local evidence. This page reports one machine and one run. It presents retained summary percentiles only; it is not a high-definition CDF or HdrHistogram report. Do not merge or rank host pages without an explicit matched-hardware/campaign decision.
Field-work parity. All selected negative fixtures were rejected through their field-work checks.
Adapter build and run status
| Engine | Compile | Run | Compile s | Run s | Notes |
|---|---|---|---|---|---|
| quickfix_go | compile-ok | run-ok | 9.958 | 225.404 | — |
Headline p50 matrix nanoseconds; lower is better; click a column heading to sort
| quickfix_go | 1525 | 1639 | 4744 | 2073 | 2521 | 5585 | 18732 | 17598 | 27201 |
|---|
Parity mutation audit
Each probe changes field values while retaining the FIX BodyLength and checksum. A pass means the adapter rejected the stale 9001/9002 value through its own field-work check.
| Engine | Probe | Operation | Fixture | Status | Notes |
|---|---|---|---|---|---|
| quickfix_go | extract_8 | parse_extract | 8 | pass | stale field hash rejected as expected |
| quickfix_go | extract_w | parse_extract | W | pass | stale field hash rejected as expected |
| quickfix_go | light_w | parse_only | W | pass | stale field hash rejected as expected |
All operation summaries
| Engine | Language | Fixture | Operation | N | Mean ns | p50 | p90 | p99 | p99.9 | p99.99 | Max | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| quickfix_go | Go | 0 | parse_extract | 50000 | 2422.3 | 1873 | 3322 | 12400 | 45724 | 148487 | 256603 | — |
| quickfix_go | Go | 0 | parse_only | 50000 | 1564.2 | 1111 | 2151 | 8540 | 50403 | 182960 | 275773 | — |
| quickfix_go | Go | 1 | parse_extract | 50000 | 3571.9 | 1982 | 4892 | 25644 | 142070 | 387123 | 1018803 | — |
| quickfix_go | Go | 1 | parse_only | 50000 | 1356.2 | 1079 | 1804 | 6559 | 25650 | 128447 | 157840 | — |
| quickfix_go | Go | 2 | parse_extract | 50000 | 2694.6 | 1987 | 3926 | 13316 | 58687 | 222644 | 380650 | — |
| quickfix_go | Go | 2 | parse_only | 50000 | 1510.3 | 1169 | 1987 | 7547 | 28124 | 129762 | 259917 | — |
| quickfix_go | Go | 4 | parse_extract | 50000 | 2479.1 | 1967 | 3239 | 11729 | 38715 | 140215 | 312016 | — |
| quickfix_go | Go | 4 | parse_only | 50000 | 1326.3 | 1146 | 1653 | 5215 | 17518 | 54205 | 300380 | — |
| quickfix_go | Go | 5 | parse_extract | 50000 | 2481.8 | 1908 | 3354 | 13064 | 46956 | 191232 | 289556 | — |
| quickfix_go | Go | 5 | parse_only | 50000 | 1589.3 | 1175 | 2029 | 7956 | 39224 | 227340 | 489012 | — |
| quickfix_go | Go | 8 | build_8 | 50000 | 6835.3 | 5585 | 10248 | 24818 | 52271 | 69925 | 136332 | — |
| quickfix_go | Go | 8 | parse_extract | 50000 | 2876.0 | 2521 | 3685 | 9951 | 28485 | 120777 | 209551 | — |
| quickfix_go | Go | 8 | parse_only | 50000 | 2382.6 | 2073 | 3033 | 9675 | 26891 | 130848 | 239599 | — |
| quickfix_go | Go | A | parse_extract | 50000 | 3437.6 | 2031 | 5235 | 21957 | 129634 | 298693 | 881016 | — |
| quickfix_go | Go | A | parse_only | 50000 | 2161.8 | 1296 | 2976 | 12803 | 127937 | 304006 | 855542 | — |
| quickfix_go | Go | D | build_D | 50000 | 5903.2 | 4744 | 8912 | 22546 | 51363 | 96005 | 350832 | — |
| quickfix_go | Go | D | parse_extract | 50000 | 1743.0 | 1639 | 2219 | 5717 | 19780 | 48007 | 65791 | — |
| quickfix_go | Go | D | parse_only | 50000 | 1574.7 | 1525 | 2089 | 5008 | 15550 | 44897 | 224004 | — |
| quickfix_go | Go | W | build_W | 50000 | 28875.2 | 27201 | 44624 | 73483 | 101760 | 144477 | 232829 | — |
| quickfix_go | Go | W | parse_extract | 50000 | 20280.3 | 17598 | 33545 | 61039 | 122377 | 261933 | 592390 | — |
| quickfix_go | Go | W | parse_only | 50000 | 28787.8 | 18732 | 46983 | 177807 | 388814 | 625153 | 839530 | — |
| quickfix_go | Go | X | parse_extract | 50000 | 4961.3 | 4231 | 6940 | 9947 | 41129 | 58009 | 81934 | — |
| quickfix_go | Go | X | parse_only | 50000 | 5824.2 | 5965 | 7609 | 12571 | 44106 | 54219 | 55366 | — |
| quickfix_go | Go | j | parse_extract | 50000 | 2241.6 | 1996 | 2946 | 9308 | 23152 | 66182 | 132988 | — |
| quickfix_go | Go | j | parse_only | 50000 | 1355.4 | 1235 | 1726 | 5345 | 15622 | 37544 | 178340 | — |