This is the Go view of decimal128 as-measured, band by band, with explicit ratios. It opens with the realistic financial-mix (P-fin) headline, then the per-operation band characterization (P-gen) and FMA. In Go, d128 is measured against no alternative — Go has neither an in-language decimal peer nor a libbid fallback, so its rows are d128-only (- in the alt/ratio columns). It is data only — the categories, magnitude profiles, units, and methodology are defined in the Benchmark Key (and, authoritatively, BenchmarkMatrix.md). The cross-port d128 band-shape matrices (all ports, no alternatives) live in Port-Comparison Benchmark Results; the full index of per-language pages is on the Benchmarks hub.
Summary — Ratio Range by Operation
Go has no in-language decimal peer and takes no libbid fallback, so every row on this page is d128-only — there is no alternative to compute a ratio against.
FinMix — realistic financial mix (P-fin)
The headline: one realistic 64-bit financial operation mix — a MIX add/sub stream, mul CP/WP, div CD/WD/ET/PT — ratio = alt / ours (> 1 ⇒ d128 faster). This is the profile closest to real financial code.
arm64 (M3 Pro).
| port | op | cat | profile | arch | mode | ns | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | add | MIX | P-fin | arm64 | thru | 3.21 | - | - | - | Rgosw2 | |
| go | sub | MIX | P-fin | arm64 | thru | 4.13 | - | - | - | Rgosw2 | |
| go | mul | CP | P-fin | arm64 | thru | 1.98 | - | - | - | Rgosw2 | |
| go | mul | WP | P-fin | arm64 | thru | 28.48 | - | - | - | Rgosw2 | |
| go | div | CD | P-fin | arm64 | thru | 37.26 | - | - | - | Rgosw2 | |
| go | div | WD | P-fin | arm64 | thru | 64.24 | - | - | - | Rgosw2 | |
| go | div | ET | P-fin | arm64 | thru | 10.65 | - | - | - | Rgosw2 | |
| go | div | PT | P-fin | arm64 | thru | 6.65 | - | - | - | Rgosw2 |
x86_64 (Intel i9-9880H).
| port | op | cat | profile | arch | mode | ns | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | add | MIX | P-fin | x86_64 | thru | 8.87 | - | - | - | xRgosw2 | |
| go | sub | MIX | P-fin | x86_64 | thru | 11.99 | - | - | - | xRgosw2 | |
| go | mul | CP | P-fin | x86_64 | thru | 4.42 | - | - | - | xRgosw2 | |
| go | mul | WP | P-fin | x86_64 | thru | 59.93 | - | - | - | xRgosw2 | |
| go | div | CD | P-fin | x86_64 | thru | 94.20 | - | - | - | xRgosw2 | |
| go | div | WD | P-fin | x86_64 | thru | 151.90 | - | - | - | xRgosw2 | |
| go | div | ET | P-fin | x86_64 | thru | 29.66 | - | - | - | xRgosw2 | |
| go | div | PT | P-fin | x86_64 | thru | 13.16 | - | - | - | xRgosw2 |
Add — SQ · NQ · MQ · OQ · FQ
Swept 4096-input average per band (bare thru; ns/op = Time/4096 over the shared decimal128-resources/swept/ corpus, byte-identical operands every port). Relational peer table with explicit ratios; the cross-port d128 band-shape matrices are in Port-Comparison Benchmark Results.
arm64 (M3 Pro).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | add | SQss | P-gen | arm64 | thru | 1.54 | - | - | - | Rgosw2 | |
| go | add | SQos | P-gen | arm64 | thru | 5.03 | - | - | - | Rgosw2 | |
| go | add | NQss | P-gen | arm64 | thru | 6.44 | - | - | - | Rgosw2 | |
| go | add | NQos | P-gen | arm64 | thru | 11.20 | - | - | - | Rgosw2 | |
| go | add | MQss | P-gen | arm64 | thru | 11.86 | - | - | - | Rgosw2 | |
| go | add | MQos | P-gen | arm64 | thru | 19.53 | - | - | - | Rgosw2 | |
| go | add | OQss | P-gen | arm64 | thru | 28.60 | - | - | - | Rgosw2 | |
| go | add | OQos | P-gen | arm64 | thru | 37.34 | - | - | - | Rgosw2 | |
| go | add | FQss | P-gen | arm64 | thru | 17.58 | - | - | - | Rgosw2 | |
| go | add | FQos | P-gen | arm64 | thru | 24.02 | - | - | - | Rgosw2 |
x86_64 (Intel i9-9880H).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | add | SQss | P-gen | x86_64 | thru | 3.47 | - | - | - | xRgosw2 | |
| go | add | SQos | P-gen | x86_64 | thru | 9.82 | - | - | - | xRgosw2 | |
| go | add | NQss | P-gen | x86_64 | thru | 12.51 | - | - | - | xRgosw2 | |
| go | add | NQos | P-gen | x86_64 | thru | 17.40 | - | - | - | xRgosw2 | |
| go | add | MQss | P-gen | x86_64 | thru | 20.81 | - | - | - | xRgosw2 | |
| go | add | MQos | P-gen | x86_64 | thru | 34.95 | - | - | - | xRgosw2 | |
| go | add | OQss | P-gen | x86_64 | thru | 51.43 | - | - | - | xRgosw2 | |
| go | add | OQos | P-gen | x86_64 | thru | 78.79 | - | - | - | xRgosw2 | |
| go | add | FQss | P-gen | x86_64 | thru | 32.77 | - | - | - | xRgosw2 | |
| go | add | FQos | P-gen | x86_64 | thru | 40.59 | - | - | - | xRgosw2 |
Subtract — SQ · NQ · MQ · OQ · FQ
Swept 4096-input average per band (bare thru; ns/op = Time/4096 over the shared decimal128-resources/swept/ corpus, byte-identical operands every port). Relational peer table with explicit ratios; the cross-port d128 band-shape matrices are in Port-Comparison Benchmark Results.
arm64 (M3 Pro).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | sub | SQss | P-gen | arm64 | thru | 2.92 | - | - | - | Rgosw2 | |
| go | sub | SQos | P-gen | arm64 | thru | 1.62 | - | - | - | Rgosw2 | |
| go | sub | NQss | P-gen | arm64 | thru | 10.68 | - | - | - | Rgosw2 | |
| go | sub | NQos | P-gen | arm64 | thru | 5.59 | - | - | - | Rgosw2 | |
| go | sub | MQss | P-gen | arm64 | thru | 18.11 | - | - | - | Rgosw2 | |
| go | sub | MQos | P-gen | arm64 | thru | 11.53 | - | - | - | Rgosw2 | |
| go | sub | OQss | P-gen | arm64 | thru | 36.44 | - | - | - | Rgosw2 | |
| go | sub | OQos | P-gen | arm64 | thru | 27.58 | - | - | - | Rgosw2 | |
| go | sub | FQss | P-gen | arm64 | thru | 22.72 | - | - | - | Rgosw2 | |
| go | sub | FQos | P-gen | arm64 | thru | 16.72 | - | - | - | Rgosw2 |
x86_64 (Intel i9-9880H).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | sub | SQss | P-gen | x86_64 | thru | 8.78 | - | - | - | xRgosw2 | |
| go | sub | SQos | P-gen | x86_64 | thru | 3.88 | - | - | - | xRgosw2 | |
| go | sub | NQss | P-gen | x86_64 | thru | 17.03 | - | - | - | xRgosw2 | |
| go | sub | NQos | P-gen | x86_64 | thru | 12.17 | - | - | - | xRgosw2 | |
| go | sub | MQss | P-gen | x86_64 | thru | 34.93 | - | - | - | xRgosw2 | |
| go | sub | MQos | P-gen | x86_64 | thru | 20.41 | - | - | - | xRgosw2 | |
| go | sub | OQss | P-gen | x86_64 | thru | 69.12 | - | - | - | xRgosw2 | |
| go | sub | OQos | P-gen | x86_64 | thru | 50.94 | - | - | - | xRgosw2 | |
| go | sub | FQss | P-gen | x86_64 | thru | 45.88 | - | - | - | xRgosw2 | |
| go | sub | FQos | P-gen | x86_64 | thru | 37.08 | - | - | - | xRgosw2 |
Multiply — CP · WP · XP
Swept 4096-input average per band (bare thru; ns/op = Time/4096 over the shared decimal128-resources/swept/ corpus, byte-identical operands every port). Relational peer table with explicit ratios; the cross-port d128 band-shape matrices are in Port-Comparison Benchmark Results.
arm64 (M3 Pro).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | mul | CP | P-gen | arm64 | thru | 2.46 | - | - | - | Rgosw2 | |
| go | mul | WP | P-gen | arm64 | thru | 28.35 | - | - | - | Rgosw2 | |
| go | mul | XP | P-gen | arm64 | thru | 39.72 | - | - | - | Rgosw2 |
x86_64 (Intel i9-9880H).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | mul | CP | P-gen | x86_64 | thru | 6.43 | - | - | - | xRgosw2 | |
| go | mul | WP | P-gen | x86_64 | thru | 52.28 | - | - | - | xRgosw2 | |
| go | mul | XP | P-gen | x86_64 | thru | 78.60 | - | - | - | xRgosw2 |
Divide — CD · WD · XD (+ ET · PT)
Swept 4096-input average per band (bare thru; ns/op = Time/4096 over the shared decimal128-resources/swept/ corpus, byte-identical operands every port). Relational peer table with explicit ratios; the cross-port d128 band-shape matrices are in Port-Comparison Benchmark Results.
arm64 (M3 Pro).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | div | CD | P-gen | arm64 | thru | 35.09 | - | - | - | Rgosw2 | |
| go | div | WD | P-gen | arm64 | thru | 61.48 | - | - | - | Rgosw2 | |
| go | div | XD | P-gen | arm64 | thru | 58.03 | - | - | - | Rgosw2 | |
| go | div | ET | P-gen | arm64 | thru | 12.35 | - | - | - | Rgosw2 | |
| go | div | PT | P-gen | arm64 | thru | 6.64 | - | - | - | Rgosw2 |
x86_64 (Intel i9-9880H).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | div | CD | P-gen | x86_64 | thru | 92.98 | - | - | - | xRgosw2 | |
| go | div | WD | P-gen | x86_64 | thru | 157.10 | - | - | - | xRgosw2 | |
| go | div | XD | P-gen | x86_64 | thru | 117.50 | - | - | - | xRgosw2 | |
| go | div | ET | P-gen | x86_64 | thru | 35.98 | - | - | - | xRgosw2 | |
| go | div | PT | P-gen | x86_64 | thru | 15.15 | - | - | - | xRgosw2 |
FMA — FN (Barrett) · FF (fits-128)
Swept 4096-input average per band (bare thru; ns/op = Time/4096 over the shared decimal128-resources/swept/ corpus, byte-identical operands every port). Relational peer table with explicit ratios; the cross-port d128 band-shape matrices are in Port-Comparison Benchmark Results.
arm64 (M3 Pro).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | fma | FN | FMA | arm64 | thru | 159.20 | - | - | - | Rgosw2 | |
| go | fma | FF | FMA | arm64 | thru | 72.84 | - | - | - | Rgosw2 |
x86_64 (Intel i9-9880H).
| port | op | cat | profile | arch | mode | ours | alt | alt ns | ratio | run | notes |
|---|---|---|---|---|---|---|---|---|---|---|---|
| go | fma | FN | FMA | x86_64 | thru | 313.30 | - | - | - | xRgosw2 | |
| go | fma | FF | FMA | x86_64 | thru | 165.00 | - | - | - | xRgosw2 |