goos: linux goarch: amd64 pkg: github.com/quagmt/udecimal/benchmarks cpu: Intel(R) Core(TM) i9-14900HX │ shopspring │ udecimal │ │ sec/op │ sec/op vs base │ Parse/1234567890123456789.1234567890123456879-32 384.35n ± 10% 25.16n ± 5% -93.45% (p=0.000 n=10) Parse/123-32 77.475n ± 13% 8.046n ± 8% -89.61% (p=0.000 n=10) Parse/123456.123456-32 128.35n ± 5% 13.25n ± 3% -89.68% (p=0.000 n=10) Parse/1234567890-32 82.47n ± 7% 11.20n ± 1% -86.42% (p=0.000 n=10) Parse/0.1234567890123456879-32 262.30n ± 17% 17.89n ± 4% -93.18% (p=0.000 n=10) Parse/12345678901234567890123456789.123-32 312.20n ± 8% 48.83n ± 3% -84.36% (p=0.000 n=10) ParseFallBack/123456789123456789123456.1234567890123456-32 373.2n ± 13% 337.6n ± 2% ~ (p=0.105 n=10) ParseFallBack/111222333444555666777888999.1234567890123456789-32 418.5n ± 5% 325.9n ± 5% -22.12% (p=0.000 n=10) String/1234567890123456789.1234567890123456879-32 284.45n ± 26% 53.19n ± 3% -81.30% (p=0.000 n=10) String/123-32 110.55n ± 7% 14.72n ± 2% -86.68% (p=0.000 n=10) String/123456.123456-32 133.00n ± 10% 27.95n ± 6% -78.99% (p=0.000 n=10) String/1234567890-32 145.45n ± 18% 24.37n ± 3% -83.25% (p=0.000 n=10) String/0.1234567890123456879-32 173.80n ± 15% 34.36n ± 11% -80.23% (p=0.000 n=10) String/12345.1234567890123456789-32 241.90n ± 4% 37.68n ± 5% -84.42% (p=0.000 n=10) StringFallBack/123456789123456789123456.1234567890123456-32 394.1n ± 15% 174.1n ± 3% -55.82% (p=0.000 n=10) StringFallBack/111222333444555666777888999.1234567890123456789-32 353.4n ± 26% 174.4n ± 8% -50.65% (p=0.000 n=10) Add/1234567890123456789.1234567890123456879.Add(1111.1789)-32 384.650n ± 10% 5.891n ± 4% -98.47% (p=0.000 n=10) Add/1234567890123456789.1234567890123456879.Add(1234567890123456789.1234567890123456789)-32 102.550n ± 10% 3.496n ± 3% -96.59% (p=0.000 n=10) Add/123.456.Add(0.123)-32 97.220n ± 8% 3.467n ± 3% -96.43% (p=0.000 n=10) Add/3.Add(7)-32 93.565n ± 8% 3.463n ± 4% -96.30% (p=0.000 n=10) Add/123456.123456.Add(999999)-32 368.450n ± 12% 5.893n ± 5% -98.40% (p=0.000 n=10) Add/123456.123456.Add(456781244.1324897546)-32 326.950n ± 13% 5.274n ± 5% -98.39% (p=0.000 n=10) Add/548751.15465466546.Add(1542.456487)-32 346.550n ± 10% 5.926n ± 4% -98.29% (p=0.000 n=10) Sub/3.Sub(7)-32 67.765n ± 9% 6.022n ± 3% -91.11% (p=0.000 n=10) Sub/1234567890123456789.1234567890123456879.Sub(1111.1789)-32 376.150n ± 10% 7.396n ± 4% -98.03% (p=0.000 n=10) Sub/1234567890123456789.1234567890123456879.Sub(1234567890123456789.1234567890123456789)-32 104.650n ± 9% 5.571n ± 2% -94.68% (p=0.000 n=10) Sub/123.456.Sub(0.123)-32 64.670n ± 14% 5.479n ± 4% -91.53% (p=0.000 n=10) Sub/123456.123456.Sub(456781244.1324897546)-32 312.400n ± 16% 7.402n ± 4% -97.63% (p=0.000 n=10) Sub/548751.15465466546.Sub(1542.456487)-32 378.950n ± 7% 7.767n ± 3% -97.95% (p=0.000 n=10) Mul/1234.1234567890123456879.Mul(1111.1789)-32 111.800n ± 5% 7.385n ± 4% -93.39% (p=0.000 n=10) Mul/1234.1234567890123456879.Mul(1111.1234567890123456789)-32 121.450n ± 11% 7.604n ± 5% -93.74% (p=0.000 n=10) Mul/123.456.Mul(0.123)-32 101.900n ± 11% 4.435n ± 4% -95.65% (p=0.000 n=10) Mul/3.Mul(7)-32 104.600n ± 5% 4.591n ± 5% -95.61% (p=0.000 n=10) Mul/123456.123456.Mul(999999)-32 102.350n ± 9% 4.481n ± 2% -95.62% (p=0.000 n=10) Mul/123456.123456.Mul(456781244.1324897546)-32 100.300n ± 8% 4.450n ± 3% -95.56% (p=0.000 n=10) Mul/548751.15465466546.Mul(1542.456487)-32 103.200n ± 6% 4.582n ± 5% -95.56% (p=0.000 n=10) Div/1234567890123456789.1234567890123456879.Div(1111.1789)-32 443.000n ± 8% 8.257n ± 6% -98.14% (p=0.000 n=10) Div/12345.1234567890123456879.Div(1111.1234567890123456789)-32 464.75n ± 14% 15.04n ± 5% -96.76% (p=0.000 n=10) Div/1234567890123456789.1234567890123456879.Div(9876543210987654321.1234567890123456789)-32 483.30n ± 6% 13.36n ± 3% -97.24% (p=0.000 n=10) Div/123.456.Div(0.123)-32 374.450n ± 6% 7.380n ± 2% -98.03% (p=0.000 n=10) Div/3.Div(7)-32 380.250n ± 30% 7.183n ± 2% -98.11% (p=0.000 n=10) Div/123456.123456.Div(999999)-32 373.250n ± 7% 7.539n ± 6% -97.98% (p=0.000 n=10) Div/123456.123456.Div(456781244.1324897546)-32 452.800n ± 5% 8.191n ± 4% -98.19% (p=0.000 n=10) Div/548751.15465466546.Div(1542.456487)-32 473.150n ± 6% 7.282n ± 5% -98.46% (p=0.000 n=10) Div/22773757910726981402256170801141121114.Div(811656739243220271.159)-32 509.35n ± 39% 17.33n ± 3% -96.60% (p=0.000 n=10) DivFallback/12345679012345679890123456789.1234567890123456789.Div(999999)-32 762.1n ± 7% DivFallback/1234.Div(12345679012345679890123456789.1234567890123456789)-32 242.1n ± 87% Pow/1.01.Pow(10)-32 724.70n ± 31% 34.73n ± 4% -95.21% (p=0.000 n=10) Pow/1.01.Pow(100)-32 1.367µ ± 8% 1.039µ ± 9% -23.99% (p=0.000 n=10) MarshalJSON/1234567890123456789.1234567890123456879-32 451.65n ± 6% 72.24n ± 10% -84.00% (p=0.000 n=10) MarshalJSON/123-32 137.20n ± 12% 15.37n ± 8% -88.80% (p=0.000 n=10) MarshalJSON/123456.123456-32 170.50n ± 10% 32.96n ± 6% -80.67% (p=0.000 n=10) MarshalJSON/1234567890-32 189.25n ± 4% 29.88n ± 10% -84.21% (p=0.000 n=10) MarshalJSON/0.1234567890123456879-32 204.70n ± 7% 41.79n ± 7% -79.58% (p=0.000 n=10) MarshalJSON/12345678901234567891234567890123456789.1234567890123456879-32 523.6n ± 15% 403.3n ± 5% -22.97% (p=0.000 n=10) UnmarshalJSON/1234567890123456789.1234567890123456879-32 488.90n ± 10% 25.18n ± 4% -94.85% (p=0.000 n=10) UnmarshalJSON/123-32 133.250n ± 9% 9.401n ± 5% -92.94% (p=0.000 n=10) UnmarshalJSON/123456.123456-32 180.60n ± 11% 14.22n ± 3% -92.12% (p=0.000 n=10) UnmarshalJSON/1234567890-32 139.50n ± 10% 12.34n ± 4% -91.16% (p=0.000 n=10) UnmarshalJSON/0.1234567890123456879-32 449.70n ± 9% 18.75n ± 4% -95.83% (p=0.000 n=10) UnmarshalJSON/12345678901234567891234567890123456789.1234567890123456879-32 662.6n ± 9% 468.7n ± 10% -29.28% (p=0.000 n=10) MarshalBinary/1234567890123456789.1234567890123456879-32 48.72n ± 21% 25.42n ± 12% -47.81% (p=0.000 n=10) MarshalBinary/123-32 34.52n ± 9% 19.57n ± 10% -43.29% (p=0.000 n=10) MarshalBinary/123456.123456-32 48.67n ± 14% 19.23n ± 9% -60.48% (p=0.000 n=10) MarshalBinary/1234567890-32 47.89n ± 24% 19.77n ± 12% -58.73% (p=0.000 n=10) MarshalBinary/0.1234567890123456879-32 46.45n ± 10% 21.32n ± 20% -54.10% (p=0.000 n=10) MarshalBinary/12345678901234567891234567890123456789.1234567890123456879-32 64.40n ± 33% 47.25n ± 6% ~ (p=0.089 n=10) UnmarshalBinary/1234567890123456789.1234567890123456879-32 59.150n ± 31% 2.159n ± 1% -96.35% (p=0.000 n=10) UnmarshalBinary/123-32 45.880n ± 15% 1.770n ± 4% -96.14% (p=0.000 n=10) UnmarshalBinary/123456.123456-32 50.450n ± 25% 1.812n ± 3% -96.41% (p=0.000 n=10) UnmarshalBinary/1234567890-32 65.140n ± 38% 1.792n ± 4% -97.25% (p=0.000 n=10) UnmarshalBinary/0.1234567890123456879-32 45.120n ± 18% 1.766n ± 4% -96.09% (p=0.000 n=10) UnmarshalBinary/12345678901234567891234567890123456789.1234567890123456879-32 72.44n ± 11% 74.11n ± 9% ~ (p=0.481 n=10) FallbackDiv/12345679012345679890123456789.1234567890123456789.Div(999999)-32 303.1n ± 16% FallbackDiv/1234.Div(12345679012345679890123456789.1234567890123456789)-32 295.8n ± 4% geomean 184.4n 16.57n -91.52% ¹ ¹ benchmark set differs from baseline; geomeans may not be comparable │ shopspring │ udecimal │ │ B/op │ B/op vs base │ Parse/1234567890123456789.1234567890123456879-32 168.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Parse/123-32 40.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Parse/123456.123456-32 56.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Parse/1234567890-32 40.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Parse/0.1234567890123456879-32 144.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Parse/12345678901234567890123456789.123-32 152.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) ParseFallBack/123456789123456789123456.1234567890123456-32 168.0 ± 0% 192.0 ± 0% +14.29% (p=0.000 n=10) ParseFallBack/111222333444555666777888999.1234567890123456789-32 168.0 ± 0% 216.0 ± 0% +28.57% (p=0.000 n=10) String/1234567890123456789.1234567890123456879-32 240.00 ± 0% 48.00 ± 0% -80.00% (p=0.000 n=10) String/123-32 48.000 ± 0% 3.000 ± 0% -93.75% (p=0.000 n=10) String/123456.123456-32 56.00 ± 0% 16.00 ± 0% -71.43% (p=0.000 n=10) String/1234567890-32 72.00 ± 0% 16.00 ± 0% -77.78% (p=0.000 n=10) String/0.1234567890123456879-32 80.00 ± 0% 24.00 ± 0% -70.00% (p=0.000 n=10) String/12345.1234567890123456789-32 176.00 ± 0% 32.00 ± 0% -81.82% (p=0.000 n=10) StringFallBack/123456789123456789123456.1234567890123456-32 272.0 ± 0% 208.0 ± 0% -23.53% (p=0.000 n=10) StringFallBack/111222333444555666777888999.1234567890123456789-32 272.0 ± 0% 208.0 ± 0% -23.53% (p=0.000 n=10) Add/1234567890123456789.1234567890123456879.Add(1111.1789)-32 288.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Add/1234567890123456789.1234567890123456879.Add(1234567890123456789.1234567890123456789)-32 96.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Add/123.456.Add(0.123)-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Add/3.Add(7)-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Add/123456.123456.Add(999999)-32 272.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Add/123456.123456.Add(456781244.1324897546)-32 272.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Add/548751.15465466546.Add(1542.456487)-32 272.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Sub/3.Sub(7)-32 40.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Sub/1234567890123456789.1234567890123456879.Sub(1111.1789)-32 272.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Sub/1234567890123456789.1234567890123456879.Sub(1234567890123456789.1234567890123456789)-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Sub/123.456.Sub(0.123)-32 40.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Sub/123456.123456.Sub(456781244.1324897546)-32 232.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Sub/548751.15465466546.Sub(1542.456487)-32 232.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Mul/1234.1234567890123456879.Mul(1111.1789)-32 96.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Mul/1234.1234567890123456879.Mul(1111.1234567890123456789)-32 96.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Mul/123.456.Mul(0.123)-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Mul/3.Mul(7)-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Mul/123456.123456.Mul(999999)-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Mul/123456.123456.Mul(456781244.1324897546)-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Mul/548751.15465466546.Mul(1542.456487)-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Div/1234567890123456789.1234567890123456879.Div(1111.1789)-32 352.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Div/12345.1234567890123456879.Div(1111.1234567890123456789)-32 336.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Div/1234567890123456789.1234567890123456879.Div(9876543210987654321.1234567890123456789)-32 336.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Div/123.456.Div(0.123)-32 288.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Div/3.Div(7)-32 328.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Div/123456.123456.Div(999999)-32 288.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Div/123456.123456.Div(456781244.1324897546)-32 368.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Div/548751.15465466546.Div(1542.456487)-32 368.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Div/22773757910726981402256170801141121114.Div(811656739243220271.159)-32 336.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) DivFallback/12345679012345679890123456789.1234567890123456789.Div(999999)-32 496.0 ± 0% DivFallback/1234.Div(12345679012345679890123456789.1234567890123456789)-32 272.0 ± 0% Pow/1.01.Pow(10)-32 576.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) Pow/1.01.Pow(100)-32 1072.0 ± 0% 817.0 ± 0% -23.79% (p=0.000 n=10) MarshalJSON/1234567890123456789.1234567890123456879-32 336.00 ± 0% 48.00 ± 0% -85.71% (p=0.000 n=10) MarshalJSON/123-32 56.000 ± 0% 5.000 ± 0% -91.07% (p=0.000 n=10) MarshalJSON/123456.123456-32 72.00 ± 0% 16.00 ± 0% -77.78% (p=0.000 n=10) MarshalJSON/1234567890-32 88.00 ± 0% 16.00 ± 0% -81.82% (p=0.000 n=10) MarshalJSON/0.1234567890123456879-32 104.00 ± 0% 24.00 ± 0% -76.92% (p=0.000 n=10) MarshalJSON/12345678901234567891234567890123456789.1234567890123456879-32 448.0 ± 0% 384.0 ± 0% -14.29% (p=0.000 n=10) UnmarshalJSON/1234567890123456789.1234567890123456879-32 240.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/123-32 72.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/123456.123456-32 96.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/1234567890-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/0.1234567890123456879-32 192.0 ± 0% 0.0 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/12345678901234567891234567890123456789.1234567890123456879-32 272.0 ± 0% 264.0 ± 0% -2.94% (p=0.000 n=10) MarshalBinary/1234567890123456789.1234567890123456879-32 48.00 ± 0% 24.00 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/123-32 16.00 ± 0% 16.00 ± 0% ~ (p=1.000 n=10) ¹ MarshalBinary/123456.123456-32 32.00 ± 0% 16.00 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/1234567890-32 32.00 ± 0% 16.00 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/0.1234567890123456879-32 32.00 ± 0% 16.00 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/12345678901234567891234567890123456789.1234567890123456879-32 64.00 ± 0% 32.00 ± 0% -50.00% (p=0.000 n=10) UnmarshalBinary/1234567890123456789.1234567890123456879-32 80.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/123-32 40.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/123456.123456-32 40.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/1234567890-32 40.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/0.1234567890123456879-32 40.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/12345678901234567891234567890123456789.1234567890123456879-32 96.00 ± 0% 96.00 ± 0% ~ (p=1.000 n=10) ¹ FallbackDiv/12345679012345679890123456789.1234567890123456789.Div(999999)-32 264.0 ± 0% FallbackDiv/1234.Div(12345679012345679890123456789.1234567890123456789)-32 320.0 ± 0% geomean 123.4 ? ² ³ ⁴ ¹ all samples are equal ² benchmark set differs from baseline; geomeans may not be comparable ³ summaries must be >0 to compute geomean ⁴ ratios must be >0 to compute geomean │ shopspring │ udecimal │ │ allocs/op │ allocs/op vs base │ Parse/1234567890123456789.1234567890123456879-32 5.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Parse/123-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Parse/123456.123456-32 3.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Parse/1234567890-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Parse/0.1234567890123456879-32 5.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Parse/12345678901234567890123456789.123-32 5.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) ParseFallBack/123456789123456789123456.1234567890123456-32 5.000 ± 0% 6.000 ± 0% +20.00% (p=0.000 n=10) ParseFallBack/111222333444555666777888999.1234567890123456789-32 5.000 ± 0% 6.000 ± 0% +20.00% (p=0.000 n=10) String/1234567890123456789.1234567890123456879-32 5.000 ± 0% 1.000 ± 0% -80.00% (p=0.000 n=10) String/123-32 4.000 ± 0% 1.000 ± 0% -75.00% (p=0.000 n=10) String/123456.123456-32 4.000 ± 0% 1.000 ± 0% -75.00% (p=0.000 n=10) String/1234567890-32 4.000 ± 0% 1.000 ± 0% -75.00% (p=0.000 n=10) String/0.1234567890123456879-32 4.000 ± 0% 1.000 ± 0% -75.00% (p=0.000 n=10) String/12345.1234567890123456789-32 5.000 ± 0% 1.000 ± 0% -80.00% (p=0.000 n=10) StringFallBack/123456789123456789123456.1234567890123456-32 5.000 ± 0% 4.000 ± 0% -20.00% (p=0.000 n=10) StringFallBack/111222333444555666777888999.1234567890123456789-32 5.000 ± 0% 4.000 ± 0% -20.00% (p=0.000 n=10) Add/1234567890123456789.1234567890123456879.Add(1111.1789)-32 8.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Add/1234567890123456789.1234567890123456879.Add(1234567890123456789.1234567890123456789)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Add/123.456.Add(0.123)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Add/3.Add(7)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Add/123456.123456.Add(999999)-32 8.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Add/123456.123456.Add(456781244.1324897546)-32 8.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Add/548751.15465466546.Add(1542.456487)-32 8.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Sub/3.Sub(7)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Sub/1234567890123456789.1234567890123456879.Sub(1111.1789)-32 8.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Sub/1234567890123456789.1234567890123456879.Sub(1234567890123456789.1234567890123456789)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Sub/123.456.Sub(0.123)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Sub/123456.123456.Sub(456781244.1324897546)-32 8.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Sub/548751.15465466546.Sub(1542.456487)-32 8.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Mul/1234.1234567890123456879.Mul(1111.1789)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Mul/1234.1234567890123456879.Mul(1111.1234567890123456789)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Mul/123.456.Mul(0.123)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Mul/3.Mul(7)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Mul/123456.123456.Mul(999999)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Mul/123456.123456.Mul(456781244.1324897546)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Mul/548751.15465466546.Mul(1542.456487)-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Div/1234567890123456789.1234567890123456879.Div(1111.1789)-32 11.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Div/12345.1234567890123456879.Div(1111.1234567890123456789)-32 9.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Div/1234567890123456789.1234567890123456879.Div(9876543210987654321.1234567890123456789)-32 9.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) Div/123.456.Div(0.123)-32 10.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Div/3.Div(7)-32 12.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Div/123456.123456.Div(999999)-32 10.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Div/123456.123456.Div(456781244.1324897546)-32 12.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Div/548751.15465466546.Div(1542.456487)-32 12.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Div/22773757910726981402256170801141121114.Div(811656739243220271.159)-32 9.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) DivFallback/12345679012345679890123456789.1234567890123456789.Div(999999)-32 16.00 ± 0% DivFallback/1234.Div(12345679012345679890123456789.1234567890123456789)-32 8.000 ± 0% Pow/1.01.Pow(10)-32 18.00 ± 0% 0.00 ± 0% -100.00% (p=0.000 n=10) Pow/1.01.Pow(100)-32 26.00 ± 0% 13.00 ± 0% -50.00% (p=0.000 n=10) MarshalJSON/1234567890123456789.1234567890123456879-32 7.000 ± 0% 1.000 ± 0% -85.71% (p=0.000 n=10) MarshalJSON/123-32 5.000 ± 0% 1.000 ± 0% -80.00% (p=0.000 n=10) MarshalJSON/123456.123456-32 5.000 ± 0% 1.000 ± 0% -80.00% (p=0.000 n=10) MarshalJSON/1234567890-32 5.000 ± 0% 1.000 ± 0% -80.00% (p=0.000 n=10) MarshalJSON/0.1234567890123456879-32 5.000 ± 0% 1.000 ± 0% -80.00% (p=0.000 n=10) MarshalJSON/12345678901234567891234567890123456789.1234567890123456879-32 7.000 ± 0% 6.000 ± 0% -14.29% (p=0.000 n=10) UnmarshalJSON/1234567890123456789.1234567890123456879-32 7.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/123-32 4.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/123456.123456-32 5.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/1234567890-32 4.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/0.1234567890123456879-32 7.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalJSON/12345678901234567891234567890123456789.1234567890123456879-32 7.000 ± 0% 6.000 ± 0% -14.29% (p=0.000 n=10) MarshalBinary/1234567890123456789.1234567890123456879-32 2.000 ± 0% 1.000 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/123-32 2.000 ± 0% 1.000 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/123456.123456-32 2.000 ± 0% 1.000 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/1234567890-32 2.000 ± 0% 1.000 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/0.1234567890123456879-32 2.000 ± 0% 1.000 ± 0% -50.00% (p=0.000 n=10) MarshalBinary/12345678901234567891234567890123456789.1234567890123456879-32 2.000 ± 0% 1.000 ± 0% -50.00% (p=0.000 n=10) UnmarshalBinary/1234567890123456789.1234567890123456879-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/123-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/123456.123456-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/1234567890-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/0.1234567890123456879-32 2.000 ± 0% 0.000 ± 0% -100.00% (p=0.000 n=10) UnmarshalBinary/12345678901234567891234567890123456789.1234567890123456879-32 2.000 ± 0% 2.000 ± 0% ~ (p=1.000 n=10) ¹ FallbackDiv/12345679012345679890123456789.1234567890123456789.Div(999999)-32 7.000 ± 0% FallbackDiv/1234.Div(12345679012345679890123456789.1234567890123456789)-32 7.000 ± 0% geomean 4.331 ? ² ³ ⁴ ¹ all samples are equal ² benchmark set differs from baseline; geomeans may not be comparable ³ summaries must be >0 to compute geomean ⁴ ratios must be >0 to compute geomean