I benchmark indicano grandi miglioramenti delle prestazioni in .NET 6

0
76

di Martin Brinkmann il 18 agosto 2021 in Sviluppo – Nessun commento

La prossima versione principale di Microsoft .NET, .NET 6, migliora significativamente le prestazioni di molte operazioni secondo i test di benchmark di Microsoft.

A nuovo post sul blog degli sviluppatori Dotnet di Stephen Toub,
Partner Software Engineer, .NET, offre approfondimenti sui test di benchmark e sui miglioramenti delle prestazioni rispetto alle versioni precedenti di .NET.

net 6

Secondo il post, circa 6500 richieste pull unite sono arrivate in .NET 6, escluse le richieste pull automatizzate da parte dei bot. Di questi, circa 550 migliorano le prestazioni in un'area o nell'altra, secondo Microsoft.

Il post è di natura tecnica; contiene molto codice, esempi e istruzioni per eseguire il benchmark per verificare i risultati. BenchmarkDotNet è stato utilizzato per la maggior parte dei risultati.

A titolo di esempio, ecco i risultati dei benchmark dei test di benchmark Just In Time. La maggior parte dei test confronta le prestazioni di .NET 6.0 con .NET 5.0, ma si trovano anche altre versioni di .NET utilizzate in alcuni test.

MethodRuntimeMeanRatioCode Size< tr>

Formato .NET 5.0 13.21 ns 1.00 1.649 B
Formato .NET 6.0 10,37 ns 0,78 590 B
MethodRuntimeMeanRatioCode Size

< td>.NET Core 3.1

Trova .NET Framework 4.8 115.4 us 1.00 127 B
Trova 69,7 us 0,60 71 B
Trova .NET 5.0 69,8 us 0,60 63 B
Trova .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 disabilitato 1.905 ns 30 B
PGO abilitato 0.7071 ns 105 B
MethodRuntimeMeanRatioCode Size

< td>

Somma .NET 5.0 471.3 us
1.00
 54 B Somma .NET 6.0
350.0 us
0.74
97 B MethodRuntimeMeanRatioCode Size
GetHeight .NET 5.0 151.7852 ns 1.000 179 B
GetHeight .NET 6.0 0,0000 ns 0.000 12 B
MethodRuntimeMeanRatioCode Size
Formato .NET 5.0 87,71 ns 1.000 154 B
GetHeight .NET 6.0 51,88 ns 0,59 100 miliardi td>

Puoi controllare il post completo del blog sul blog Dot Net Dev per una panoramica completa di tutti i test, esempi di codice e spiegazioni sul perché le prestazioni sono migliorate per un particolare test di benchmark.

Gli sviluppatori interessati a .NET possono scaricare l'ultima versione di anteprima, .NET 6.0 Preview 7 al momento della stesura, dal sito Web degli sviluppatori di Microsoft. È disponibile per Windows (ARM, x64, x32), Linux (Arm32, Arm64, x64) e Mac OS X (Arm64, x64). Solo binari forniti per Linux, programmi di installazione e binari per Windows e Mac OS.

Ora tu: usi applicazioni che richiedono .NET?