From 6cc89c8a157f7a237abcf573a4ee65222aed4968 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 2 May 2026 04:52:26 +0000 Subject: [PATCH] chore: update benchmark results in README --- README.md | 128 +++++++++++++++++++++++++++--------------------------- 1 file changed, 64 insertions(+), 64 deletions(-) diff --git a/README.md b/README.md index 359ef09..be9b6a7 100644 --- a/README.md +++ b/README.md @@ -85,7 +85,7 @@ public class MyService(IMapper mapper) { ... } ## Performance -> ⏱ **Last updated:** 2026-05-01 17:19 UTC +> ⏱ **Last updated:** 2026-05-02 04:52 UTC All benchmarks run on BenchmarkDotNet with .NET 10. Ratio = time vs hand-written manual code (lower is better). @@ -93,13 +93,13 @@ All benchmarks run on BenchmarkDotNet with .NET 10. Ratio = time vs hand-written | Scenario | Manual | EggMapper | Mapster | AutoMapper | Mapperly* | |----------|--------|-----------|---------|------------|-----------| -| **Flat (10 props)** | 16.28 ns | **26.69 ns (1.6×)** | 28.77 ns (1.8×) | 81.78 ns (5.0×) | 16.24 ns (1.0×) | -| **Flattening** | 20.32 ns | **31.40 ns (1.6×)** | 34.92 ns (1.7×) | 81.19 ns (4.0×) | 25.77 ns (1.3×) | -| **Deep (2 nested)** | 57.85 ns | **73.59 ns (1.3×)** | 72.58 ns (1.2×) | 109.06 ns (1.9×) | 56.32 ns (1.0×) | -| **Complex (nest+coll)** | 82.74 ns | **107.48 ns (1.3×)** | 103.45 ns (1.2×) | 146.89 ns (1.8×) | 80.72 ns (1.0×) | -| **Collection (100)** | 2.088 μs | **2.171 μs (1.0×)** | 2.032 μs (1.0×) | 2.650 μs (1.3×) | 2.242 μs (1.1×) | -| **Deep Coll (100)** | 6.001 μs | **6.398 μs (1.1×)** | 6.508 μs (1.1×) | 7.153 μs (1.2×) | 5.946 μs (1.0×) | -| **Large Coll (1000)** | 21.92 μs | **21.75 μs (1.0×)** | 21.00 μs (1.0×) | 24.75 μs (1.1×) | 21.99 μs (1.0×) | +| **Flat (10 props)** | 14.77 ns | **24.41 ns (1.6×)** | 27.60 ns (1.9×) | 80.67 ns (5.5×) | 14.77 ns (1.0×) | +| **Flattening** | 18.38 ns | **28.81 ns (1.6×)** | 46.56 ns (2.5×) | 88.24 ns (4.8×) | 23.48 ns (1.3×) | +| **Deep (2 nested)** | 53.57 ns | **64.40 ns (1.2×)** | 67.58 ns (1.3×) | 120.99 ns (2.3×) | 48.97 ns (0.9×) | +| **Complex (nest+coll)** | 70.36 ns | **89.57 ns (1.3×)** | 89.86 ns (1.3×) | 146.92 ns (2.1×) | 69.81 ns (1.0×) | +| **Collection (100)** | 1.696 μs | **1.656 μs (1.0×)** | 1.721 μs (1.0×) | 2.330 μs (1.4×) | 1.841 μs (1.1×) | +| **Deep Coll (100)** | 5.205 μs | **5.662 μs (1.1×)** | 5.679 μs (1.1×) | 6.395 μs (1.2×) | 5.278 μs (1.0×) | +| **Large Coll (1000)** | 17.30 μs | **17.01 μs (1.0×)** | 17.03 μs (1.0×) | 21.01 μs (1.2×) | 17.84 μs (1.0×) | **\*** *Mapperly is a compile-time source generator — it produces code equivalent to hand-written mapping. EggMapper is the fastest **runtime** mapper.* @@ -123,96 +123,96 @@ dotnet run --configuration Release -f net10.0 -- --filter * --exporters json mar | Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Allocated | Alloc Ratio | |--------------------- |----------:|---------:|---------:|----------:|----------:|----------:|------:|--------:|-----:|-------:|----------:|------------:| -| Manual | 16.28 ns | 0.216 ns | 0.191 ns | 15.94 ns | 16.27 ns | 16.63 ns | 1.00 | 0.02 | 1 | 0.0048 | 80 B | 1.00 | -| EggMapper | 26.69 ns | 0.168 ns | 0.141 ns | 26.38 ns | 26.69 ns | 26.91 ns | 1.64 | 0.02 | 3 | 0.0048 | 80 B | 1.00 | -| AutoMapper | 81.78 ns | 0.141 ns | 0.125 ns | 81.48 ns | 81.79 ns | 81.98 ns | 5.02 | 0.06 | 5 | 0.0048 | 80 B | 1.00 | -| Mapster | 28.77 ns | 0.317 ns | 0.296 ns | 28.38 ns | 28.71 ns | 29.28 ns | 1.77 | 0.03 | 4 | 0.0048 | 80 B | 1.00 | -| MapperlyMap | 16.24 ns | 0.160 ns | 0.142 ns | 15.93 ns | 16.29 ns | 16.40 ns | 1.00 | 0.01 | 1 | 0.0048 | 80 B | 1.00 | -| AgileMapper | 333.59 ns | 1.334 ns | 1.248 ns | 331.09 ns | 333.45 ns | 335.67 ns | 20.49 | 0.24 | 6 | 0.0205 | 344 B | 4.30 | -| EggMapperGenerator | 16.42 ns | 0.205 ns | 0.192 ns | 16.00 ns | 16.46 ns | 16.70 ns | 1.01 | 0.02 | 1 | 0.0048 | 80 B | 1.00 | -| EggMapperClassMapper | 17.27 ns | 0.215 ns | 0.201 ns | 16.89 ns | 17.29 ns | 17.60 ns | 1.06 | 0.02 | 2 | 0.0048 | 80 B | 1.00 | +| Manual | 14.77 ns | 0.034 ns | 0.032 ns | 14.70 ns | 14.78 ns | 14.81 ns | 1.00 | 0.00 | 1 | 0.0048 | 80 B | 1.00 | +| EggMapper | 24.41 ns | 0.161 ns | 0.151 ns | 24.20 ns | 24.41 ns | 24.69 ns | 1.65 | 0.01 | 3 | 0.0048 | 80 B | 1.00 | +| AutoMapper | 80.67 ns | 0.294 ns | 0.245 ns | 80.39 ns | 80.60 ns | 81.06 ns | 5.46 | 0.02 | 5 | 0.0048 | 80 B | 1.00 | +| Mapster | 27.60 ns | 0.058 ns | 0.049 ns | 27.50 ns | 27.61 ns | 27.69 ns | 1.87 | 0.01 | 4 | 0.0048 | 80 B | 1.00 | +| MapperlyMap | 14.77 ns | 0.058 ns | 0.054 ns | 14.71 ns | 14.78 ns | 14.87 ns | 1.00 | 0.00 | 1 | 0.0048 | 80 B | 1.00 | +| AgileMapper | 493.97 ns | 1.694 ns | 1.414 ns | 492.58 ns | 493.66 ns | 497.72 ns | 33.44 | 0.12 | 6 | 0.0200 | 344 B | 4.30 | +| EggMapperGenerator | 14.79 ns | 0.037 ns | 0.033 ns | 14.74 ns | 14.78 ns | 14.86 ns | 1.00 | 0.00 | 1 | 0.0048 | 80 B | 1.00 | +| EggMapperClassMapper | 15.39 ns | 0.066 ns | 0.062 ns | 15.31 ns | 15.40 ns | 15.50 ns | 1.04 | 0.00 | 2 | 0.0048 | 80 B | 1.00 | #### 🟡 Flattening | Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Allocated | Alloc Ratio | |------------ |----------:|---------:|---------:|----------:|----------:|----------:|------:|--------:|-----:|-------:|----------:|------------:| -| Manual | 20.32 ns | 0.155 ns | 0.137 ns | 20.15 ns | 20.27 ns | 20.59 ns | 1.00 | 0.01 | 1 | 0.0048 | 80 B | 1.00 | -| EggMap | 31.40 ns | 0.366 ns | 0.342 ns | 31.00 ns | 31.26 ns | 32.16 ns | 1.55 | 0.02 | 3 | 0.0048 | 80 B | 1.00 | -| AutoMapper | 81.19 ns | 0.231 ns | 0.205 ns | 80.86 ns | 81.19 ns | 81.55 ns | 4.00 | 0.03 | 5 | 0.0048 | 80 B | 1.00 | -| Mapster | 34.92 ns | 0.101 ns | 0.084 ns | 34.81 ns | 34.88 ns | 35.10 ns | 1.72 | 0.01 | 4 | 0.0048 | 80 B | 1.00 | -| MapperlyMap | 25.77 ns | 0.361 ns | 0.338 ns | 25.43 ns | 25.67 ns | 26.19 ns | 1.27 | 0.02 | 2 | 0.0062 | 104 B | 1.30 | -| AgileMapper | 333.89 ns | 1.756 ns | 1.557 ns | 330.43 ns | 333.76 ns | 336.87 ns | 16.43 | 0.13 | 6 | 0.0205 | 344 B | 4.30 | +| Manual | 18.38 ns | 0.070 ns | 0.065 ns | 18.30 ns | 18.35 ns | 18.51 ns | 1.00 | 0.00 | 1 | 0.0048 | 80 B | 1.00 | +| EggMap | 28.81 ns | 0.102 ns | 0.080 ns | 28.62 ns | 28.84 ns | 28.88 ns | 1.57 | 0.01 | 3 | 0.0048 | 80 B | 1.00 | +| AutoMapper | 88.24 ns | 0.155 ns | 0.138 ns | 88.08 ns | 88.18 ns | 88.48 ns | 4.80 | 0.02 | 5 | 0.0048 | 80 B | 1.00 | +| Mapster | 46.56 ns | 0.077 ns | 0.068 ns | 46.47 ns | 46.55 ns | 46.72 ns | 2.53 | 0.01 | 4 | 0.0048 | 80 B | 1.00 | +| MapperlyMap | 23.48 ns | 0.068 ns | 0.061 ns | 23.32 ns | 23.48 ns | 23.56 ns | 1.28 | 0.01 | 2 | 0.0062 | 104 B | 1.30 | +| AgileMapper | 522.21 ns | 0.775 ns | 0.725 ns | 521.02 ns | 522.15 ns | 523.54 ns | 28.42 | 0.10 | 6 | 0.0200 | 344 B | 4.30 | #### 🟣 Deep Mapping (2 nested objects) | Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Allocated | Alloc Ratio | |------------ |----------:|---------:|---------:|----------:|----------:|----------:|------:|--------:|-----:|-------:|----------:|------------:| -| Manual | 57.85 ns | 0.127 ns | 0.113 ns | 57.73 ns | 57.83 ns | 58.06 ns | 1.00 | 0.00 | 1 | 0.0162 | 272 B | 1.00 | -| EggMapper | 73.59 ns | 0.491 ns | 0.459 ns | 72.83 ns | 73.65 ns | 74.32 ns | 1.27 | 0.01 | 2 | 0.0162 | 272 B | 1.00 | -| AutoMapper | 109.06 ns | 0.164 ns | 0.145 ns | 108.84 ns | 109.04 ns | 109.32 ns | 1.89 | 0.00 | 3 | 0.0162 | 272 B | 1.00 | -| Mapster | 72.58 ns | 0.189 ns | 0.177 ns | 72.41 ns | 72.54 ns | 72.90 ns | 1.25 | 0.00 | 2 | 0.0162 | 272 B | 1.00 | -| MapperlyMap | 56.32 ns | 0.674 ns | 0.630 ns | 55.47 ns | 56.28 ns | 57.56 ns | 0.97 | 0.01 | 1 | 0.0162 | 272 B | 1.00 | -| AgileMapper | 412.46 ns | 0.983 ns | 0.871 ns | 410.56 ns | 412.52 ns | 414.07 ns | 7.13 | 0.02 | 4 | 0.0253 | 424 B | 1.56 | +| Manual | 53.57 ns | 0.199 ns | 0.176 ns | 53.14 ns | 53.56 ns | 53.87 ns | 1.00 | 0.00 | 2 | 0.0162 | 272 B | 1.00 | +| EggMapper | 64.40 ns | 0.380 ns | 0.337 ns | 63.74 ns | 64.46 ns | 64.91 ns | 1.20 | 0.01 | 3 | 0.0162 | 272 B | 1.00 | +| AutoMapper | 120.99 ns | 0.549 ns | 0.487 ns | 120.46 ns | 120.90 ns | 122.14 ns | 2.26 | 0.01 | 5 | 0.0162 | 272 B | 1.00 | +| Mapster | 67.58 ns | 0.152 ns | 0.127 ns | 67.34 ns | 67.54 ns | 67.80 ns | 1.26 | 0.00 | 4 | 0.0162 | 272 B | 1.00 | +| MapperlyMap | 48.97 ns | 0.161 ns | 0.142 ns | 48.64 ns | 48.97 ns | 49.20 ns | 0.91 | 0.00 | 1 | 0.0162 | 272 B | 1.00 | +| AgileMapper | 505.24 ns | 1.295 ns | 1.212 ns | 503.45 ns | 504.95 ns | 507.46 ns | 9.43 | 0.04 | 6 | 0.0248 | 424 B | 1.56 | #### 🟢 Complex Mapping (nested + collection) | Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Allocated | Alloc Ratio | |------------ |----------:|---------:|---------:|----------:|----------:|----------:|------:|--------:|-----:|-------:|----------:|------------:| -| Manual | 82.74 ns | 0.525 ns | 0.491 ns | 81.76 ns | 82.98 ns | 83.23 ns | 1.00 | 0.01 | 1 | 0.0191 | 320 B | 1.00 | -| EggMapper | 107.48 ns | 0.952 ns | 0.890 ns | 105.74 ns | 107.61 ns | 108.67 ns | 1.30 | 0.01 | 3 | 0.0191 | 320 B | 1.00 | -| AutoMapper | 146.89 ns | 1.469 ns | 1.375 ns | 144.72 ns | 146.71 ns | 149.89 ns | 1.78 | 0.02 | 4 | 0.0196 | 328 B | 1.02 | -| Mapster | 103.45 ns | 0.702 ns | 0.622 ns | 102.19 ns | 103.41 ns | 104.51 ns | 1.25 | 0.01 | 2 | 0.0191 | 320 B | 1.00 | -| MapperlyMap | 80.72 ns | 0.719 ns | 0.673 ns | 79.42 ns | 80.91 ns | 81.64 ns | 0.98 | 0.01 | 1 | 0.0191 | 320 B | 1.00 | -| AgileMapper | 397.18 ns | 1.295 ns | 1.082 ns | 395.51 ns | 397.19 ns | 399.32 ns | 4.80 | 0.03 | 5 | 0.0315 | 528 B | 1.65 | +| Manual | 70.36 ns | 0.219 ns | 0.194 ns | 70.16 ns | 70.30 ns | 70.85 ns | 1.00 | 0.00 | 1 | 0.0191 | 320 B | 1.00 | +| EggMapper | 89.57 ns | 0.476 ns | 0.446 ns | 89.05 ns | 89.41 ns | 90.46 ns | 1.27 | 0.01 | 2 | 0.0191 | 320 B | 1.00 | +| AutoMapper | 146.92 ns | 0.351 ns | 0.293 ns | 146.43 ns | 146.94 ns | 147.43 ns | 2.09 | 0.01 | 3 | 0.0196 | 328 B | 1.02 | +| Mapster | 89.86 ns | 0.248 ns | 0.194 ns | 89.49 ns | 89.87 ns | 90.23 ns | 1.28 | 0.00 | 2 | 0.0191 | 320 B | 1.00 | +| MapperlyMap | 69.81 ns | 0.415 ns | 0.388 ns | 69.22 ns | 69.99 ns | 70.31 ns | 0.99 | 0.01 | 1 | 0.0191 | 320 B | 1.00 | +| AgileMapper | 554.74 ns | 1.237 ns | 1.157 ns | 553.41 ns | 554.52 ns | 557.64 ns | 7.88 | 0.03 | 4 | 0.0315 | 528 B | 1.65 | #### 🟠 Collection (100 items) -| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | -|------------ |---------:|----------:|----------:|---------:|---------:|---------:|------:|--------:|-----:|-------:|-------:|----------:|------------:| -| Manual | 2.088 μs | 0.0417 μs | 0.1113 μs | 1.932 μs | 2.072 μs | 2.372 μs | 1.00 | 0.07 | 1 | 0.5264 | 0.0153 | 8.65 KB | 1.00 | -| EggMapper | 2.171 μs | 0.0375 μs | 0.0351 μs | 2.121 μs | 2.167 μs | 2.255 μs | 1.04 | 0.06 | 1 | 0.5264 | 0.0153 | 8.65 KB | 1.00 | -| AutoMapper | 2.650 μs | 0.0338 μs | 0.0316 μs | 2.598 μs | 2.648 μs | 2.703 μs | 1.27 | 0.07 | 2 | 0.6065 | 0.0191 | 9.95 KB | 1.15 | -| Mapster | 2.032 μs | 0.0393 μs | 0.0436 μs | 1.959 μs | 2.027 μs | 2.115 μs | 0.98 | 0.05 | 1 | 0.5264 | 0.0153 | 8.65 KB | 1.00 | -| MapperlyMap | 2.242 μs | 0.0390 μs | 0.0365 μs | 2.146 μs | 2.244 μs | 2.288 μs | 1.08 | 0.06 | 1 | 0.5264 | 0.0153 | 8.65 KB | 1.00 | -| AgileMapper | 2.776 μs | 0.0552 μs | 0.1164 μs | 2.601 μs | 2.781 μs | 3.043 μs | 1.33 | 0.09 | 2 | 0.5417 | 0.0153 | 8.91 KB | 1.03 | +| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | +|------------ |---------:|----------:|----------:|---------:|---------:|---------:|------:|-----:|-------:|-------:|----------:|------------:| +| Manual | 1.696 μs | 0.0058 μs | 0.0055 μs | 1.683 μs | 1.697 μs | 1.703 μs | 1.00 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 | +| EggMapper | 1.656 μs | 0.0124 μs | 0.0116 μs | 1.631 μs | 1.659 μs | 1.668 μs | 0.98 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 | +| AutoMapper | 2.330 μs | 0.0117 μs | 0.0098 μs | 2.313 μs | 2.328 μs | 2.348 μs | 1.37 | 3 | 0.6065 | 0.0191 | 9.95 KB | 1.15 | +| Mapster | 1.721 μs | 0.0074 μs | 0.0062 μs | 1.708 μs | 1.720 μs | 1.729 μs | 1.01 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 | +| MapperlyMap | 1.841 μs | 0.0083 μs | 0.0078 μs | 1.825 μs | 1.841 μs | 1.853 μs | 1.09 | 2 | 0.5283 | 0.0172 | 8.65 KB | 1.00 | +| AgileMapper | 2.476 μs | 0.0086 μs | 0.0080 μs | 2.467 μs | 2.473 μs | 2.491 μs | 1.46 | 4 | 0.5417 | 0.0153 | 8.91 KB | 1.03 | #### 🔴 Deep Collection (100 items, nested) | Method | Mean | Error | StdDev | Min | Median | Max | Ratio | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | |------------ |---------:|----------:|----------:|---------:|---------:|---------:|------:|-----:|-------:|-------:|----------:|------------:| -| Manual | 6.001 μs | 0.0324 μs | 0.0270 μs | 5.938 μs | 6.019 μs | 6.024 μs | 1.00 | 2 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | -| EggMapper | 6.398 μs | 0.0378 μs | 0.0335 μs | 6.302 μs | 6.408 μs | 6.425 μs | 1.07 | 3 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | -| AutoMapper | 7.153 μs | 0.0372 μs | 0.0311 μs | 7.077 μs | 7.157 μs | 7.196 μs | 1.19 | 4 | 1.7548 | 0.1068 | 28.7 KB | 1.05 | -| Mapster | 6.508 μs | 0.0446 μs | 0.0396 μs | 6.416 μs | 6.514 μs | 6.572 μs | 1.08 | 3 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | -| MapperlyMap | 5.946 μs | 0.0106 μs | 0.0094 μs | 5.935 μs | 5.943 μs | 5.968 μs | 0.99 | 2 | 1.6785 | 0.0992 | 27.42 KB | 1.00 | -| AgileMapper | 5.651 μs | 0.0328 μs | 0.0274 μs | 5.599 μs | 5.653 μs | 5.706 μs | 0.94 | 1 | 1.0223 | 0.0610 | 16.72 KB | 0.61 | +| Manual | 5.205 μs | 0.0314 μs | 0.0294 μs | 5.166 μs | 5.197 μs | 5.272 μs | 1.00 | 1 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | +| EggMapper | 5.662 μs | 0.0530 μs | 0.0496 μs | 5.592 μs | 5.677 μs | 5.727 μs | 1.09 | 2 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | +| AutoMapper | 6.395 μs | 0.0236 μs | 0.0221 μs | 6.339 μs | 6.395 μs | 6.429 μs | 1.23 | 3 | 1.7548 | 0.1068 | 28.7 KB | 1.05 | +| Mapster | 5.679 μs | 0.0242 μs | 0.0202 μs | 5.632 μs | 5.685 μs | 5.701 μs | 1.09 | 2 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | +| MapperlyMap | 5.278 μs | 0.0267 μs | 0.0250 μs | 5.226 μs | 5.283 μs | 5.315 μs | 1.01 | 1 | 1.6785 | 0.0992 | 27.42 KB | 1.00 | +| AgileMapper | 5.103 μs | 0.0204 μs | 0.0181 μs | 5.065 μs | 5.105 μs | 5.130 μs | 0.98 | 1 | 1.0223 | 0.0610 | 16.72 KB | 0.61 | #### ⚫ Large Collection (1,000 items) -| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | -|------------ |---------:|---------:|---------:|---------:|---------:|---------:|------:|--------:|-----:|-------:|-------:|----------:|------------:| -| Manual | 21.92 μs | 0.345 μs | 0.288 μs | 21.37 μs | 21.96 μs | 22.47 μs | 1.00 | 0.02 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | -| EggMapper | 21.75 μs | 0.425 μs | 0.745 μs | 19.82 μs | 21.83 μs | 23.33 μs | 0.99 | 0.04 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | -| AutoMapper | 24.75 μs | 0.479 μs | 0.655 μs | 23.86 μs | 24.59 μs | 26.29 μs | 1.13 | 0.03 | 3 | 5.7678 | 1.4343 | 94.34 KB | 1.10 | -| Mapster | 21.00 μs | 0.402 μs | 0.395 μs | 20.08 μs | 20.93 μs | 21.68 μs | 0.96 | 0.02 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | -| MapperlyMap | 21.99 μs | 0.436 μs | 0.728 μs | 20.77 μs | 22.04 μs | 23.63 μs | 1.00 | 0.04 | 1 | 5.2490 | 1.2817 | 86.02 KB | 1.00 | -| AgileMapper | 23.53 μs | 0.315 μs | 0.337 μs | 22.97 μs | 23.52 μs | 24.33 μs | 1.07 | 0.02 | 2 | 5.2795 | 1.3123 | 86.25 KB | 1.00 | +| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | +|------------ |---------:|---------:|---------:|---------:|---------:|---------:|------:|-----:|-------:|-------:|----------:|------------:| +| Manual | 17.30 μs | 0.137 μs | 0.121 μs | 17.09 μs | 17.32 μs | 17.48 μs | 1.00 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | +| EggMapper | 17.01 μs | 0.087 μs | 0.077 μs | 16.83 μs | 17.01 μs | 17.13 μs | 0.98 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | +| AutoMapper | 21.01 μs | 0.100 μs | 0.078 μs | 20.82 μs | 21.04 μs | 21.08 μs | 1.21 | 4 | 5.7678 | 1.4343 | 94.34 KB | 1.10 | +| Mapster | 17.03 μs | 0.105 μs | 0.093 μs | 16.80 μs | 17.02 μs | 17.19 μs | 0.98 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | +| MapperlyMap | 17.84 μs | 0.054 μs | 0.051 μs | 17.77 μs | 17.84 μs | 17.94 μs | 1.03 | 2 | 5.2490 | 1.2817 | 86.02 KB | 1.00 | +| AgileMapper | 20.09 μs | 0.025 μs | 0.021 μs | 20.05 μs | 20.08 μs | 20.12 μs | 1.16 | 3 | 5.2795 | 1.3123 | 86.25 KB | 1.00 | #### ⚪ Startup / Config -| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | -|------------------ |-------------:|----------:|----------:|-------------:|-------------:|-------------:|------:|-----:|-------:|-------:|----------:|------------:| -| EggMapperStartup | 1,167.515 μs | 8.6462 μs | 7.2200 μs | 1,154.638 μs | 1,166.140 μs | 1,178.981 μs | 1.000 | 3 | 3.9063 | 1.9531 | 95.2 KB | 1.00 | -| AutoMapperStartup | 246.947 μs | 1.2288 μs | 1.0893 μs | 244.479 μs | 247.263 μs | 248.474 μs | 0.212 | 2 | 5.8594 | - | 103.82 KB | 1.09 | -| MapsterStartup | 2.719 μs | 0.0541 μs | 0.0842 μs | 2.598 μs | 2.700 μs | 2.900 μs | 0.002 | 1 | 0.7019 | 0.0267 | 11.51 KB | 0.12 | +| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | +|------------------ |-------------:|-----------:|-----------:|-------------:|-------------:|-------------:|------:|--------:|-----:|-------:|-------:|----------:|------------:| +| EggMapperStartup | 1,220.261 μs | 19.3893 μs | 18.1367 μs | 1,181.932 μs | 1,225.158 μs | 1,241.877 μs | 1.000 | 0.02 | 3 | 5.8594 | 3.9063 | 95.61 KB | 1.00 | +| AutoMapperStartup | 283.320 μs | 1.7124 μs | 1.5180 μs | 281.136 μs | 283.234 μs | 286.687 μs | 0.232 | 0.00 | 2 | 5.8594 | - | 104.04 KB | 1.09 | +| MapsterStartup | 2.401 μs | 0.0030 μs | 0.0027 μs | 2.397 μs | 2.400 μs | 2.406 μs | 0.002 | 0.00 | 1 | 0.7019 | 0.0267 | 11.51 KB | 0.12 | #### ⚪ Cold Start (Config + First Map per Type Pair) | Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | |----------- |---------:|----------:|----------:|---------:|---------:|---------:|------:|--------:|-----:|--------:|--------:|----------:|------------:| -| EggMapper | 1.174 ms | 0.0176 ms | 0.0156 ms | 1.150 ms | 1.181 ms | 1.198 ms | 1.00 | 0.02 | 1 | 5.8594 | 3.9063 | 95.84 KB | 1.00 | -| AutoMapper | 3.533 ms | 0.0562 ms | 0.0525 ms | 3.404 ms | 3.554 ms | 3.583 ms | 3.01 | 0.06 | 3 | 15.6250 | 7.8125 | 309.72 KB | 3.23 | -| Mapster | 2.630 ms | 0.0084 ms | 0.0070 ms | 2.619 ms | 2.630 ms | 2.644 ms | 2.24 | 0.03 | 2 | 46.8750 | 15.6250 | 766.46 KB | 8.00 | +| EggMapper | 1.162 ms | 0.0060 ms | 0.0050 ms | 1.152 ms | 1.162 ms | 1.169 ms | 1.00 | 0.01 | 1 | 5.8594 | 3.9063 | 96.06 KB | 1.00 | +| AutoMapper | 3.217 ms | 0.0173 ms | 0.0162 ms | 3.197 ms | 3.211 ms | 3.250 ms | 2.77 | 0.02 | 3 | 15.6250 | 7.8125 | 310.25 KB | 3.23 | +| Mapster | 2.483 ms | 0.0210 ms | 0.0196 ms | 2.463 ms | 2.472 ms | 2.533 ms | 2.14 | 0.02 | 2 | 46.8750 | 15.6250 | 766.47 KB | 7.98 | ---