Open EgorBot opened 2 months ago
Amd
BenchmarkDotNet v0.14.0, Ubuntu 22.04.4 LTS (Jammy Jellyfish)
AMD EPYC 7763, 1 CPU, 16 logical and 8 physical cores
Job-CBNBGQ : .NET 9.0.0 (42.42.42.42424), X64 RyuJIT AVX2
Job-KQKJYN : .NET 9.0.0 (42.42.42.42424), X64 RyuJIT AVX2
OutlierMode=DontRemove EnvironmentVariables=DOTNET_JitDisasm=WriteBasicUtf8 MemoryRandomization=True
Method | Toolchain | Formatted | SkipValidation | DataSize | Mean | Error | Ratio |
---|---|---|---|---|---|---|---|
WriteBasicUtf8 | Before | False | False | 10 | 499.0 ns | 3.52 ns | 1.00 |
WriteBasicUtf8 | After | False | False | 10 | 448.7 ns | 0.48 ns | 0.90 |
Flame graphs: Main vs PR 🔥 Hot asm: Main vs PR Hot functions: Main vs PR Counters: Main vs PR
For clean perf
results, make sure you have just one [Benchmark]
in your app.
Processing https://github.com/dotnet/runtime/issues/107044#issuecomment-2329622530 command:
Command
-amd -profiler -commit e96eaee7d7aaa589a7e50731b868322c1669c01d vs previous --envvars DOTNET_JitDisasm:WriteBasicUtf8 ```cs // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using System.Buffers; using System.Text.Json.Tests; using BenchmarkDotNet.Attributes; using BenchmarkDotNet.Running; namespace System.Text.Json.Tests { public class Perf_Basic { private ArrayBufferWriter(EgorBot will reply in this issue)