MihuBot / runtime-utils

0 stars 0 forks source link

[Benchmark X64] [MihaZupan] Add Avx512 support to IndexOfAnyAsciiSearcher #456

Open MihuBot opened 2 weeks ago

MihuBot commented 2 weeks ago

Job completed in 19 minutes.

Using arguments: benchmark SearchValues -NoPRLink

System.Buffers.Tests.SearchValuesCharTests ``` BenchmarkDotNet v0.13.13-nightly.20240311.145, Ubuntu 22.04.4 LTS (Jammy Jellyfish) AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores Job-XDZXFD : .NET 9.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI Job-EHDEZI : .NET 9.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI Job-OJHGHS : .NET 9.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI Job-SUKOWJ : .NET 9.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI ``` | Method | Toolchain | Values | Mean | Error | Ratio | Allocated | Alloc Ratio | |--------------------- |------------------------ |------------------------ |-----------:|----------:|------:|----------:|------------:| | **Contains** | **Main** | **abcdefABCDEF0123456789** | **1.358 ns** | **0.0010 ns** | **1.00** | **-** | **NA** | | Contains | PR | abcdefABCDEF0123456789 | 1.359 ns | 0.0048 ns | 1.00 | - | NA | | | | | | | | | | | ContainsAny | Main | abcdefABCDEF0123456789 | 4.164 ns | 0.0151 ns | 1.00 | - | NA | | ContainsAny | PR | abcdefABCDEF0123456789 | 5.031 ns | 0.0462 ns | 1.21 | - | NA | | | | | | | | | | | IndexOfAny | Main | abcdefABCDEF0123456789 | 5.395 ns | 0.0332 ns | 1.00 | - | NA | | IndexOfAny | PR | abcdefABCDEF0123456789 | 5.007 ns | 0.0999 ns | 0.93 | - | NA | | | | | | | | | | | LastIndexOfAny | Main | abcdefABCDEF0123456789 | 4.595 ns | 0.0133 ns | 1.00 | - | NA | | LastIndexOfAny | PR | abcdefABCDEF0123456789 | 4.278 ns | 0.0359 ns | 0.93 | - | NA | | | | | | | | | | | LastIndexOfAnyExcept | Main | abcdefABCDEF0123456789 | 4.539 ns | 0.0104 ns | 1.00 | - | NA | | LastIndexOfAnyExcept | PR | abcdefABCDEF0123456789 | 3.964 ns | 0.0548 ns | 0.87 | - | NA | | | | | | | | | | | IndexOfAnyExcept | Main | abcdefABCDEF0123456789 | 4.909 ns | 0.1155 ns | 1.00 | - | NA | | IndexOfAnyExcept | PR | abcdefABCDEF0123456789 | 5.660 ns | 0.3606 ns | 1.15 | - | NA | | | | | | | | | | | **Contains** | **Main** | **abcdefABCDEF0123456789Ü** | **1.359 ns** | **0.0008 ns** | **1.00** | **-** | **NA** | | Contains | PR | abcdefABCDEF0123456789Ü | 1.361 ns | 0.0057 ns | 1.00 | - | NA | | | | | | | | | | | ContainsAny | Main | abcdefABCDEF0123456789Ü | 7.280 ns | 0.0267 ns | 1.00 | - | NA | | ContainsAny | PR | abcdefABCDEF0123456789Ü | 8.315 ns | 0.0928 ns | 1.14 | - | NA | | | | | | | | | | | IndexOfAny | Main | abcdefABCDEF0123456789Ü | 7.255 ns | 0.0189 ns | 1.00 | - | NA | | IndexOfAny | PR | abcdefABCDEF0123456789Ü | 7.928 ns | 0.1390 ns | 1.09 | - | NA | | | | | | | | | | | LastIndexOfAny | Main | abcdefABCDEF0123456789Ü | 6.731 ns | 0.0293 ns | 1.00 | - | NA | | LastIndexOfAny | PR | abcdefABCDEF0123456789Ü | 7.636 ns | 0.0345 ns | 1.13 | - | NA | | | | | | | | | | | LastIndexOfAnyExcept | Main | abcdefABCDEF0123456789Ü | 6.719 ns | 0.0208 ns | 1.00 | - | NA | | LastIndexOfAnyExcept | PR | abcdefABCDEF0123456789Ü | 6.572 ns | 0.0552 ns | 0.98 | - | NA | | | | | | | | | | | IndexOfAnyExcept | Main | abcdefABCDEF0123456789Ü | 7.006 ns | 0.0936 ns | 1.00 | - | NA | | IndexOfAnyExcept | PR | abcdefABCDEF0123456789Ü | 7.270 ns | 0.3546 ns | 1.04 | - | NA | | | | | | | | | | | **Contains** | **Main** | **ßäöüÄÖÜ** | **1.360 ns** | **0.0049 ns** | **1.00** | **-** | **NA** | | Contains | PR | ßäöüÄÖÜ | 1.361 ns | 0.0048 ns | 1.00 | - | NA | | | | | | | | | | | ContainsAny | Main | ßäöüÄÖÜ | 28.420 ns | 0.0603 ns | 1.00 | - | NA | | ContainsAny | PR | ßäöüÄÖÜ | 13.414 ns | 0.0508 ns | 0.47 | - | NA | | | | | | | | | | | IndexOfAny | Main | ßäöüÄÖÜ | 21.060 ns | 0.0251 ns | 1.00 | - | NA | | IndexOfAny | PR | ßäöüÄÖÜ | 13.304 ns | 0.0378 ns | 0.63 | - | NA | | | | | | | | | | | LastIndexOfAny | Main | ßäöüÄÖÜ | 9.643 ns | 0.0138 ns | 1.00 | - | NA | | LastIndexOfAny | PR | ßäöüÄÖÜ | 9.620 ns | 0.0270 ns | 1.00 | - | NA | | | | | | | | | | | LastIndexOfAnyExcept | Main | ßäöüÄÖÜ | 132.124 ns | 0.0361 ns | 1.00 | - | NA | | LastIndexOfAnyExcept | PR | ßäöüÄÖÜ | 132.089 ns | 0.1117 ns | 1.00 | - | NA | | | | | | | | | | | IndexOfAnyExcept | Main | ßäöüÄÖÜ | 132.092 ns | 0.0318 ns | 1.00 | - | NA | | IndexOfAnyExcept | PR | ßäöüÄÖÜ | 131.808 ns | 0.0588 ns | 1.00 | - | NA |
System.Buffers.Tests.SearchValuesByteTests ``` BenchmarkDotNet v0.13.13-nightly.20240311.145, Ubuntu 22.04.4 LTS (Jammy Jellyfish) AMD EPYC 9V74, 1 CPU, 8 logical and 4 physical cores Job-XDZXFD : .NET 9.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI Job-EHDEZI : .NET 9.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI OutlierMode=Default PowerPlanMode=00000000-0000-0000-0000-000000000000 IterationTime=250ms MaxIterationCount=20 MemoryRandomization=Default MinIterationCount=15 WarmupCount=1 ``` | Method | Toolchain | Values | Mean | Error | Ratio | Allocated | Alloc Ratio | |----------------- |------------------------ |------------------------ |----------:|----------:|------:|----------:|------------:| | **Contains** | **Main** | **abcdefABCDEF0123456789** | **1.082 ns** | **0.0044 ns** | **1.00** | **-** | **NA** | | Contains | PR | abcdefABCDEF0123456789 | 1.359 ns | 0.0013 ns | 1.26 | - | NA | | | | | | | | | | | ContainsAny | Main | abcdefABCDEF0123456789 | 3.980 ns | 0.0168 ns | 1.00 | - | NA | | ContainsAny | PR | abcdefABCDEF0123456789 | 10.371 ns | 1.7978 ns | 2.61 | - | NA | | | | | | | | | | | IndexOfAny | Main | abcdefABCDEF0123456789 | 5.089 ns | 0.0152 ns | 1.00 | - | NA | | IndexOfAny | PR | abcdefABCDEF0123456789 | 11.446 ns | 2.3761 ns | 2.25 | - | NA | | | | | | | | | | | IndexOfAnyExcept | Main | abcdefABCDEF0123456789 | 4.790 ns | 0.0037 ns | 1.00 | - | NA | | IndexOfAnyExcept | PR | abcdefABCDEF0123456789 | 11.489 ns | 2.8562 ns | 2.40 | - | NA | | | | | | | | | | | **Contains** | **Main** | **abcdefABCDEF0123456789Ü** | **1.090 ns** | **0.0041 ns** | **1.00** | **-** | **NA** | | Contains | PR | abcdefABCDEF0123456789Ü | 1.368 ns | 0.0088 ns | 1.26 | - | NA | | | | | | | | | | | ContainsAny | Main | abcdefABCDEF0123456789Ü | 5.363 ns | 0.0135 ns | 1.00 | - | NA | | ContainsAny | PR | abcdefABCDEF0123456789Ü | 6.197 ns | 0.0748 ns | 1.16 | - | NA | | | | | | | | | | | IndexOfAny | Main | abcdefABCDEF0123456789Ü | 6.443 ns | 0.0141 ns | 1.00 | - | NA | | IndexOfAny | PR | abcdefABCDEF0123456789Ü | 15.844 ns | 2.7217 ns | 2.46 | - | NA | | | | | | | | | | | IndexOfAnyExcept | Main | abcdefABCDEF0123456789Ü | 5.886 ns | 0.0019 ns | 1.00 | - | NA | | IndexOfAnyExcept | PR | abcdefABCDEF0123456789Ü | 8.134 ns | 0.0536 ns | 1.38 | - | NA |

Artifacts:

MihuBot commented 2 weeks ago

@MihaZupan