Benchmarks zeigen große Leistungsverbesserungen in .NET 6

0
134

von Martin Brinkmann am 18. August 2021 in Entwicklung – Keine Kommentare

Die kommende nächste Hauptversion von Microsoft .NET, .NET 6, verbessert die Leistung vieler Operationen laut Microsofts Benchmark-Tests erheblich.

A Neuer Beitrag im Dotnet-Entwicklerblog von Stephen Toub,
Partner Software Engineer, .NET, bietet Einblicke in die Benchmark-Tests und die Leistungsverbesserungen im Vergleich zu früheren Versionen von .NET.

net 6

Laut Post landeten etwa 6500 zusammengeführte Pull-Requests in .NET 6, ausgenommen automatisierte Pull-Requests durch Bots. Von diesen verbessern laut Microsoft etwa 550 die Leistung in dem einen oder anderen Bereich.

Der Beitrag ist technischer Natur; Es enthält viel Code, Beispiele und Anweisungen zum Ausführen des Benchmarks, um die Ergebnisse zu überprüfen. BenchmarkDotNet wurde für die meisten Ergebnisse verwendet.

Als Beispiele hier die Benchmark-Ergebnisse von Just-In-Time-Benchmark-Tests. Die meisten Tests vergleichen die Leistung von .NET 6.0 mit .NET 5.0, aber in einigen Tests werden auch andere .NET-Versionen verwendet.

MethodRuntimeMeanRatioCode Size< tr>

Format .NET 5.0 13,21 ns 1,00 1.649 B
Format .NET 6.0 10,37 ns 0,78 590 B
MethodRuntimeMeanRatioCode Size

< td>.NET Core 3.1

Suchen .NET Framework 4.8 115.4 uns 1.00 127 B
Finden 69.7 us 0.60 71 B
Finden .NET 5.0 69.8 uns 0.60 63 B
Finden .NET 6.0 53.4 us 0.46 57 B
MethodRuntimeMeanRatioCode SizeAllocated
GetLength .NET Framework 4.8 6.3495 ns 1.000 106 B 32 B
GetLength .NET Core 3.1 4.0185 ns 0.628 66 B
GetLength .NET 5.0 0,1223 ns 0,019 27 B
GetLength .NET 6.0 0,0204 ns< /td>

0,003 27 B
MethodMeanCode Size
PGO deaktiviert 1.905 ns 30 B
PGO aktiviert 0.7071 ns 105 B
MethodRuntimeMeanRatioCode Size

< td>

Summe .NET 5.0 471.3 us
1.00
 54 B Summe .NET 6.0
350.0 uns
0.74
97 B MethodRuntimeMeanRatioCode Size
GetHeight .NET 5.0 151.7852 ns 1.000 179 B
GetHeight .NET 6.0 0,00000 ns 0,000 12 B
MethodeRuntimeMeanRatioCode Size
Format .NET 5.0 87,71 ns 1.000 154 B
GetHeight .NET 6.0 51,88 ns 0,59 100 B

Sie können den vollständigen Blog-Post im Dot Net Dev Blog lesen, um einen vollständigen Überblick über alle Tests, Codebeispiele und Erklärungen zu erhalten, warum sich die Leistung für eine bestimmte Person verbessert hat Benchmark-Test.

Entwickler, die an .NET interessiert sind, können die zum Zeitpunkt des Schreibens aktuelle Vorschauversion .NET 6.0 Preview 7 von der Entwickler-Website von Microsoft herunterladen. Es ist für Windows (ARM, x64, x32), Linux (Arm32, Arm64, x64) und Mac OS X (Arm64, x64) verfügbar. Nur Binärdateien für Linux, Installationsprogramme und Binärdateien für Windows und Mac OS.

Jetzt: Verwenden Sie Anwendungen, die .NET erfordern?