[pull] master from golang:master#26
Merged
pull[bot] merged 1 commit intotrailofbits:masterfrom May 10, 2026
Merged
Conversation
…rinsics
Note: large degradations on benchmarks like MapAccessZero/MapAccessEmpty are caused by changes in basic block alignment.
Benchmark results are:
* base - before this CL
* asm - this CL with default asm implementations (this is sanity check to test against performance regressions)
* simd-intrinsics - this CL with GOEXPERIMENT=simd
goos: linux
goarch: amd64
pkg: runtime
cpu: Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz
│ base.stat │ asm.stat │ simd-intrinsics.stat │
│ sec/op │ sec/op vs base │ sec/op vs base │
MapAccessHit/Key=int32/Elem=int32/len=6-4 21.57n ± 0% 21.48n ± 0% -0.42% (p=0.000 n=30) 21.61n ± 0% +0.19% (p=0.000 n=30)
MapAccessHit/Key=int32/Elem=int32/len=64-4 25.62n ± 2% 25.68n ± 0% ~ (p=0.773 n=30) 24.15n ± 0% -5.74% (p=0.000 n=30)
MapAccessHit/Key=int32/Elem=int32/len=65536-4 41.03n ± 2% 41.09n ± 0% ~ (p=0.086 n=30) 39.13n ± 1% -4.63% (p=0.000 n=30)
MapAccessHit/Key=int64/Elem=int64/len=6-4 21.50n ± 0% 21.50n ± 0% ~ (p=0.873 n=30) 21.61n ± 0% +0.49% (p=0.000 n=30)
MapAccessHit/Key=int64/Elem=int64/len=64-4 25.58n ± 1% 25.36n ± 2% ~ (p=0.054 n=30) 23.88n ± 1% -6.68% (p=0.000 n=30)
MapAccessHit/Key=int64/Elem=int64/len=65536-4 44.35n ± 0% 43.79n ± 0% -1.27% (p=0.000 n=30) 43.11n ± 0% -2.80% (p=0.000 n=30)
MapAccessHit/Key=int32/Elem=bigType/len=6-4 102.4n ± 0% 101.8n ± 0% -0.54% (p=0.005 n=30) 102.3n ± 0% ~ (p=0.458 n=30)
MapAccessHit/Key=int32/Elem=bigType/len=64-4 167.2n ± 4% 168.9n ± 3% ~ (p=0.112 n=30) 167.7n ± 3% ~ (p=0.284 n=30)
MapAccessHit/Key=int32/Elem=bigType/len=65536-4 598.6n ± 0% 604.3n ± 0% +0.97% (p=0.000 n=30) 601.2n ± 0% +0.45% (p=0.000 n=30)
MapAccessHit/Key=int32/Elem=*int32/len=6-4 21.77n ± 1% 21.71n ± 1% ~ (p=0.183 n=30) 21.80n ± 0% ~ (p=0.209 n=30)
MapAccessHit/Key=int32/Elem=*int32/len=64-4 26.07n ± 0% 25.89n ± 0% -0.69% (p=0.001 n=30) 24.31n ± 1% -6.75% (p=0.000 n=30)
MapAccessHit/Key=int32/Elem=*int32/len=65536-4 45.35n ± 0% 45.26n ± 0% -0.21% (p=0.008 n=30) 43.40n ± 0% -4.30% (p=0.000 n=30)
MapAccessMiss/Key=int32/Elem=int32/len=6-4 23.31n ± 0% 23.21n ± 1% ~ (p=0.184 n=30) 23.33n ± 1% ~ (p=0.795 n=30)
MapAccessMiss/Key=int32/Elem=int32/len=64-4 25.00n ± 3% 24.88n ± 2% ~ (p=0.420 n=30) 23.63n ± 3% -5.48% (p=0.000 n=30)
MapAccessMiss/Key=int32/Elem=int32/len=65536-4 37.64n ± 0% 37.57n ± 0% ~ (p=0.053 n=30) 36.02n ± 0% -4.30% (p=0.000 n=30)
MapAccessMiss/Key=int64/Elem=int64/len=6-4 23.51n ± 0% 23.50n ± 0% ~ (p=0.447 n=30) 23.63n ± 0% +0.51% (p=0.000 n=30)
MapAccessMiss/Key=int64/Elem=int64/len=64-4 25.71n ± 3% 25.12n ± 2% ~ (p=0.141 n=30) 23.45n ± 2% -8.77% (p=0.000 n=30)
MapAccessMiss/Key=int64/Elem=int64/len=65536-4 38.32n ± 0% 37.99n ± 0% -0.86% (p=0.000 n=30) 36.56n ± 35% -4.58% (p=0.027 n=30)
MapAccessMiss/Key=int32/Elem=bigType/len=6-4 129.4n ± 3% 129.9n ± 0% ~ (p=0.064 n=30) 138.4n ± 2% +6.92% (p=0.000 n=30)
MapAccessMiss/Key=int32/Elem=bigType/len=64-4 132.0n ± 2% 131.9n ± 0% ~ (p=0.877 n=30) 138.6n ± 2% +5.00% (p=0.000 n=30)
MapAccessMiss/Key=int32/Elem=bigType/len=65536-4 153.3n ± 1% 153.5n ± 0% ~ (p=0.449 n=30) 153.8n ± 0% ~ (p=0.762 n=30)
MapAccessMiss/Key=int32/Elem=*int32/len=6-4 23.69n ± 0% 23.36n ± 0% -1.41% (p=0.000 n=30) 23.70n ± 1% +0.04% (p=0.000 n=30)
MapAccessMiss/Key=int32/Elem=*int32/len=64-4 24.98n ± 3% 24.94n ± 3% ~ (p=0.647 n=30) 23.59n ± 3% -5.58% (p=0.000 n=30)
MapAccessMiss/Key=int32/Elem=*int32/len=65536-4 38.18n ± 0% 38.00n ± 0% -0.48% (p=0.000 n=30) 36.49n ± 0% -4.43% (p=0.000 n=30)
MapAccessZero/Key=int64-4 3.094n ± 0% 3.093n ± 0% -0.03% (p=0.033 n=30) 2.707n ± 0% -12.51% (p=0.000 n=30)
MapAccessZero/Key=int32-4 2.707n ± 0% 3.093n ± 0% +14.28% (p=0.000 n=30) 3.093n ± 0% +14.26% (p=0.000 n=30)
MapAccessEmpty/Key=int64-4 3.481n ± 0% 3.481n ± 0% ~ (p=0.613 n=30) 3.094n ± 0% -11.12% (p=0.000 n=30)
MapAccessEmpty/Key=int32-4 3.094n ± 0% 3.481n ± 0% +12.51% (p=0.000 n=30) 3.481n ± 0% +12.51% (p=0.000 n=30)
geomean 30.59n 30.78n +0.62% 30.03n -1.84%
goos: linux
goarch: amd64
pkg: runtime
cpu: Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz
│ base.stat │ asm.stat │ simd-intrinsics.stat │
│ sec/op │ sec/op vs base │ sec/op vs base │
MapAssignExists/Key=int32/Elem=int32/len=6-4 26.35n ± 0% 26.73n ± 0% +1.44% (p=0.000 n=30) 25.15n ± 0% -4.55% (p=0.000 n=30)
MapAssignExists/Key=int32/Elem=int32/len=64-4 28.24n ± 1% 28.05n ± 2% ~ (p=0.779 n=30) 26.68n ± 2% -5.56% (p=0.000 n=30)
MapAssignExists/Key=int32/Elem=int32/len=65536-4 43.50n ± 2% 43.66n ± 0% ~ (p=0.318 n=30) 42.89n ± 0% -1.39% (p=0.000 n=30)
MapAssignExists/Key=int64/Elem=int64/len=6-4 26.36n ± 0% 26.83n ± 0% +1.80% (p=0.000 n=30) 24.97n ± 0% -5.26% (p=0.000 n=30)
MapAssignExists/Key=int64/Elem=int64/len=64-4 28.41n ± 1% 28.05n ± 1% -1.28% (p=0.004 n=30) 26.35n ± 2% -7.25% (p=0.000 n=30)
MapAssignExists/Key=int64/Elem=int64/len=65536-4 48.09n ± 1% 46.79n ± 0% -2.70% (p=0.000 n=30) 44.98n ± 1% -6.48% (p=0.000 n=30)
MapAssignExists/Key=int32/Elem=bigType/len=6-4 298.3n ± 1% 301.8n ± 0% +1.14% (p=0.000 n=30) 301.9n ± 0% +1.19% (p=0.000 n=30)
MapAssignExists/Key=int32/Elem=bigType/len=64-4 410.3n ± 1% 412.7n ± 1% +0.56% (p=0.008 n=30) 411.2n ± 1% ~ (p=0.211 n=30)
MapAssignExists/Key=int32/Elem=bigType/len=65536-4 1.296µ ± 0% 1.309µ ± 0% +1.00% (p=0.000 n=30) 1.307µ ± 0% +0.85% (p=0.000 n=30)
MapAssignExists/Key=int32/Elem=*int32/len=6-4 26.89n ± 0% 27.19n ± 0% +1.12% (p=0.000 n=30) 25.80n ± 0% -4.05% (p=0.000 n=30)
MapAssignExists/Key=int32/Elem=*int32/len=64-4 28.65n ± 1% 28.13n ± 1% -1.80% (p=0.000 n=30) 27.00n ± 1% -5.76% (p=0.000 n=30)
MapAssignExists/Key=int32/Elem=*int32/len=65536-4 48.66n ± 0% 46.56n ± 0% -4.32% (p=0.000 n=30) 46.19n ± 0% -5.06% (p=0.000 n=30)
MapAssignFillNoHint/Key=int32/Elem=int32/len=6-4 45.88n ± 0% 45.91n ± 0% ~ (p=0.420 n=30) 53.98n ± 17% ~ (p=0.077 n=30)
MapAssignFillNoHint/Key=int32/Elem=int32/len=64-4 104.5n ± 0% 106.5n ± 0% +1.91% (p=0.000 n=30) 102.5n ± 0% -1.91% (p=0.000 n=30)
MapAssignFillNoHint/Key=int32/Elem=int32/len=65536-4 119.5n ± 0% 120.6n ± 0% +0.92% (p=0.000 n=30) 117.9n ± 0% -1.34% (p=0.000 n=30)
MapAssignFillNoHint/Key=int64/Elem=int64/len=6-4 47.96n ± 0% 48.22n ± 0% +0.53% (p=0.000 n=30) 53.50n ± 20% ~ (p=0.077 n=30)
MapAssignFillNoHint/Key=int64/Elem=int64/len=64-4 112.2n ± 1% 114.5n ± 0% +2.10% (p=0.000 n=30) 110.3n ± 0% -1.60% (p=0.000 n=30)
MapAssignFillNoHint/Key=int64/Elem=int64/len=65536-4 136.8n ± 0% 137.9n ± 1% +0.80% (p=0.000 n=30) 132.6n ± 1% -3.03% (p=0.000 n=30)
MapAssignFillNoHint/Key=int32/Elem=bigType/len=6-4 1.466µ ± 0% 1.463µ ± 1% ~ (p=0.564 n=30) 1.526µ ± 0% +4.06% (p=0.000 n=30)
MapAssignFillNoHint/Key=int32/Elem=bigType/len=64-4 1.675µ ± 1% 1.668µ ± 0% -0.42% (p=0.003 n=30) 1.670µ ± 0% -0.33% (p=0.038 n=30)
MapAssignFillNoHint/Key=int32/Elem=bigType/len=65536-4 2.160µ ± 2% 2.169µ ± 3% ~ (p=0.871 n=30) 2.164µ ± 2% ~ (p=0.137 n=30)
MapAssignFillNoHint/Key=int32/Elem=*int32/len=6-4 49.60n ± 1% 50.16n ± 0% +1.13% (p=0.000 n=30) 54.72n ± 13% ~ (p=0.171 n=30)
MapAssignFillNoHint/Key=int32/Elem=*int32/len=64-4 113.7n ± 0% 115.9n ± 0% +1.93% (p=0.000 n=30) 111.8n ± 0% -1.72% (p=0.000 n=30)
MapAssignFillNoHint/Key=int32/Elem=*int32/len=65536-4 158.5n ± 1% 155.1n ± 1% -2.15% (p=0.000 n=30) 153.5n ± 0% -3.19% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=6-4 113.2n ± 0% 112.8n ± 0% -0.35% (p=0.005 n=30) 110.5n ± 1% -2.43% (p=0.002 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=64-4 169.7n ± 0% 171.4n ± 0% +1.00% (p=0.000 n=30) 166.9n ± 0% -1.62% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=65536-4 194.0n ± 0% 198.8n ± 0% +2.45% (p=0.000 n=30) 195.0n ± 0% +0.52% (p=0.005 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=6-4 116.6n ± 0% 117.1n ± 0% +0.39% (p=0.000 n=30) 114.8n ± 4% ~ (p=0.283 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=64-4 181.7n ± 0% 184.3n ± 0% +1.40% (p=0.000 n=30) 179.1n ± 0% -1.46% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=65536-4 208.0n ± 0% 214.5n ± 0% +3.10% (p=0.000 n=30) 207.3n ± 0% -0.31% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=6-4 1.114µ ± 2% 1.096µ ± 1% -1.57% (p=0.000 n=30) 1.244µ ± 1% +11.67% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=64-4 1.259µ ± 1% 1.256µ ± 1% ~ (p=0.073 n=30) 1.252µ ± 0% -0.56% (p=0.004 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=65536-4 2.258µ ± 0% 2.256µ ± 0% ~ (p=0.888 n=30) 2.266µ ± 1% ~ (p=0.128 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=6-4 119.9n ± 0% 119.0n ± 0% -0.79% (p=0.000 n=30) 116.2n ± 3% -3.09% (p=0.009 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=64-4 183.1n ± 0% 186.7n ± 0% +1.97% (p=0.000 n=30) 180.2n ± 0% -1.58% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=65536-4 211.4n ± 0% 212.3n ± 0% +0.43% (p=0.000 n=30) 210.0n ± 0% -0.66% (p=0.000 n=30)
MapAssignFillHint/Key=int32/Elem=int32/len=6-4 46.09n ± 0% 46.75n ± 0% +1.41% (p=0.000 n=30) 45.37n ± 23% ~ (p=0.379 n=30)
MapAssignFillHint/Key=int32/Elem=int32/len=64-4 39.67n ± 0% 39.10n ± 0% -1.45% (p=0.000 n=30) 37.39n ± 0% -5.76% (p=0.000 n=30)
MapAssignFillHint/Key=int32/Elem=int32/len=65536-4 51.85n ± 0% 51.53n ± 0% -0.64% (p=0.000 n=30) 49.96n ± 0% -3.65% (p=0.000 n=30)
MapAssignFillHint/Key=int64/Elem=int64/len=6-4 48.39n ± 0% 48.71n ± 0% +0.66% (p=0.000 n=30) 56.34n ± 19% +16.45% (p=0.008 n=30)
MapAssignFillHint/Key=int64/Elem=int64/len=64-4 43.47n ± 0% 42.91n ± 0% -1.28% (p=0.000 n=30) 63.21n ± 11% +45.42% (p=0.000 n=30)
MapAssignFillHint/Key=int64/Elem=int64/len=65536-4 57.96n ± 1% 59.39n ± 1% +2.46% (p=0.000 n=30) 56.47n ± 1% -2.58% (p=0.000 n=30)
MapAssignFillHint/Key=int32/Elem=bigType/len=6-4 1.504µ ± 1% 1.490µ ± 0% -0.90% (p=0.002 n=30) 1.540µ ± 0% +2.43% (p=0.000 n=30)
MapAssignFillHint/Key=int32/Elem=bigType/len=64-4 1.610µ ± 0% 1.588µ ± 1% -1.40% (p=0.000 n=30) 1.640µ ± 0% +1.83% (p=0.000 n=30)
MapAssignFillHint/Key=int32/Elem=bigType/len=65536-4 2.224µ ± 0% 2.224µ ± 1% ~ (p=0.941 n=30) 2.214µ ± 1% ~ (p=0.090 n=30)
MapAssignFillHint/Key=int32/Elem=*int32/len=6-4 50.34n ± 0% 51.16n ± 0% +1.62% (p=0.000 n=30) 51.39n ± 25% ~ (p=1.000 n=30)
MapAssignFillHint/Key=int32/Elem=*int32/len=64-4 44.57n ± 0% 43.95n ± 0% -1.40% (p=0.000 n=30) 57.39n ± 15% +28.75% (p=0.000 n=30)
MapAssignFillHint/Key=int32/Elem=*int32/len=65536-4 74.64n ± 1% 73.89n ± 0% -1.00% (p=0.014 n=30) 71.48n ± 0% -4.23% (p=0.000 n=30)
MapAssignFillClear/Key=int32/Elem=int32/len=6-4 32.96n ± 0% 33.25n ± 0% +0.88% (p=0.000 n=30) 31.82n ± 0% -3.46% (p=0.000 n=30)
MapAssignFillClear/Key=int32/Elem=int32/len=64-4 35.58n ± 0% 34.93n ± 0% -1.84% (p=0.000 n=30) 33.41n ± 0% -6.10% (p=0.000 n=30)
MapAssignFillClear/Key=int32/Elem=int32/len=65536-4 50.02n ± 0% 48.65n ± 0% -2.76% (p=0.000 n=30) 47.25n ± 0% -5.55% (p=0.000 n=30)
MapAssignFillClear/Key=int64/Elem=int64/len=6-4 33.32n ± 1% 33.44n ± 0% +0.35% (p=0.027 n=30) 31.97n ± 0% -4.05% (p=0.000 n=30)
MapAssignFillClear/Key=int64/Elem=int64/len=64-4 36.00n ± 0% 35.67n ± 0% -0.89% (p=0.000 n=30) 33.98n ± 0% -5.60% (p=0.000 n=30)
MapAssignFillClear/Key=int64/Elem=int64/len=65536-4 50.98n ± 0% 50.81n ± 0% ~ (p=0.057 n=30) 49.23n ± 0% -3.42% (p=0.000 n=30)
MapAssignFillClear/Key=int32/Elem=bigType/len=6-4 1.466µ ± 1% 1.454µ ± 0% -0.82% (p=0.008 n=30) 1.506µ ± 1% +2.69% (p=0.000 n=30)
MapAssignFillClear/Key=int32/Elem=bigType/len=64-4 1.580µ ± 1% 1.562µ ± 1% -1.11% (p=0.007 n=30) 1.624µ ± 1% +2.82% (p=0.000 n=30)
MapAssignFillClear/Key=int32/Elem=bigType/len=65536-4 2.183µ ± 2% 2.187µ ± 2% ~ (p=0.982 n=30) 2.124µ ± 3% -2.70% (p=0.008 n=30)
MapAssignFillClear/Key=int32/Elem=*int32/len=6-4 33.16n ± 0% 33.41n ± 0% +0.75% (p=0.000 n=30) 32.08n ± 0% -3.24% (p=0.000 n=30)
MapAssignFillClear/Key=int32/Elem=*int32/len=64-4 36.52n ± 0% 35.78n ± 1% -2.01% (p=0.000 n=30) 34.22n ± 0% -6.28% (p=0.000 n=30)
MapAssignFillClear/Key=int32/Elem=*int32/len=65536-4 51.00n ± 0% 50.72n ± 0% -0.54% (p=0.000 n=30) 49.28n ± 0% -3.37% (p=0.000 n=30)
MapAssignAddition/Key=int32/Elem=int32/len=6-4 27.22n ± 0% 27.57n ± 0% +1.29% (p=0.000 n=30) 26.25n ± 0% -3.60% (p=0.000 n=30)
MapAssignAddition/Key=int32/Elem=int32/len=64-4 28.96n ± 1% 28.86n ± 1% ~ (p=0.460 n=30) 27.31n ± 1% -5.71% (p=0.000 n=30)
MapAssignAddition/Key=int32/Elem=int32/len=65536-4 45.14n ± 0% 44.25n ± 0% -1.96% (p=0.000 n=30) 43.95n ± 0% -2.65% (p=0.000 n=30)
MapAssignAddition/Key=int64/Elem=int64/len=6-4 27.18n ± 0% 27.54n ± 0% +1.34% (p=0.000 n=30) 25.64n ± 0% -5.67% (p=0.000 n=30)
MapAssignAddition/Key=int64/Elem=int64/len=64-4 29.41n ± 1% 28.59n ± 1% -2.79% (p=0.000 n=30) 27.04n ± 0% -8.06% (p=0.000 n=30)
MapAssignAddition/Key=int64/Elem=int64/len=65536-4 48.09n ± 0% 47.73n ± 0% -0.74% (p=0.000 n=30) 46.17n ± 0% -3.99% (p=0.000 n=30)
MapAssignAppend/Key=int32/Elem=[]int32/len=6-4 35.97n ± 0% 36.15n ± 0% +0.50% (p=0.001 n=30) 34.51n ± 0% -4.07% (p=0.000 n=30)
MapAssignAppend/Key=int32/Elem=[]int32/len=64-4 41.32n ± 1% 41.04n ± 1% -0.70% (p=0.012 n=30) 40.32n ± 2% -2.42% (p=0.000 n=30)
MapAssignAppend/Key=int32/Elem=[]int32/len=65536-4 105.8n ± 0% 105.4n ± 0% -0.38% (p=0.004 n=30) 104.5n ± 0% -1.18% (p=0.000 n=30)
MapAssignAppend/Key=int64/Elem=[]int32/len=6-4 36.48n ± 0% 36.62n ± 0% ~ (p=0.176 n=30) 34.77n ± 1% -4.69% (p=0.000 n=30)
MapAssignAppend/Key=int64/Elem=[]int32/len=64-4 41.41n ± 1% 40.77n ± 1% -1.56% (p=0.000 n=30) 39.28n ± 0% -5.16% (p=0.000 n=30)
MapAssignAppend/Key=int64/Elem=[]int32/len=65536-4 105.7n ± 0% 105.9n ± 0% ~ (p=0.495 n=30) 104.5n ± 0% -1.09% (p=0.000 n=30)
geomean 110.5n 110.5n -0.06% 109.9n -0.57%
│ base.stat │ asm.stat │ simd-intrinsics.stat │
│ p100-sec/op │ p100-sec/op vs base │ p100-sec/op vs base │
MapAssignGrowLatency/Key=int32/Elem=int32/len=6-4 478.9µ ± 1% 478.8µ ± 0% ~ (p=0.982 n=30) 478.7µ ± 0% ~ (p=0.654 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=64-4 479.3µ ± 1% 482.5µ ± 1% +0.67% (p=0.039 n=30) 483.3µ ± 1% +0.85% (p=0.006 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=65536-4 512.1µ ± 1% 511.7µ ± 0% ~ (p=0.676 n=30) 511.2µ ± 1% ~ (p=0.335 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=6-4 476.0µ ± 1% 478.4µ ± 0% ~ (p=0.192 n=30) 477.3µ ± 0% ~ (p=0.254 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=64-4 474.9µ ± 0% 476.8µ ± 0% +0.39% (p=0.022 n=30) 469.9µ ± 74% -1.05% (p=0.003 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=65536-4 517.0µ ± 1% 517.0µ ± 1% ~ (p=0.854 n=30) 513.4µ ± 1% ~ (p=0.091 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=6-4 188.2µ ± 67% 148.7µ ± 38% ~ (p=0.116 n=30) 159.5µ ± 18% ~ (p=0.307 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=64-4 313.6µ ± 37% 287.9µ ± 35% ~ (p=0.936 n=30) 175.5µ ± 18% -44.03% (p=0.001 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=65536-4 510.6µ ± 1% 506.8µ ± 1% ~ (p=0.843 n=30) 517.0µ ± 9% ~ (p=0.730 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=6-4 475.6µ ± 0% 475.5µ ± 0% ~ (p=0.832 n=30) 475.9µ ± 1% ~ (p=0.552 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=64-4 474.2µ ± 1% 471.9µ ± 1% ~ (p=0.124 n=30) 346.7µ ± 55% ~ (p=0.085 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=65536-4 536.3µ ± 3% 520.8µ ± 4% ~ (p=0.485 n=30) 518.4µ ± 4% ~ (p=0.321 n=30)
geomean 438.2µ 425.6µ -2.86% 400.2µ -8.67%
│ base.stat │ asm.stat │ simd-intrinsics.stat │
│ p50-sec/op │ p50-sec/op vs base │ p50-sec/op vs base │
MapAssignGrowLatency/Key=int32/Elem=int32/len=6-4 47.00n ± 0% 47.00n ± 0% 0.00% (p=0.047 n=30) 45.00n ± 0% -4.26% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=64-4 54.00n ± 0% 53.00n ± 0% -1.85% (p=0.000 n=30) 51.00n ± 0% -5.56% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=65536-4 77.00n ± 0% 76.00n ± 1% -1.30% (p=0.000 n=30) 75.00n ± 0% -2.60% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=6-4 48.00n ± 2% 48.00n ± 0% 0.00% (p=0.000 n=30) 45.00n ± 0% -6.25% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=64-4 54.00n ± 0% 55.00n ± 2% +1.85% (p=0.000 n=30) 51.00n ± 0% -5.56% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=65536-4 80.00n ± 0% 80.00n ± 0% 0.00% (p=0.017 n=30) 78.00n ± 0% -2.50% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=6-4 819.0n ± 0% 811.0n ± 0% -0.98% (p=0.000 n=30) 918.5n ± 0% +12.15% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=64-4 910.0n ± 1% 911.0n ± 1% ~ (p=0.801 n=30) 908.0n ± 1% ~ (p=0.386 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=65536-4 1.786µ ± 0% 1.794µ ± 1% ~ (p=0.615 n=30) 1.799µ ± 1% ~ (p=0.198 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=6-4 48.00n ± 0% 48.00n ± 0% ~ (p=1.000 n=30) ¹ 45.00n ± 0% -6.25% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=64-4 54.00n ± 0% 55.00n ± 0% +1.85% (p=0.000 n=30) 51.00n ± 0% -5.56% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=65536-4 82.00n ± 0% 81.00n ± 0% -1.22% (p=0.000 n=30) 80.00n ± 0% -2.44% (p=0.000 n=30)
geomean 122.5n 122.4n -0.10% 119.5n -2.47%
¹ all samples are equal
│ base.stat │ asm.stat │ simd-intrinsics.stat │
│ p99-sec/op │ p99-sec/op vs base │ p99-sec/op vs base │
MapAssignGrowLatency/Key=int32/Elem=int32/len=6-4 135.5n ± 3% 130.0n ± 8% -4.06% (p=0.000 n=30) 117.0n ± 3% ~ (p=0.073 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=64-4 1.942µ ± 0% 2.025µ ± 0% +4.27% (p=0.000 n=30) 1.944µ ± 0% +0.13% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=65536-4 177.0n ± 1% 171.0n ± 0% -3.39% (p=0.000 n=30) 192.0n ± 1% +8.47% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=6-4 182.0n ± 0% 181.5n ± 0% -0.27% (p=0.002 n=30) 178.0n ± 1% -2.20% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=64-4 2.421µ ± 0% 2.509µ ± 0% +3.63% (p=0.000 n=30) 2.424µ ± 0% +0.12% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=65536-4 192.0n ± 1% 193.0n ± 0% ~ (p=0.384 n=30) 187.0n ± 0% -2.60% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=6-4 5.293µ ± 1% 5.170µ ± 1% -2.33% (p=0.000 n=30) 5.656µ ± 1% +6.85% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=64-4 5.973µ ± 1% 5.910µ ± 0% -1.05% (p=0.000 n=30) 5.981µ ± 0% ~ (p=0.579 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=65536-4 9.300µ ± 0% 9.255µ ± 0% ~ (p=0.363 n=30) 9.302µ ± 1% ~ (p=0.549 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=6-4 190.0n ± 1% 186.0n ± 1% -2.11% (p=0.000 n=30) 182.0n ± 1% -4.21% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=64-4 2.419µ ± 0% 2.504µ ± 0% +3.51% (p=0.000 n=30) 2.421µ ± 0% +0.08% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=65536-4 196.0n ± 0% 196.0n ± 0% ~ (p=0.632 n=30) 191.0n ± 1% -2.55% (p=0.000 n=30)
geomean 828.3n 826.9n -0.18% 820.7n -0.93%
│ base.stat │ asm.stat │ simd-intrinsics.stat │
│ p99.9-sec/op │ p99.9-sec/op vs base │ p99.9-sec/op vs base │
MapAssignGrowLatency/Key=int32/Elem=int32/len=6-4 761.0n ± 1% 754.0n ± 1% -0.92% (p=0.003 n=30) 748.0n ± 1% -1.71% (p=0.001 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=64-4 2.794µ ± 1% 2.854µ ± 0% +2.17% (p=0.000 n=30) 2.753µ ± 1% -1.47% (p=0.007 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=65536-4 33.79µ ± 0% 34.44µ ± 0% +1.92% (p=0.000 n=30) 34.22µ ± 0% +1.27% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=6-4 981.0n ± 1% 957.0n ± 0% -2.45% (p=0.000 n=30) 956.0n ± 1% -2.55% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=64-4 3.667µ ± 1% 3.705µ ± 1% ~ (p=0.209 n=30) 3.746µ ± 1% +2.15% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=65536-4 38.02µ ± 0% 40.99µ ± 0% +7.80% (p=0.000 n=30) 38.49µ ± 0% +1.23% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=6-4 26.73µ ± 8% 25.65µ ± 1% -4.04% (p=0.000 n=30) 28.77µ ± 4% +7.62% (p=0.001 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=64-4 31.42µ ± 1% 30.65µ ± 1% -2.45% (p=0.000 n=30) 30.85µ ± 0% -1.81% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=65536-4 68.13µ ± 2% 65.55µ ± 4% ~ (p=0.168 n=30) 67.19µ ± 5% ~ (p=0.081 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=6-4 1.114µ ± 1% 1.087µ ± 0% -2.42% (p=0.000 n=30) 1.094µ ± 1% -1.75% (p=0.006 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=64-4 3.762µ ± 0% 3.815µ ± 0% +1.41% (p=0.000 n=30) 3.770µ ± 0% ~ (p=0.496 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=65536-4 38.18µ ± 0% 38.88µ ± 0% +1.83% (p=0.000 n=30) 38.56µ ± 0% +0.99% (p=0.000 n=30)
geomean 8.181µ 8.177µ -0.04% 8.197µ +0.20%
│ base.stat │ asm.stat │ simd-intrinsics.stat │
│ p99.99-sec/op │ p99.99-sec/op vs base │ p99.99-sec/op vs base │
MapAssignGrowLatency/Key=int32/Elem=int32/len=6-4 4.621µ ± 3% 4.452µ ± 3% -3.67% (p=0.005 n=30) 4.365µ ± 1% -5.55% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=64-4 6.991µ ± 0% 7.157µ ± 1% +2.38% (p=0.000 n=30) 7.067µ ± 1% +1.09% (p=0.004 n=30)
MapAssignGrowLatency/Key=int32/Elem=int32/len=65536-4 40.84µ ± 1% 41.55µ ± 1% +1.72% (p=0.000 n=30) 41.45µ ± 1% +1.48% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=6-4 5.418µ ± 4% 5.086µ ± 1% -6.13% (p=0.000 n=30) 5.086µ ± 2% -6.12% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=64-4 7.858µ ± 1% 7.995µ ± 1% +1.75% (p=0.000 n=30) 8.031µ ± 1% +2.21% (p=0.000 n=30)
MapAssignGrowLatency/Key=int64/Elem=int64/len=65536-4 49.20µ ± 1% 52.58µ ± 1% +6.87% (p=0.000 n=30) 50.36µ ± 1% +2.37% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=6-4 55.21µ ± 24% 42.44µ ± 7% -23.13% (p=0.000 n=30) 49.61µ ± 33% ~ (p=0.644 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=64-4 67.53µ ± 4% 52.22µ ± 31% -22.67% (p=0.006 n=30) 56.80µ ± 16% -15.88% (p=0.003 n=30)
MapAssignGrowLatency/Key=int32/Elem=bigType/len=65536-4 470.5µ ± 0% 470.4µ ± 0% ~ (p=0.853 n=30) 470.7µ ± 0% ~ (p=0.158 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=6-4 5.369µ ± 3% 5.035µ ± 2% -6.22% (p=0.000 n=30) 5.269µ ± 3% -1.87% (p=0.039 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=64-4 7.932µ ± 1% 8.045µ ± 1% +1.42% (p=0.000 n=30) 8.066µ ± 0% +1.70% (p=0.000 n=30)
MapAssignGrowLatency/Key=int32/Elem=*int32/len=65536-4 50.39µ ± 1% 51.18µ ± 0% +1.56% (p=0.000 n=30) 50.74µ ± 0% +0.69% (p=0.001 n=30)
geomean 21.61µ 20.68µ -4.33% 21.04µ -2.66%
Change-Id: I7d48651c22eb61b887ffda08287945f419ebff3b
Reviewed-on: https://go-review.googlesource.com/c/go/+/753740
LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )