identity: Use xxHash in hashstructure (note)

```
name                 old time/op    new time/op    delta
HashString/n28-10       133ns ± 9%     107ns ±10%  -19.58%  (p=0.029 n=4+4)
HashString/n112-10      243ns ± 5%     121ns ± 4%  -50.08%  (p=0.029 n=4+4)
HashString/n448-10      698ns ± 3%     174ns ± 5%  -75.02%  (p=0.029 n=4+4)
HashString/n1792-10    2.58µs ± 4%    0.38µs ± 4%  -85.11%  (p=0.029 n=4+4)
HashString/n7168-10    10.0µs ± 3%     1.3µs ± 4%  -86.91%  (p=0.029 n=4+4)

name                 old alloc/op   new alloc/op   delta
HashString/n28-10       80.0B ± 0%     72.0B ± 0%  -10.00%  (p=0.029 n=4+4)
HashString/n112-10       160B ± 0%      152B ± 0%   -5.00%  (p=0.029 n=4+4)
HashString/n448-10       496B ± 0%      488B ± 0%   -1.61%  (p=0.029 n=4+4)
HashString/n1792-10    1.84kB ± 0%    1.83kB ± 0%   -0.43%  (p=0.029 n=4+4)
HashString/n7168-10    8.24kB ± 0%    8.23kB ± 0%   -0.06%  (p=0.029 n=4+4)

name                 old allocs/op  new allocs/op  delta
HashString/n28-10        4.00 ± 0%      3.00 ± 0%  -25.00%  (p=0.029 n=4+4)
HashString/n112-10       4.00 ± 0%      3.00 ± 0%  -25.00%  (p=0.029 n=4+4)
HashString/n448-10       4.00 ± 0%      3.00 ± 0%  -25.00%  (p=0.029 n=4+4)
HashString/n1792-10      4.00 ± 0%      3.00 ± 0%  -25.00%  (p=0.029 n=4+4)
HashString/n7168-10      4.00 ± 0%      3.00 ± 0%  -25.00%  (p=0.029 n=4+4)
```
This commit is contained in:
Bjørn Erik Pedersen
2024-07-30 10:26:10 +02:00
parent 78db8aebca
commit 2babd6404e
8 changed files with 40 additions and 18 deletions

View File

@@ -127,10 +127,10 @@ func TestRemoteResourceKeys(t *testing.T) {
c.Assert(got2, qt.Equals, expect2)
}
check("foo", nil, "10276615683545312752", "10276615683545312752")
check("foo", map[string]any{"bar": "baz"}, "9898282343037894676", "9898282343037894676")
check("foo", map[string]any{"key": "1234", "bar": "baz"}, "14904296279238663669", "9898282343037894676")
check("foo", map[string]any{"key": "12345", "bar": "baz"}, "12191037851845371770", "9898282343037894676")
check("asdf", map[string]any{"key": "1234", "bar": "asdf"}, "14904296279238663669", "3005610248808565917")
check("asdf", map[string]any{"key": "12345", "bar": "asdf"}, "12191037851845371770", "3005610248808565917")
check("foo", nil, "7763396052142361238", "7763396052142361238")
check("foo", map[string]any{"bar": "baz"}, "5783339285578751849", "5783339285578751849")
check("foo", map[string]any{"key": "1234", "bar": "baz"}, "15578353952571222948", "5783339285578751849")
check("foo", map[string]any{"key": "12345", "bar": "baz"}, "14335752410685132726", "5783339285578751849")
check("asdf", map[string]any{"key": "1234", "bar": "asdf"}, "15578353952571222948", "15615023578599429261")
check("asdf", map[string]any{"key": "12345", "bar": "asdf"}, "14335752410685132726", "15615023578599429261")
}