Skip to content

Consider to enable FEATURE_MULTICASTSTUB_AS_IL for Windows x86 #103958

@huoyaoyuan

Description

@huoyaoyuan

Since the initial publish of coreclr, FEATURE_MULTICASTSTUB_AS_IL has been enabled on all platforms except Windows x86. Similar to #103533, the IL method stubs are easier to maintain.

Currently the IL version is functional for Windows x86, but performs worse:

BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.3737/23H2/2023Update/SunValley3)
13th Gen Intel Core i9-13900K, 1 CPU, 32 logical and 24 physical cores
.NET SDK 9.0.100-preview.5.24307.3
  [Host]     : .NET 8.0.5 (8.0.524.21615), X86 RyuJIT AVX2
  Job-JGPGRX : .NET 9.0.0 (42.42.42.42424), X86 RyuJIT AVX2
  Job-CSENVN : .NET 9.0.0 (42.42.42.42424), X86 RyuJIT AVX2

Affinity=00000000000000001111111111111111
Method Job Toolchain Mean Error StdDev Ratio RatioSD
SingleArg Job-JGPGRX \x86-main\corerun.exe 3.744 ns 0.0400 ns 0.0374 ns 1.00 0.00
SingleArg Job-CSENVN \x86-pr\corerun.exe 5.239 ns 0.0316 ns 0.0280 ns 1.40 0.02
ManyCast Job-JGPGRX \x86-main\corerun.exe 10.001 ns 0.2107 ns 0.2070 ns 1.00 0.00
ManyCast Job-CSENVN \x86-pr\corerun.exe 14.281 ns 0.0928 ns 0.0868 ns 1.43 0.03
ManyArg_RetFPU Job-JGPGRX \x86-main\corerun.exe 5.971 ns 0.0567 ns 0.0530 ns 1.00 0.00
ManyArg_RetFPU Job-CSENVN \x86-pr\corerun.exe 7.341 ns 0.1287 ns 0.1204 ns 1.23 0.02

Consider to improve the codegen in JIT for better performance.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions