-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Closed
Labels
area-System.Text.RegularExpressionstenet-performancePerformance related issuePerformance related issue
Milestone
Description
Latest manual perf run (.NET 6 vs .NET 7 preview 1) has discovered multiple regressions in System.Text.RegularExpressions. Since most of them were not reported previously, I am opening the issue, so the owners of System.Text.RegularExpressions can triage them accordingly.
I've uploaded a full report here. It's sorted desc from biggest regression to biggest improvement.
The @performanceautofiler has not reported these regressions as they were most likely introduced before the benchmarks were added in November 2021 (historical data)
Sample repro:
git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 net7.0 --filter System.Text.RegularExpressions.Tests.Perf_Regex_Industry_RustLang_Sherlock.CountSample results:
System.Text.RegularExpressions.Tests.Perf_Regex_Industry_RustLang_Sherlock.Count(Pattern: "Sherlock|Holmes|Watson|Irene|Adler|John|Baker", Options: Compiled)
| Result | Ratio | Operating System | Bit |
|---|---|---|---|
| Slower | 0.43 | Windows 11 | X64 |
| Slower | 0.45 | Windows 11 | X64 |
| Slower | 0.46 | Windows 10 | X64 |
| Slower | 0.42 | Windows 11 | X64 |
| Slower | 0.46 | Windows 10 | X64 |
| Slower | 0.42 | Windows 11 | X64 |
| Slower | 0.43 | Windows 11 | X64 |
| Slower | 0.44 | Windows 11 | X64 |
| Slower | 0.43 | Windows 11 | X64 |
| Slower | 0.43 | ubuntu 20.04 | X64 |
| Slower | 0.45 | ubuntu 18.04 | X64 |
| Slower | 0.40 | centos 7 | X64 |
| Slower | 0.43 | ubuntu 18.04 | X64 |
| Slower | 0.44 | alpine 3.13 | X64 |
| Slower | 0.43 | ubuntu 18.04 | X64 |
| Slower | 0.44 | ubuntu 20.04 | X64 |
| Slower | 0.47 | Windows 10 | Arm64 |
| Slower | 0.32 | Windows 10 | X86 |
| Slower | 0.53 | Windows 10 | Arm |
| Slower | 0.43 | macOS Big Sur 11.6.3 | X64 |
| Slower | 0.43 | macOS Big Sur 11.4 | X64 |
System.Text.RegularExpressions.Tests.Perf_Regex_Common.CtorInvoke(Options: Compiled)
| Result | Ratio | Operating System | Bit |
|---|---|---|---|
| Slower | 0.45 | Windows 11 | X64 |
| Slower | 0.48 | Windows 11 | X64 |
| Slower | 0.46 | Windows 10 | X64 |
| Slower | 0.48 | Windows 11 | X64 |
| Slower | 0.45 | Windows 10 | X64 |
| Slower | 0.46 | Windows 11 | X64 |
| Slower | 0.43 | Windows 11 | X64 |
| Slower | 0.44 | Windows 11 | X64 |
| Slower | 0.51 | Windows 11 | X64 |
| Slower | 0.51 | ubuntu 20.04 | X64 |
| Slower | 0.48 | ubuntu 18.04 | X64 |
| Slower | 0.53 | centos 7 | X64 |
| Slower | 0.51 | ubuntu 18.04 | X64 |
| Slower | 0.48 | alpine 3.13 | X64 |
| Slower | 0.47 | ubuntu 18.04 | X64 |
| Slower | 0.46 | ubuntu 20.04 | X64 |
| Slower | 0.57 | Windows 10 | Arm64 |
| Slower | 0.45 | Windows 10 | X86 |
| Slower | 0.59 | Windows 10 | Arm |
| Slower | 0.52 | macOS Big Sur 11.6.3 | X64 |
| Slower | 0.52 | macOS Big Sur 11.4 | X64 |
(cc @stephentoub )
Metadata
Metadata
Assignees
Labels
area-System.Text.RegularExpressionstenet-performancePerformance related issuePerformance related issue