dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.16k stars 4.71k forks source link

Arm64v8 ISA optimization, both in the JIT and where runtime and libraries have significant x64 optimizations #70527

Open JulieLeeMSFT opened 2 years ago

JulieLeeMSFT commented 2 years ago

Overview

In .NET 6, we improved Arm64 throughput and latency on TechEmpower benchmarks against .NET 5. In .NET 7, we will continue to improve Arm64 throughput and latency on real world server workload for Arm64. Also, we will explore areas that runtime and libraries have significant x64 optimizations or bias in order to narrow the performance gap.

Work Items

In the JIT

In runtime and Libraries

Benchmarks to use

What Success Looks Like

Move to future

ghost commented 2 years ago

Tagging subscribers to this area: @dotnet/area-meta See info in area-owners.md if you want to be subscribed.

Issue Details
# Overview In .NET 6, we improved Arm64 **throughput** and **latency** on **TechEmpower** benchmarks against .NET 5. In .NET 7, we will continue to improve Arm64 throughput and latency on **real world server workload** for Arm64. Also, we will explore areas that runtime and libraries have significant x64 optimizations or bias in order to narrow the performance gap. ## Work Items ### In the JIT - [ ] #https://github.com/dotnet/runtime/issues/55365 **WIP** - [x] Loop alignment for Arm64 ### In runtime and Libraries - [ ] Identify work required to support comparable runtime and libraries optimizations ## Benchmarks to use - BenchmarkGames - Edit: TechEmpower JSON benchmarks ## What Success Looks Like - Improve performance on 2 applications such as customer server apps or community apps. - Edit: Improve TechEmpower JSON benchmarks - Edit: (Not a goal anymore) Improve TechEmpower Composite score ## Move to future - [ ] #https://github.com/dotnet/runtime/issues/35853
Author: JulieLeeMSFT
Assignees: JulieLeeMSFT
Labels: `area-Meta`, `User Story`, `Priority:2`, `Cost:XL`
Milestone: 7.0.0