From 42e5d1f4a10577495b7a4dab453d8d80906ac69c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20K=C3=A4gi?= Date: Sun, 21 Sep 2025 17:16:32 +0200 Subject: [PATCH 1/2] update reference and bump version --- .../Atmoos.Sphere.BenchmarkDotNet.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/Atmoos.Sphere.BenchmarkDotNet/Atmoos.Sphere.BenchmarkDotNet.csproj b/source/Atmoos.Sphere.BenchmarkDotNet/Atmoos.Sphere.BenchmarkDotNet.csproj index b72f1a9..a1df586 100644 --- a/source/Atmoos.Sphere.BenchmarkDotNet/Atmoos.Sphere.BenchmarkDotNet.csproj +++ b/source/Atmoos.Sphere.BenchmarkDotNet/Atmoos.Sphere.BenchmarkDotNet.csproj @@ -3,14 +3,14 @@ - 0.15.0 + 0.15.3 benchmark, benchmarking, export benchmark results Atmoos Sphere BenchmarkDotNet:Exports benchmark results into the defining benchmark source files. - + From d3378153f08c3a0b70c712b99aa3e3b4e04a7b4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20K=C3=A4gi?= Date: Sun, 21 Sep 2025 17:17:07 +0200 Subject: [PATCH 2/2] Update benchmark statistics. --- .../Async/OrderByCompletionBenchmark.cs | 34 +++++++++--------- .../Sync/SynchronousAwaitBenchmark.cs | 14 ++++---- .../Text/InsertFileBenchmark.cs | 18 +++++----- .../Text/InsertStreamBenchmark.cs | 36 +++++++++---------- 4 files changed, 51 insertions(+), 51 deletions(-) diff --git a/source/Atmoos.Sphere.Benchmark/Async/OrderByCompletionBenchmark.cs b/source/Atmoos.Sphere.Benchmark/Async/OrderByCompletionBenchmark.cs index 911bcd9..5deccf4 100644 --- a/source/Atmoos.Sphere.Benchmark/Async/OrderByCompletionBenchmark.cs +++ b/source/Atmoos.Sphere.Benchmark/Async/OrderByCompletionBenchmark.cs @@ -56,29 +56,29 @@ static async Task Next(HashSet> set) /* Summary -BenchmarkDotNet v0.15.2, Linux Arch Linux -Intel Core i7-8565U CPU 1.80GHz (Whiskey Lake), 1 CPU, 8 logical and 4 physical cores -.NET SDK 9.0.109 - [Host] : .NET 9.0.8 (9.0.825.36511), X64 RyuJIT AVX2 - Job-CNUJVU : .NET 9.0.8 (9.0.825.36511), X64 RyuJIT AVX2 +BenchmarkDotNet v0.15.3, Linux Arch Linux +Intel Core i7-8565U CPU 1.80GHz (Max: 0.40GHz) (Whiskey Lake), 1 CPU, 8 logical and 4 physical cores +.NET SDK 9.0.110 + [Host] : .NET 9.0.9 (9.0.9, 9.0.925.41916), X64 RyuJIT x86-64-v3 + Job-CNUJVU : .NET 9.0.9 (9.0.9, 9.0.925.41916), X64 RyuJIT x86-64-v3 InvocationCount=1 UnrollFactor=1 | Method | Count | Mean | Error | Ratio | Gen0 | Allocated | Alloc Ratio | |------------------------ |------ |-----------:|--------:|------:|----------:|----------:|------------:| -| Unordered | 128 | 256.4 ms | 0.59 ms | 1.00 | - | 360 B | 0.01 | -| OrderedByCompletion | 128 | 255.8 ms | 0.76 ms | 1.00 | - | 31512 B | 1.00 | -| NaiveCompletionOrdering | 128 | 255.8 ms | 0.37 ms | 1.00 | - | 122568 B | 3.89 | +| Unordered | 128 | 256.2 ms | 0.43 ms | 1.00 | - | 336 B | 0.01 | +| OrderedByCompletion | 128 | 256.4 ms | 0.47 ms | 1.00 | - | 30848 B | 1.00 | +| NaiveCompletionOrdering | 128 | 256.0 ms | 0.24 ms | 1.00 | - | 122568 B | 3.97 | | | | | | | | | | -| Unordered | 256 | 512.3 ms | 0.89 ms | 1.00 | - | 336 B | 0.005 | -| OrderedByCompletion | 256 | 512.1 ms | 0.63 ms | 1.00 | - | 61696 B | 1.000 | -| NaiveCompletionOrdering | 256 | 512.1 ms | 0.76 ms | 1.00 | - | 362368 B | 5.873 | +| Unordered | 256 | 512.1 ms | 0.67 ms | 1.00 | - | 336 B | 0.005 | +| OrderedByCompletion | 256 | 512.3 ms | 0.55 ms | 1.00 | - | 61568 B | 1.000 | +| NaiveCompletionOrdering | 256 | 512.1 ms | 0.57 ms | 1.00 | - | 380880 B | 6.186 | | | | | | | | | | -| Unordered | 512 | 1,023.3 ms | 1.45 ms | 1.00 | - | 336 B | 0.003 | -| OrderedByCompletion | 512 | 1,023.7 ms | 0.73 ms | 1.00 | - | 123136 B | 1.000 | -| NaiveCompletionOrdering | 512 | 1,023.8 ms | 1.03 ms | 1.00 | - | 1247088 B | 10.128 | +| Unordered | 512 | 1,023.0 ms | 1.17 ms | 1.00 | - | 336 B | 0.003 | +| OrderedByCompletion | 512 | 1,023.4 ms | 0.99 ms | 1.00 | - | 123520 B | 1.000 | +| NaiveCompletionOrdering | 512 | 1,023.1 ms | 0.95 ms | 1.00 | - | 1289800 B | 10.442 | | | | | | | | | | -| Unordered | 1024 | 2,048.0 ms | 1.92 ms | 1.00 | - | 336 B | 0.001 | -| OrderedByCompletion | 1024 | 2,047.0 ms | 3.71 ms | 1.00 | - | 246400 B | 1.000 | -| NaiveCompletionOrdering | 1024 | 2,046.9 ms | 2.02 ms | 1.00 | 1000.0000 | 4679128 B | 18.990 | +| Unordered | 1024 | 2,046.1 ms | 6.55 ms | 1.00 | - | 336 B | 0.001 | +| OrderedByCompletion | 1024 | 2,046.1 ms | 6.37 ms | 1.00 | - | 246272 B | 1.000 | +| NaiveCompletionOrdering | 1024 | 2,046.5 ms | 1.69 ms | 1.00 | 1000.0000 | 4743272 B | 19.260 | Summary */ diff --git a/source/Atmoos.Sphere.Benchmark/Sync/SynchronousAwaitBenchmark.cs b/source/Atmoos.Sphere.Benchmark/Sync/SynchronousAwaitBenchmark.cs index e85fbf6..32bf263 100644 --- a/source/Atmoos.Sphere.Benchmark/Sync/SynchronousAwaitBenchmark.cs +++ b/source/Atmoos.Sphere.Benchmark/Sync/SynchronousAwaitBenchmark.cs @@ -21,17 +21,17 @@ public class SynchronousAwaitBenchmark /* Summary -BenchmarkDotNet v0.15.2, Linux Arch Linux -Intel Core i7-8565U CPU 1.80GHz (Whiskey Lake), 1 CPU, 8 logical and 4 physical cores -.NET SDK 9.0.109 - [Host] : .NET 9.0.8 (9.0.825.36511), X64 RyuJIT AVX2 - ShortRun : .NET 9.0.8 (9.0.825.36511), X64 RyuJIT AVX2 +BenchmarkDotNet v0.15.3, Linux Arch Linux +Intel Core i7-8565U CPU 1.80GHz (Max: 0.40GHz) (Whiskey Lake), 1 CPU, 8 logical and 4 physical cores +.NET SDK 9.0.110 + [Host] : .NET 9.0.9 (9.0.9, 9.0.925.41916), X64 RyuJIT x86-64-v3 + ShortRun : .NET 9.0.9 (9.0.9, 9.0.925.41916), X64 RyuJIT x86-64-v3 Job=ShortRun IterationCount=9 LaunchCount=1 WarmupCount=5 | Method | Mean | Error | Ratio | Allocated | Alloc Ratio | |-------------------- |---------:|---------:|------:|----------:|------------:| -| AsyncAwaitTaskDelay | 63.14 ms | 0.074 ms | 1.00 | 336 B | 1.00 | -| SyncAwaitTaskDelay | 63.19 ms | 0.147 ms | 1.00 | 232 B | 0.69 | +| AsyncAwaitTaskDelay | 63.23 ms | 0.125 ms | 1.00 | 336 B | 1.00 | +| SyncAwaitTaskDelay | 63.25 ms | 0.115 ms | 1.00 | 232 B | 0.69 | Summary */ diff --git a/source/Atmoos.Sphere.Benchmark/Text/InsertFileBenchmark.cs b/source/Atmoos.Sphere.Benchmark/Text/InsertFileBenchmark.cs index b84bbfe..e635b5e 100644 --- a/source/Atmoos.Sphere.Benchmark/Text/InsertFileBenchmark.cs +++ b/source/Atmoos.Sphere.Benchmark/Text/InsertFileBenchmark.cs @@ -40,17 +40,17 @@ public async Task InsertAsynchronously() /* Summary -BenchmarkDotNet v0.15.2, Linux Arch Linux -Intel Core i7-8565U CPU 1.80GHz (Whiskey Lake), 1 CPU, 8 logical and 4 physical cores -.NET SDK 9.0.109 - [Host] : .NET 9.0.8 (9.0.825.36511), X64 RyuJIT AVX2 - ShortRun : .NET 9.0.8 (9.0.825.36511), X64 RyuJIT AVX2 +BenchmarkDotNet v0.15.3, Linux Arch Linux +Intel Core i7-8565U CPU 1.80GHz (Max: 0.40GHz) (Whiskey Lake), 1 CPU, 8 logical and 4 physical cores +.NET SDK 9.0.110 + [Host] : .NET 9.0.9 (9.0.9, 9.0.925.41916), X64 RyuJIT x86-64-v3 + ShortRun : .NET 9.0.9 (9.0.9, 9.0.925.41916), X64 RyuJIT x86-64-v3 Job=ShortRun IterationCount=11 LaunchCount=1 WarmupCount=5 -| Method | Mean | Error | Ratio | Gen0 | Gen1 | Allocated | Alloc Ratio | -|--------------------- |-----------:|---------:|------:|--------:|-------:|----------:|------------:| -| InsertSynchronously | 557.3 μs | 2.47 μs | 0.31 | 30.2734 | 0.9766 | 126.28 KB | 0.34 | -| InsertAsynchronously | 1,802.7 μs | 29.86 μs | 1.00 | 89.8438 | - | 367.37 KB | 1.00 | +| Method | Mean | Error | Ratio | Gen0 | Gen1 | Allocated | Alloc Ratio | +|--------------------- |-----------:|--------:|------:|--------:|-------:|----------:|------------:| +| InsertSynchronously | 573.2 μs | 0.83 μs | 0.32 | 30.2734 | 0.9766 | 126.28 KB | 0.34 | +| InsertAsynchronously | 1,772.0 μs | 5.50 μs | 1.00 | 89.8438 | 3.9063 | 367.35 KB | 1.00 | Summary */ diff --git a/source/Atmoos.Sphere.Benchmark/Text/InsertStreamBenchmark.cs b/source/Atmoos.Sphere.Benchmark/Text/InsertStreamBenchmark.cs index 3003c4b..b07c02b 100644 --- a/source/Atmoos.Sphere.Benchmark/Text/InsertStreamBenchmark.cs +++ b/source/Atmoos.Sphere.Benchmark/Text/InsertStreamBenchmark.cs @@ -78,26 +78,26 @@ public override async Task WriteLineAsync(ReadOnlyMemory value, Cancellati /* Summary -BenchmarkDotNet v0.15.2, Linux Arch Linux -Intel Core i7-8565U CPU 1.80GHz (Whiskey Lake), 1 CPU, 8 logical and 4 physical cores -.NET SDK 9.0.109 - [Host] : .NET 9.0.8 (9.0.825.36511), X64 RyuJIT AVX2 - ShortRun : .NET 9.0.8 (9.0.825.36511), X64 RyuJIT AVX2 +BenchmarkDotNet v0.15.3, Linux Arch Linux +Intel Core i7-8565U CPU 1.80GHz (Max: 0.40GHz) (Whiskey Lake), 1 CPU, 8 logical and 4 physical cores +.NET SDK 9.0.110 + [Host] : .NET 9.0.9 (9.0.9, 9.0.925.41916), X64 RyuJIT x86-64-v3 + ShortRun : .NET 9.0.9 (9.0.9, 9.0.925.41916), X64 RyuJIT x86-64-v3 Job=ShortRun InvocationCount=1 IterationCount=3 LaunchCount=1 UnrollFactor=1 WarmupCount=3 -| Method | MsDelay | Mean | Error | Ratio | Allocated | Alloc Ratio | -|--------------------- |-------- |-----------:|--------:|------:|----------:|------------:| -| InsertSynchronously | 1 | 474.7 ms | 7.01 ms | 1.45 | 6.66 KB | 0.13 | -| InsertAsynchronously | 1 | 327.5 ms | 6.07 ms | 1.00 | 50.75 KB | 1.00 | -| | | | | | | | -| InsertSynchronously | 2 | 945.4 ms | 5.30 ms | 1.46 | 6.66 KB | 0.13 | -| InsertAsynchronously | 2 | 647.5 ms | 9.14 ms | 1.00 | 50.75 KB | 1.00 | -| | | | | | | | -| InsertSynchronously | 4 | 1,870.2 ms | 2.88 ms | 1.46 | 6.66 KB | 0.13 | -| InsertAsynchronously | 4 | 1,278.7 ms | 6.61 ms | 1.00 | 50.75 KB | 1.00 | -| | | | | | | | -| InsertSynchronously | 8 | 3,718.6 ms | 4.08 ms | 1.46 | 6.66 KB | 0.13 | -| InsertAsynchronously | 8 | 2,539.1 ms | 4.32 ms | 1.00 | 50.75 KB | 1.00 | +| Method | MsDelay | Mean | Error | Ratio | Allocated | Alloc Ratio | +|--------------------- |-------- |-----------:|---------:|------:|----------:|------------:| +| InsertSynchronously | 1 | 477.2 ms | 0.64 ms | 1.45 | 6.66 KB | 0.13 | +| InsertAsynchronously | 1 | 330.2 ms | 4.12 ms | 1.00 | 50.75 KB | 1.00 | +| | | | | | | | +| InsertSynchronously | 2 | 945.6 ms | 14.74 ms | 1.46 | 6.66 KB | 0.13 | +| InsertAsynchronously | 2 | 649.1 ms | 0.89 ms | 1.00 | 50.75 KB | 1.00 | +| | | | | | | | +| InsertSynchronously | 4 | 1,870.4 ms | 5.06 ms | 1.46 | 6.66 KB | 0.13 | +| InsertAsynchronously | 4 | 1,279.5 ms | 6.89 ms | 1.00 | 50.75 KB | 1.00 | +| | | | | | | | +| InsertSynchronously | 8 | 3,719.6 ms | 4.44 ms | 1.46 | 6.66 KB | 0.13 | +| InsertAsynchronously | 8 | 2,539.9 ms | 2.58 ms | 1.00 | 50.75 KB | 1.00 | Summary */