Read the evidence grade first
The target engine comparison by language defines every engine this campaign aims to measure. The separate coverage record says which results have passed their gates. Only S5 pass on all four canonical flows is eligible for a report-grade full-engine comparison. S5 diag, preflight, smoke, non-parity and not-run rows are visible context, not speed claims. A network floor is not a FIX engine.
C++ · C · Java · .NET · Rust · Go
This table is rendered from the same LibHFT source data as those two Markdown documents, at revision 86263971fa08. Download the complete machine-readable status →
C++
| Engine | Kind | Licence | Codec target | Codec status | Full target | Full status | NOS → ER | Market data | MD → order → ER | Tick → trade | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| tcp-ping-pong-cpp | floor | - | n/a | n/a | n/a | network floor | — | — | — | — | network floor: the RTT before any FIX processing |
| libhft-cpp (C++) | libhft | libhft | required | implemented | required | S5 pass 4/4 | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | |
| quickfix_cpp | engine | QuickFIX SL 1.0 | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · non-parity | S5 diag · non-parity | S5 diag · non-parity | |
| nexusfix | engine | MIT | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | pinned to untagged upstream snapshot ffa8b0a; v1.0.0 lacks the public engine headers |
| fix8 | engine | LGPL-3.0 | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | D/8/depth-10 W full-message codec; generated benchmark dictionary; 3/3 mutation probes passed; public codec admission recorded 2026-10-02 |
| llfix | engine | MIT | admission | partial | required | blocked | blocked | blocked | blocked | blocked | public encoder only: D/8/depth-10 W; cold field/framing checks passed; no receive parser; adapter ready; retained session, store/recovery and host evidence missing |
| hffix | codec | BSD-2-Clause-style | required | implemented | n/a | codec only | — | — | — | — | |
| fixpp | codec | MIT | required | implemented | n/a | codec only | — | — | — | — | |
| robaho_cpp_fix_codec | codec | none | excluded | excluded | n/a | codec only | — | — | — | — | no licence at 4a95e7c: Stage 2 adapter removed; archived timings withheld; no tested session endpoint |
| openfix | engine | none | excluded | excluded | excluded | blocked | blocked | blocked | blocked | blocked | no licence; Bazel-only; gnu++23 |
| robaho_cpp_fix_engine | engine | unknown | excluded | excluded | excluded | blocked | blocked | blocked | blocked | blocked | upstream build fails; licence unknown |
C
| Engine | Kind | Licence | Codec target | Codec status | Full target | Full status | NOS → ER | Market data | MD → order → ER | Tick → trade | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| libtrading | engine | BSD-2-Clause | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · non-parity | S5 diag · non-parity | S5 diag · non-parity | public numeric-tag parser/unparser; depth-10 W requires the existing 128-field capacity patch; upstream long dormant |
Java
| Engine | Kind | Licence | Codec target | Codec status | Full target | Full status | NOS → ER | Market data | MD → order → ER | Tick → trade | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| tcp-ping-pong-java | floor | - | n/a | n/a | n/a | network floor | — | — | — | — | network floor: the RTT before any FIX processing |
| libhft-java-pure (Java Pure) | libhft | libhft | required | implemented | required | S5 pass 4/4 | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | |
| libhft-java-jni (Java/JNI) | libhft | libhft | required | implemented | required | S5 pass 4/4 | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | |
| philadelphia | engine | Apache-2.0 | required | implemented | required | S5 pass 4/4 | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | |
| philadelphia-fast | engine | Apache-2.0 | n/a | n/a | required | S5 pass 4/4 | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | a transport configuration of philadelphia, not a separate codec |
| crossfix | engine | commercial, licensed | excluded | excluded | conditional | S5 pass 4/4 | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | its obfuscated buffer API cannot be reset and reparsed fairly; CrossFIX 1.6; 2.0 is not headline-grade; licensed installation only |
| quickfixj | engine | QuickFIX SL 1.0 | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | holds 750 msg/s; misses the contract rate |
| artio | engine | Apache-2.0 | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | source-owned D/8/W dictionary generation; retained host smoke/parity required; next run pinned at upstream 0.182 |
| falcon | engine | BSD-2-Clause | admission | partial | n/a | S3 smoke 1/4 | S3 smoke · canonical | unsupported | unsupported | unsupported | D and 8 only: no V/W/X market-data types; no market-data messages, so N/A for the four flows |
.NET
| Engine | Kind | Licence | Codec target | Codec status | Full target | Full status | NOS → ER | Market data | MD → order → ER | Tick → trade | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| tcp-ping-pong-net | floor | - | n/a | n/a | n/a | network floor | — | — | — | — | network floor: the RTT before any FIX processing |
| libhft-dotnet-managed (.NET Pure) | libhft | libhft | required | implemented | required | S5 pass 4/4 | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | SCAN mlx5 DAC S5 pass 4/4; HP Solarflare repeat pending |
| libhft-dotnet-native (.NET Native) | libhft | libhft | required | implemented | required | S5 pass 4/4 | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | S5 pass · canonical | SCAN mlx5 DAC S5 pass 4/4; HP Solarflare repeat pending |
| quickfix_n | engine | QuickFIX SL 1.0 | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | SCAN mlx5 DAC S5 diagnostic 4/4: canonical wire, but report rate below 10k/s |
| fixantenna_net | engine | Apache-2.0 | admission | implemented | admission | S5 diag 4/4 | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | public RawFixUtil/Message codec; source pinned ff38f51; stage-2 parity passed; SCAN mlx5 DAC S5 diagnostic 4/4: canonical wire, but report rate below 10k/s |
Rust
| Engine | Kind | Licence | Codec target | Codec status | Full target | Full status | NOS → ER | Market data | MD → order → ER | Tick → trade | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| tcp-ping-pong-rust | floor | - | n/a | n/a | n/a | network floor | — | — | — | — | closed-loop TCP RTT before FIX processing; bench/rust/ping-pong |
| libhft-rust-pure (Rust) | libhft | libhft | required | implemented | required | S4 diag 4/4 | S4 diag · canonical | S4 diag · canonical | S4 diag · canonical | S4 diag · canonical | canonical four-flow two-process localhost diagnostics; physical Stage-5 integration pending |
| libhft-rust-native (Rust over the C ABI) | libhft | libhft | parked | parked | parked | parked | — | — | — | — | parked 2026-09-11; parked 2026-09-11 |
| dfx | engine | MPL-2.0 | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · non-parity | S5 diag · non-parity | S5 diag · non-parity | derived from QuickFIX/n; market data needs the exact ten-level contract |
| fixer_rs | engine | Apache-2.0 | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · non-parity | S5 diag · non-parity | S5 diag · non-parity | a port of QuickFIX/Go; market data needs the exact ten-level contract |
| truefix | engine | Apache-2.0 or MIT | required | implemented | admission | S4 diag 4/4 | S4 diag · canonical | S4 diag · canonical | S4 diag · canonical | S4 diag · canonical | canonical four-flow Stage 4 diagnostics with V/W dictionary overlay; mixed-flow rate fails and tick stability warns; Stage 5 pending |
| nanofix | engine | MIT | required | implemented | admission | S4 diag 4/4 | S4 diag · canonical | S4 diag · canonical | S4 diag · canonical | S4 diag · canonical | canonical four-flow two-process Stage 4 medium diagnostics pass with verified admin observer overlay; physical Stage 5 pending |
| ferrumfix | codec | Apache-2.0 or MIT | required | implemented | n/a | codec only | — | — | — | — | through the pinned v0.7.0 shim |
Go
| Engine | Kind | Licence | Codec target | Codec status | Full target | Full status | NOS → ER | Market data | MD → order → ER | Tick → trade | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| quickfix_go | engine | QuickFIX SL 1.0 | required | implemented | required | S5 diag 4/4 | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | S5 diag · canonical | cross-runtime anchor: libhft has no Go flavour |
Latest qualified codec report
The 3 October 2026 converted-values-v2 campaign admits 25 adapters, 320 isolated field-work probes and 554 operation rows. It replaces the historical parser rankings with complete checked converted-value work.
Per-language top-five CDFs and full percentile tables → · Full qualified source report →
Retained host reports
These are historical committed host reports, not the new codec ranking above. Earlier parse timings do not establish the corrected field-work contract. Each report carries its own workload, profile and validity notes; rows from different hosts, rates or stages must not be merged into one ranking.
- microbench-matrix-beelink2.html
- microbench-matrix-hp.html
- microbench-matrix-scan.html
- latency-matrix-beelink2.html
- latency-matrix-hp.html
- latency-matrix-scan.html
- latency-matrix-hp-open-v4.html
- latency-matrix-scan-open-v4.html
- microbench-quickfix-go-beelink2.html
- microbench-quickfix-go-hp.html
- microbench-quickfix-go-scan.html
Browse every committed benchmark file on Atrekes → · View the source tree at this revision →