@@ -66,69 +66,71 @@ Please see http://godoc.org/gopkg.in/go-playground/validator.v9 for detailed usa
6666
6767Benchmarks
6868------
69- ###### Run on MacBook Pro (15-inch, 2017) Go version go1.9.2 darwin/amd64
69+ ###### Run on MacBook Pro (15-inch, 2017) Go version go1.9.4 darwin/amd64
7070``` go
71- go test -bench=. -benchmem=true
72- BenchmarkFieldSuccess-8 20000000 79.9 ns/op 0 B /op 0 allocs/op
73- BenchmarkFieldSuccessParallel-8 50000000 25.0 ns/op 0 B /op 0 allocs/op
74- BenchmarkFieldFailure-8 5000000 281 ns/op 208 B /op 4 allocs/op
75- BenchmarkFieldFailureParallel-8 20000000 97.0 ns/op 208 B /op 4 allocs/op
76- BenchmarkFieldArrayDiveSuccess-8 3000000 591 ns/op 201 B /op 11 allocs/op
77- BenchmarkFieldArrayDiveSuccessParallel-8 10000000 195 ns/op 201 B /op 11 allocs/op
78- BenchmarkFieldArrayDiveFailure-8 2000000 878 ns/op 412 B /op 16 allocs/op
79- BenchmarkFieldArrayDiveFailureParallel-8 5000000 274 ns/op 413 B /op 16 allocs/op
80- BenchmarkFieldMapDiveSuccess-8 1000000 1279 ns/op 432 B /op 18 allocs/op
81- BenchmarkFieldMapDiveSuccessParallel-8 5000000 401 ns/op 432 B /op 18 allocs/op
82- BenchmarkFieldMapDiveFailure-8 1000000 1060 ns/op 512 B /op 16 allocs/op
83- BenchmarkFieldMapDiveFailureParallel-8 5000000 334 ns/op 512 B /op 16 allocs/op
84- BenchmarkFieldMapDiveWithKeysSuccess-8 1000000 1462 ns/op 480 B /op 21 allocs/op
85- BenchmarkFieldMapDiveWithKeysSuccessParallel-8 3000000 463 ns/op 480 B /op 21 allocs/op
86- BenchmarkFieldMapDiveWithKeysFailure-8 1000000 1414 ns/op 721 B /op 21 allocs/op
87- BenchmarkFieldMapDiveWithKeysFailureParallel-8 3000000 446 ns/op 721 B /op 21 allocs/op
88- BenchmarkFieldCustomTypeSuccess-8 10000000 211 ns/op 32 B /op 2 allocs/op
89- BenchmarkFieldCustomTypeSuccessParallel-8 20000000 65.9 ns/op 32 B /op 2 allocs/op
90- BenchmarkFieldCustomTypeFailure-8 5000000 270 ns/op 208 B /op 4 allocs/op
91- BenchmarkFieldCustomTypeFailureParallel-8 20000000 93.3 ns/op 208 B /op 4 allocs/op
92- BenchmarkFieldOrTagSuccess-8 2000000 729 ns/op 16 B /op 1 allocs/op
93- BenchmarkFieldOrTagSuccessParallel-8 5000000 367 ns/op 16 B /op 1 allocs/op
94- BenchmarkFieldOrTagFailure-8 3000000 472 ns/op 224 B /op 5 allocs/op
95- BenchmarkFieldOrTagFailureParallel-8 5000000 373 ns/op 224 B /op 5 allocs/op
96- BenchmarkStructLevelValidationSuccess-8 10000000 201 ns/op 32 B /op 2 allocs/op
97- BenchmarkStructLevelValidationSuccessParallel-8 20000000 66.3 ns/op 32 B /op 2 allocs/op
98- BenchmarkStructLevelValidationFailure-8 3000000 468 ns/op 304 B /op 8 allocs/op
99- BenchmarkStructLevelValidationFailureParallel-8 10000000 172 ns/op 304 B /op 8 allocs/op
100- BenchmarkStructSimpleCustomTypeSuccess-8 5000000 376 ns/op 32 B /op 2 allocs/op
101- BenchmarkStructSimpleCustomTypeSuccessParallel-8 20000000 126 ns/op 32 B /op 2 allocs/op
102- BenchmarkStructSimpleCustomTypeFailure-8 2000000 646 ns/op 424 B /op 9 allocs/op
103- BenchmarkStructSimpleCustomTypeFailureParallel-8 10000000 240 ns/op 440 B /op 10 allocs/op
104- BenchmarkStructFilteredSuccess-8 3000000 582 ns/op 288 B /op 9 allocs/op
105- BenchmarkStructFilteredSuccessParallel-8 10000000 198 ns/op 288 B /op 9 allocs/op
106- BenchmarkStructFilteredFailure-8 3000000 447 ns/op 256 B /op 7 allocs/op
107- BenchmarkStructFilteredFailureParallel-8 10000000 156 ns/op 256 B /op 7 allocs/op
108- BenchmarkStructPartialSuccess-8 3000000 536 ns/op 256 B /op 6 allocs/op
109- BenchmarkStructPartialSuccessParallel-8 10000000 175 ns/op 256 B /op 6 allocs/op
110- BenchmarkStructPartialFailure-8 2000000 738 ns/op 480 B /op 11 allocs/op
111- BenchmarkStructPartialFailureParallel-8 5000000 256 ns/op 480 B /op 11 allocs/op
112- BenchmarkStructExceptSuccess-8 2000000 835 ns/op 496 B /op 12 allocs/op
113- BenchmarkStructExceptSuccessParallel-8 10000000 163 ns/op 240 B /op 5 allocs/op
114- BenchmarkStructExceptFailure-8 2000000 682 ns/op 464 B /op 10 allocs/op
115- BenchmarkStructExceptFailureParallel-8 10000000 244 ns/op 464 B /op 10 allocs/op
116- BenchmarkStructSimpleCrossFieldSuccess-8 5000000 392 ns/op 72 B /op 3 allocs/op
117- BenchmarkStructSimpleCrossFieldSuccessParallel-8 20000000 126 ns/op 72 B /op 3 allocs/op
118- BenchmarkStructSimpleCrossFieldFailure-8 2000000 611 ns/op 304 B /op 8 allocs/op
119- BenchmarkStructSimpleCrossFieldFailureParallel-8 10000000 214 ns/op 304 B /op 8 allocs/op
120- BenchmarkStructSimpleCrossStructCrossFieldSuccess-8 3000000 567 ns/op 80 B /op 4 allocs/op
121- BenchmarkStructSimpleCrossStructCrossFieldSuccessParallel-8 10000000 177 ns/op 80 B /op 4 allocs/op
122- BenchmarkStructSimpleCrossStructCrossFieldFailure-8 2000000 807 ns/op 320 B /op 9 allocs/op
123- BenchmarkStructSimpleCrossStructCrossFieldFailureParallel-8 5000000 268 ns/op 320 B /op 9 allocs/op
124- BenchmarkStructSimpleSuccess-8 5000000 256 ns/op 0 B /op 0 allocs/op
125- BenchmarkStructSimpleSuccessParallel-8 20000000 76.3 ns/op 0 B /op 0 allocs/op
126- BenchmarkStructSimpleFailure-8 2000000 625 ns/op 424 B /op 9 allocs/op
127- BenchmarkStructSimpleFailureParallel-8 10000000 219 ns/op 424 B /op 9 allocs/op
128- BenchmarkStructComplexSuccess-8 1000000 1431 ns/op 128 B /op 8 allocs/op
129- BenchmarkStructComplexSuccessParallel-8 3000000 427 ns/op 128 B /op 8 allocs/op
130- BenchmarkStructComplexFailure-8 300000 4065 ns/op 3041 B /op 53 allocs/op
131- BenchmarkStructComplexFailureParallel-8 1000000 1478 ns/op 3041 B /op 53 allocs/op
71+ goos: darwin
72+ goarch: amd64
73+ pkg: github.com /go -playground/validator
74+ BenchmarkFieldSuccess-8 20000000 86.4 ns/op 0 B /op 0 allocs/op
75+ BenchmarkFieldSuccessParallel-8 50000000 27.6 ns/op 0 B /op 0 allocs/op
76+ BenchmarkFieldFailure-8 5000000 297 ns/op 208 B /op 4 allocs/op
77+ BenchmarkFieldFailureParallel-8 20000000 107 ns/op 208 B /op 4 allocs/op
78+ BenchmarkFieldArrayDiveSuccess-8 2000000 618 ns/op 201 B /op 11 allocs/op
79+ BenchmarkFieldArrayDiveSuccessParallel-8 10000000 225 ns/op 201 B /op 11 allocs/op
80+ BenchmarkFieldArrayDiveFailure-8 2000000 863 ns/op 412 B /op 16 allocs/op
81+ BenchmarkFieldArrayDiveFailureParallel-8 5000000 322 ns/op 413 B /op 16 allocs/op
82+ BenchmarkFieldMapDiveSuccess-8 1000000 1336 ns/op 432 B /op 18 allocs/op
83+ BenchmarkFieldMapDiveSuccessParallel-8 3000000 474 ns/op 432 B /op 18 allocs/op
84+ BenchmarkFieldMapDiveFailure-8 1000000 1103 ns/op 512 B /op 16 allocs/op
85+ BenchmarkFieldMapDiveFailureParallel-8 5000000 412 ns/op 512 B /op 16 allocs/op
86+ BenchmarkFieldMapDiveWithKeysSuccess-8 1000000 1572 ns/op 480 B /op 21 allocs/op
87+ BenchmarkFieldMapDiveWithKeysSuccessParallel-8 3000000 615 ns/op 480 B /op 21 allocs/op
88+ BenchmarkFieldMapDiveWithKeysFailure-8 1000000 1438 ns/op 721 B /op 21 allocs/op
89+ BenchmarkFieldMapDiveWithKeysFailureParallel-8 3000000 543 ns/op 721 B /op 21 allocs/op
90+ BenchmarkFieldCustomTypeSuccess-8 10000000 230 ns/op 32 B /op 2 allocs/op
91+ BenchmarkFieldCustomTypeSuccessParallel-8 20000000 82.5 ns/op 32 B /op 2 allocs/op
92+ BenchmarkFieldCustomTypeFailure-8 5000000 284 ns/op 208 B /op 4 allocs/op
93+ BenchmarkFieldCustomTypeFailureParallel-8 20000000 118 ns/op 208 B /op 4 allocs/op
94+ BenchmarkFieldOrTagSuccess-8 2000000 824 ns/op 16 B /op 1 allocs/op
95+ BenchmarkFieldOrTagSuccessParallel-8 3000000 472 ns/op 16 B /op 1 allocs/op
96+ BenchmarkFieldOrTagFailure-8 3000000 487 ns/op 224 B /op 5 allocs/op
97+ BenchmarkFieldOrTagFailureParallel-8 5000000 405 ns/op 224 B /op 5 allocs/op
98+ BenchmarkStructLevelValidationSuccess-8 10000000 214 ns/op 32 B /op 2 allocs/op
99+ BenchmarkStructLevelValidationSuccessParallel-8 20000000 78.0 ns/op 32 B /op 2 allocs/op
100+ BenchmarkStructLevelValidationFailure-8 3000000 475 ns/op 304 B /op 8 allocs/op
101+ BenchmarkStructLevelValidationFailureParallel-8 10000000 200 ns/op 304 B /op 8 allocs/op
102+ BenchmarkStructSimpleCustomTypeSuccess-8 3000000 403 ns/op 32 B /op 2 allocs/op
103+ BenchmarkStructSimpleCustomTypeSuccessParallel-8 10000000 143 ns/op 32 B /op 2 allocs/op
104+ BenchmarkStructSimpleCustomTypeFailure-8 2000000 655 ns/op 424 B /op 9 allocs/op
105+ BenchmarkStructSimpleCustomTypeFailureParallel-8 5000000 286 ns/op 440 B /op 10 allocs/op
106+ BenchmarkStructFilteredSuccess-8 2000000 598 ns/op 288 B /op 9 allocs/op
107+ BenchmarkStructFilteredSuccessParallel-8 10000000 231 ns/op 288 B /op 9 allocs/op
108+ BenchmarkStructFilteredFailure-8 3000000 455 ns/op 256 B /op 7 allocs/op
109+ BenchmarkStructFilteredFailureParallel-8 10000000 197 ns/op 256 B /op 7 allocs/op
110+ BenchmarkStructPartialSuccess-8 3000000 552 ns/op 256 B /op 6 allocs/op
111+ BenchmarkStructPartialSuccessParallel-8 10000000 206 ns/op 256 B /op 6 allocs/op
112+ BenchmarkStructPartialFailure-8 2000000 750 ns/op 480 B /op 11 allocs/op
113+ BenchmarkStructPartialFailureParallel-8 5000000 317 ns/op 480 B /op 11 allocs/op
114+ BenchmarkStructExceptSuccess-8 2000000 853 ns/op 496 B /op 12 allocs/op
115+ BenchmarkStructExceptSuccessParallel-8 10000000 179 ns/op 240 B /op 5 allocs/op
116+ BenchmarkStructExceptFailure-8 2000000 698 ns/op 464 B /op 10 allocs/op
117+ BenchmarkStructExceptFailureParallel-8 5000000 276 ns/op 464 B /op 10 allocs/op
118+ BenchmarkStructSimpleCrossFieldSuccess-8 3000000 412 ns/op 72 B /op 3 allocs/op
119+ BenchmarkStructSimpleCrossFieldSuccessParallel-8 10000000 148 ns/op 72 B /op 3 allocs/op
120+ BenchmarkStructSimpleCrossFieldFailure-8 2000000 630 ns/op 304 B /op 8 allocs/op
121+ BenchmarkStructSimpleCrossFieldFailureParallel-8 10000000 244 ns/op 304 B /op 8 allocs/op
122+ BenchmarkStructSimpleCrossStructCrossFieldSuccess-8 2000000 610 ns/op 80 B /op 4 allocs/op
123+ BenchmarkStructSimpleCrossStructCrossFieldSuccessParallel-8 10000000 205 ns/op 80 B /op 4 allocs/op
124+ BenchmarkStructSimpleCrossStructCrossFieldFailure-8 2000000 861 ns/op 320 B /op 9 allocs/op
125+ BenchmarkStructSimpleCrossStructCrossFieldFailureParallel-8 5000000 315 ns/op 320 B /op 9 allocs/op
126+ BenchmarkStructSimpleSuccess-8 5000000 279 ns/op 0 B /op 0 allocs/op
127+ BenchmarkStructSimpleSuccessParallel-8 20000000 86.4 ns/op 0 B /op 0 allocs/op
128+ BenchmarkStructSimpleFailure-8 2000000 636 ns/op 424 B /op 9 allocs/op
129+ BenchmarkStructSimpleFailureParallel-8 10000000 264 ns/op 424 B /op 9 allocs/op
130+ BenchmarkStructComplexSuccess-8 1000000 1539 ns/op 128 B /op 8 allocs/op
131+ BenchmarkStructComplexSuccessParallel-8 3000000 557 ns/op 128 B /op 8 allocs/op
132+ BenchmarkStructComplexFailure-8 300000 4136 ns/op 3041 B /op 53 allocs/op
133+ BenchmarkStructComplexFailureParallel-8 1000000 1855 ns/op 3041 B /op 53 allocs/op
132134```
133135
134136Complementary Software
0 commit comments