Skip to content

Async File IO has regressed on Windows #67965

@adamsitnik

Description

@adamsitnik

Various async file IO micro benchmarks have regressed on Windows, but System.IO.Tests.Perf_RandomAccess.ReadScatterAsync(fileSize: 104857600, buffersSize: 65536, options: Asynchronous) is the one for which its most obvious (other benchmarks are more noisy):

Reporting System:

image

Looking at the commit diff, #64834 seems to be to blame (cc @kouvel).

Repro:

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_monthly.py net7.0-preview2 net7.0-preview3 --filter System.IO.Tests.Perf_RandomAccess.ReadScatterAsync 
## System.IO.Tests.Perf_RandomAccess.ReadScatterAsync(fileSize: 104857600, buffersSize: 65536, options: Asynchronous)
Result Base Diff Ratio Operating System Bit Processor Name
Same 37590691.92 35916562.67 1.05 alpine 3.12 Arm64 Unknown processor
Same 35082625.33 34730510.50 1.01 ubuntu 18.04 Arm64 Unknown processor
Same 177006300.00 186064200.00 0.95 Windows 10 Arm64 Microsoft SQ1 3.0 GHz
Slower 245370200.00 274912400.00 0.89 Windows 11 Arm64 Microsoft SQ1 3.0 GHz
Same 8429207.03 8253338.53 1.02 macOS Monterey 12.3 Arm64 Apple M1 Max
Same 95101450.00 103159400.00 0.92 Windows 10 X64 Intel Xeon CPU E5-1650 v4 3.60GHz
Slower 82646762.50 100602725.00 0.82 Windows 11 X64 AMD Ryzen Threadripper PRO 3945WX 12-Cores
Same 72943362.50 80936137.50 0.90 Windows 11 X64 Intel Core i7-8700 CPU 3.20GHz (Coffee Lake)
Slower 70063175.00 85975425.00 0.81 Windows 11 X64 Intel Core i9-9900T CPU 2.10GHz
Slower 10059315.79 11916405.00 0.84 alpine 3.13 X64 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 26718361.11 25572313.94 1.04 centos 7 X64 Intel Xeon CPU E5530 2.40GHz
Same 9761970.00 10212622.22 0.96 debian 11 X64 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 9915697.50 10113311.76 0.98 opensuse-leap 15.3 X64 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 13491174.81 13389165.63 1.01 ubuntu 18.04 X64 Intel Xeon CPU E5-1650 v4 3.60GHz
Same 17370649.54 16005520.13 1.09 ubuntu 18.04 X64 Intel Core i7-2720QM CPU 2.20GHz (Sandy Bridge)
Slower 180336900.00 209815000.00 0.86 Windows 10 Arm Microsoft SQ1 3.0 GHz
Same 194855158.00 199422552.00 0.98 ubuntu 18.04 Arm ARMv7 Processor rev 3 (v7l)
Same 95764800.00 103428275.00 0.93 Windows 10 X86 Intel Xeon CPU E5-1650 v4 3.60GHz
Same 92642500.00 100944225.00 0.92 Windows 11 X86 AMD Ryzen Threadripper PRO 3945WX 12-Cores
Faster 332525100.00 184955950.00 1.80 Windows 11 X86 Intel Core i7-10510U CPU 1.80GHz
Faster 277613675.00 187145750.00 1.48 Windows 7 SP1 X86 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 18966713.69 18777427.62 1.01 macOS Monterey 12.2.1 X64 Intel Core i7-5557U CPU 3.10GHz (Broadwell)
Same 16605661.57 17217161.62 0.96 macOS Monterey 12.3.1 X64 Intel Core i7-4870HQ CPU 2.50GHz (Haswell)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions