@@ -13,111 +13,68 @@ Tested and compared via benchstat (thx to https://www.rodolfocarvalho.net/blog/g
1313
1414---
1515
16- MacBookPro18,4 with M1 Max:
17-
18- ```
19- goos: darwin
20- goarch: arm64
21- pkg: github.com/fionera/haproxy-go/spop/benchmarks
22- BenchmarkCriteo-10 11582493 118.7 ns/op 264 B/op 12 allocs/op
23- BenchmarkCriteo-10 10842691 114.7 ns/op 263 B/op 12 allocs/op
24- BenchmarkCriteo-10 10350162 112.8 ns/op 263 B/op 12 allocs/op
25- BenchmarkCriteo-10 10490358 111.8 ns/op 264 B/op 12 allocs/op
26- BenchmarkCriteo-10 9671280 123.9 ns/op 264 B/op 12 allocs/op
27- BenchmarkNegasus-10 3686066 337.9 ns/op 752 B/op 18 allocs/op
28- BenchmarkNegasus-10 3627370 343.7 ns/op 752 B/op 18 allocs/op
29- BenchmarkNegasus-10 3602414 336.8 ns/op 752 B/op 18 allocs/op
30- BenchmarkNegasus-10 3396264 351.0 ns/op 752 B/op 18 allocs/op
31- BenchmarkNegasus-10 3401060 348.7 ns/op 752 B/op 18 allocs/op
32- BenchmarkFionera-10 68821312 27.22 ns/op 0 B/op 0 allocs/op
33- BenchmarkFionera-10 59779068 22.84 ns/op 0 B/op 0 allocs/op
34- BenchmarkFionera-10 65963814 22.08 ns/op 0 B/op 0 allocs/op
35- BenchmarkFionera-10 89442937 31.96 ns/op 0 B/op 0 allocs/op
36- BenchmarkFionera-10 88215834 18.13 ns/op 0 B/op 0 allocs/op
37- PASS
38- ok github.com/fionera/haproxy-go/spop/benchmarks 23.882s
39- goos: darwin
40- goarch: arm64
41- pkg: github.com/fionera/haproxy-go/spop/benchmarks
42- │ /dev/stdin │
43- │ sec/op │
44- Criteo-10 114.7n ± ∞ ¹
45- Negasus-10 343.7n ± ∞ ¹
46- Fionera-10 22.84n ± ∞ ¹
47- geomean 96.56n
48- ¹ need >= 6 samples for confidence interval at level 0.95
49-
50- │ /dev/stdin │
51- │ B/op │
52- Criteo-10 264.0 ± ∞ ¹
53- Negasus-10 752.0 ± ∞ ¹
54- Fionera-10 0.000 ± ∞ ¹
55- geomean ²
56- ¹ need >= 6 samples for confidence interval at level 0.95
57- ² summaries must be >0 to compute geomean
58-
59- │ /dev/stdin │
60- │ allocs/op │
61- Criteo-10 12.00 ± ∞ ¹
62- Negasus-10 18.00 ± ∞ ¹
63- Fionera-10 0.000 ± ∞ ¹
64- geomean ²
65- ¹ need >= 6 samples for confidence interval at level 0.95
66- ² summaries must be >0 to compute geomean
67- ```
68-
69- ---
70-
7116```
7217goos: linux
7318goarch: amd64
74- pkg: github.com/fionera /haproxy-go/spop/benchmarks
19+ pkg: github.com/dropmorepackets /haproxy-go/spop/benchmarks
7520cpu: AMD EPYC 7502P 32-Core Processor
76- BenchmarkCriteo-48 5710826 253.1 ns/op 263 B/op 12 allocs/op
77- BenchmarkCriteo-48 4294416 265.9 ns/op 263 B/op 12 allocs/op
78- BenchmarkCriteo-48 4285262 280.6 ns/op 263 B/op 12 allocs/op
79- BenchmarkCriteo-48 4314597 274.8 ns/op 263 B/op 12 allocs/op
80- BenchmarkCriteo-48 4190436 290.9 ns/op 263 B/op 12 allocs/op
81- BenchmarkNegasus-48 1235547 900.0 ns/op 756 B/op 18 allocs/op
82- BenchmarkNegasus-48 1693122 688.2 ns/op 755 B/op 18 allocs/op
83- BenchmarkNegasus-48 1723869 692.1 ns/op 755 B/op 18 allocs/op
84- BenchmarkNegasus-48 1751373 719.4 ns/op 755 B/op 18 allocs/op
85- BenchmarkNegasus-48 1700374 663.0 ns/op 755 B/op 18 allocs/op
86- BenchmarkFionera-48 111115724 10.79 ns/op 0 B/op 0 allocs/op
87- BenchmarkFionera-48 127499919 9.095 ns/op 0 B/op 0 allocs/op
88- BenchmarkFionera-48 97899013 10.25 ns/op 0 B/op 0 allocs/op
89- BenchmarkFionera-48 146508001 9.690 ns/op 0 B/op 0 allocs/op
90- BenchmarkFionera-48 124598562 11.72 ns/op 0 B/op 0 allocs/op
21+ BenchmarkCriteo-48 5874009 245.8 ns/op 263 B/op 12 allocs/op
22+ BenchmarkCriteo-48 4504574 266.3 ns/op 263 B/op 12 allocs/op
23+ BenchmarkCriteo-48 4511300 272.8 ns/op 263 B/op 12 allocs/op
24+ BenchmarkCriteo-48 4336767 279.2 ns/op 263 B/op 12 allocs/op
25+ BenchmarkCriteo-48 4241575 267.2 ns/op 263 B/op 12 allocs/op
26+ BenchmarkCriteo-48 4719711 274.6 ns/op 263 B/op 12 allocs/op
27+ BenchmarkCriteo-48 4419110 255.4 ns/op 263 B/op 12 allocs/op
28+ BenchmarkCriteo-48 5013790 270.8 ns/op 263 B/op 12 allocs/op
29+ BenchmarkCriteo-48 4283295 267.7 ns/op 263 B/op 12 allocs/op
30+ BenchmarkCriteo-48 4446008 270.4 ns/op 263 B/op 12 allocs/op
31+ BenchmarkNegasus-48 1668440 725.3 ns/op 755 B/op 18 allocs/op
32+ BenchmarkNegasus-48 1583863 763.6 ns/op 755 B/op 18 allocs/op
33+ BenchmarkNegasus-48 1592184 730.7 ns/op 755 B/op 18 allocs/op
34+ BenchmarkNegasus-48 1579813 755.2 ns/op 755 B/op 18 allocs/op
35+ BenchmarkNegasus-48 1626435 731.5 ns/op 755 B/op 18 allocs/op
36+ BenchmarkNegasus-48 1656385 751.8 ns/op 755 B/op 18 allocs/op
37+ BenchmarkNegasus-48 1610750 735.7 ns/op 755 B/op 18 allocs/op
38+ BenchmarkNegasus-48 1632219 750.6 ns/op 755 B/op 18 allocs/op
39+ BenchmarkNegasus-48 1685029 709.3 ns/op 755 B/op 18 allocs/op
40+ BenchmarkNegasus-48 1649761 730.2 ns/op 755 B/op 18 allocs/op
41+ BenchmarkDropMorePackets-48 120675940 10.50 ns/op 0 B/op 0 allocs/op
42+ BenchmarkDropMorePackets-48 93222517 16.45 ns/op 0 B/op 0 allocs/op
43+ BenchmarkDropMorePackets-48 100000000 14.19 ns/op 0 B/op 0 allocs/op
44+ BenchmarkDropMorePackets-48 93988230 11.41 ns/op 0 B/op 0 allocs/op
45+ BenchmarkDropMorePackets-48 97593783 13.23 ns/op 0 B/op 0 allocs/op
46+ BenchmarkDropMorePackets-48 79098175 16.19 ns/op 0 B/op 0 allocs/op
47+ BenchmarkDropMorePackets-48 95429886 13.68 ns/op 0 B/op 0 allocs/op
48+ BenchmarkDropMorePackets-48 119408089 13.65 ns/op 0 B/op 0 allocs/op
49+ BenchmarkDropMorePackets-48 80430522 17.22 ns/op 0 B/op 0 allocs/op
50+ BenchmarkDropMorePackets-48 111808652 11.97 ns/op 0 B/op 0 allocs/op
9151PASS
92- ok github.com/fionera /haproxy-go/spop/benchmarks 27.312s
52+ ok github.com/dropmorepackets /haproxy-go/spop/benchmarks 51.642s
9353goos: linux
9454goarch: amd64
95- pkg: github.com/fionera /haproxy-go/spop/benchmarks
55+ pkg: github.com/dropmorepackets /haproxy-go/spop/benchmarks
9656cpu: AMD EPYC 7502P 32-Core Processor
97- │ /dev/stdin │
98- │ sec/op │
99- Criteo-48 274.8n ± ∞ ¹
100- Negasus-48 692.1n ± ∞ ¹
101- Fionera-48 10.25n ± ∞ ¹
102- geomean 124.9n
103- ¹ need >= 6 samples for confidence interval at level 0.95
57+ │ /dev/stdin │
58+ │ sec/op │
59+ Criteo-48 269.0n ± 5%
60+ Negasus-48 733.6n ± 3%
61+ DropMorePackets-48 13.66n ± 20%
62+ geomean 139.2n
10463
105- │ /dev/stdin │
106- │ B/op │
107- Criteo-48 263.0 ± ∞ ¹
108- Negasus-48 755.0 ± ∞ ¹
109- Fionera-48 0.000 ± ∞ ¹
110- geomean ²
111- ¹ need >= 6 samples for confidence interval at level 0.95
112- ² summaries must be >0 to compute geomean
64+ │ /dev/stdin │
65+ │ B/op │
66+ Criteo-48 263.0 ± 0%
67+ Negasus-48 755.0 ± 0%
68+ DropMorePackets-48 0.000 ± 0%
69+ geomean ¹
70+ ¹ summaries must be >0 to compute geomean
11371
114- │ /dev/stdin │
115- │ allocs/op │
116- Criteo-48 12.00 ± ∞ ¹
117- Negasus-48 18.00 ± ∞ ¹
118- Fionera-48 0.000 ± ∞ ¹
119- geomean ²
120- ¹ need >= 6 samples for confidence interval at level 0.95
121- ² summaries must be >0 to compute geomean
72+ │ /dev/stdin │
73+ │ allocs/op │
74+ Criteo-48 12.00 ± 0%
75+ Negasus-48 18.00 ± 0%
76+ DropMorePackets-48 0.000 ± 0%
77+ geomean ¹
78+ ¹ summaries must be >0 to compute geomean
12279```
12380
0 commit comments