EgorBot / runtime-utils

MIT License
0 stars 1 forks source link

EgorBot for EgorBo in #108205 #95

Open EgorBot opened 2 hours ago

EgorBot commented 2 hours ago

Processing https://github.com/dotnet/runtime/pull/108205#issuecomment-2371936155 command:

Command -intel -perf ```cs using System.Buffers.Binary; using BenchmarkDotNet.Attributes; public class Bench { int[] arr1 = new int[1024]; int[] arr2 = new int[1024]; [Benchmark] public void Reverse() => BinaryPrimitives.ReverseEndianness(arr1, arr2); } ```

(EgorBot will reply in this issue)

EgorBot commented 2 hours ago

Benchmark results on AzureIntel

BenchmarkDotNet v0.14.0, Ubuntu 22.04.5 LTS (Jammy Jellyfish)
Intel Xeon Platinum 8370C CPU 2.80GHz, 1 CPU, 16 logical and 8 physical cores
  Job-SYTGZM : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
  Job-CCZWUL : .NET 10.0.0 (42.42.42.42424), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Method Toolchain Mean Error Ratio
Reverse Main 76.41 ns 0.043 ns 1.00
Reverse PR 83.45 ns 0.170 ns 1.09

BDN_Artifacts.zip

Profile for Bench_Reverse:

Flame graphs: Main vs PR 🔥 Hot asm: Main vs PR Hot functions: Main vs PR Counters: Main vs PR

EgorBot commented 2 hours ago

cc @EgorBo (logs)