diff --git a/README.md b/README.md index 2f872b6..30c0df4 100644 --- a/README.md +++ b/README.md @@ -85,7 +85,7 @@ public class MyService(IMapper mapper) { ... } ## Performance -> ⏱ **Last updated:** 2026-05-22 15:12 UTC +> ⏱ **Last updated:** 2026-09-15 13:57 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.15 ns | **29.01 ns (1.8×)** | 28.16 ns (1.7×) | 80.39 ns (5.0×) | 17.14 ns (1.1×) | -| **Flattening** | 20.73 ns | **31.25 ns (1.5×)** | 34.24 ns (1.6×) | 84.05 ns (4.0×) | 24.53 ns (1.2×) | -| **Deep (2 nested)** | 56.27 ns | **69.58 ns (1.2×)** | 73.01 ns (1.3×) | 108.09 ns (1.9×) | 52.90 ns (0.9×) | -| **Complex (nest+coll)** | 88.16 ns | **105.17 ns (1.2×)** | 100.13 ns (1.1×) | 145.32 ns (1.6×) | 80.72 ns (0.9×) | -| **Collection (100)** | 2.208 μs | **2.095 μs (0.9×)** | 2.058 μs (0.9×) | 2.641 μs (1.2×) | 2.156 μs (1.0×) | -| **Deep Coll (100)** | 5.985 μs | **6.458 μs (1.1×)** | 6.416 μs (1.1×) | 7.090 μs (1.2×) | 5.878 μs (1.0×) | -| **Large Coll (1000)** | 21.52 μs | **20.78 μs (1.0×)** | 21.46 μs (1.0×) | 25.36 μs (1.2×) | 22.22 μs (1.0×) | +| **Flat (10 props)** | 15.36 ns | **27.67 ns (1.8×)** | 28.51 ns (1.9×) | 83.06 ns (5.4×) | 15.46 ns (1.0×) | +| **Flattening** | 19.06 ns | **30.65 ns (1.6×)** | 36.62 ns (1.9×) | 88.49 ns (4.6×) | 22.70 ns (1.2×) | +| **Deep (2 nested)** | 54.35 ns | **65.44 ns (1.2×)** | 69.31 ns (1.3×) | 121.82 ns (2.2×) | 49.91 ns (0.9×) | +| **Complex (nest+coll)** | 71.15 ns | **93.34 ns (1.3×)** | 89.92 ns (1.3×) | 157.63 ns (2.2×) | 72.00 ns (1.0×) | +| **Collection (100)** | 1.790 μs | **1.710 μs (1.0×)** | 1.766 μs (1.0×) | 2.323 μs (1.3×) | 1.924 μs (1.1×) | +| **Deep Coll (100)** | 5.353 μs | **5.871 μs (1.1×)** | 5.912 μs (1.1×) | 6.664 μs (1.2×) | 5.504 μs (1.0×) | +| **Large Coll (1000)** | 17.76 μs | **17.26 μs (1.0×)** | 17.53 μs (1.0×) | 21.49 μs (1.2×) | 18.67 μs (1.1×) | **\*** *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.15 ns | 0.273 ns | 0.242 ns | 15.71 ns | 16.21 ns | 16.42 ns | 1.00 | 0.02 | 1 | 0.0048 | 80 B | 1.00 | -| EggMapper | 29.01 ns | 0.282 ns | 0.264 ns | 28.57 ns | 28.99 ns | 29.38 ns | 1.80 | 0.03 | 2 | 0.0048 | 80 B | 1.00 | -| AutoMapper | 80.39 ns | 0.074 ns | 0.061 ns | 80.29 ns | 80.41 ns | 80.47 ns | 4.98 | 0.07 | 3 | 0.0048 | 80 B | 1.00 | -| Mapster | 28.16 ns | 0.424 ns | 0.397 ns | 27.62 ns | 28.22 ns | 28.88 ns | 1.74 | 0.03 | 2 | 0.0048 | 80 B | 1.00 | -| MapperlyMap | 17.14 ns | 0.397 ns | 0.407 ns | 16.02 ns | 17.21 ns | 17.68 ns | 1.06 | 0.03 | 1 | 0.0048 | 80 B | 1.00 | -| AgileMapper | 372.54 ns | 1.937 ns | 1.812 ns | 368.55 ns | 372.64 ns | 374.88 ns | 23.08 | 0.35 | 4 | 0.0205 | 344 B | 4.30 | -| EggMapperGenerator | 16.26 ns | 0.172 ns | 0.143 ns | 16.07 ns | 16.25 ns | 16.63 ns | 1.01 | 0.02 | 1 | 0.0048 | 80 B | 1.00 | -| EggMapperClassMapper | 16.96 ns | 0.322 ns | 0.301 ns | 16.44 ns | 16.95 ns | 17.44 ns | 1.05 | 0.02 | 1 | 0.0048 | 80 B | 1.00 | +| Manual | 15.36 ns | 0.265 ns | 0.221 ns | 14.89 ns | 15.41 ns | 15.67 ns | 1.00 | 0.02 | 1 | 0.0048 | 80 B | 1.00 | +| EggMapper | 27.67 ns | 0.495 ns | 0.463 ns | 27.02 ns | 27.67 ns | 28.61 ns | 1.80 | 0.04 | 2 | 0.0048 | 80 B | 1.00 | +| AutoMapper | 83.06 ns | 0.676 ns | 0.565 ns | 82.45 ns | 82.93 ns | 84.58 ns | 5.41 | 0.08 | 3 | 0.0048 | 80 B | 1.00 | +| Mapster | 28.51 ns | 0.398 ns | 0.353 ns | 27.86 ns | 28.58 ns | 29.08 ns | 1.86 | 0.03 | 2 | 0.0048 | 80 B | 1.00 | +| MapperlyMap | 15.46 ns | 0.374 ns | 0.350 ns | 14.91 ns | 15.55 ns | 16.03 ns | 1.01 | 0.03 | 1 | 0.0048 | 80 B | 1.00 | +| AgileMapper | 500.13 ns | 2.157 ns | 2.017 ns | 496.61 ns | 500.12 ns | 503.68 ns | 32.57 | 0.47 | 4 | 0.0200 | 344 B | 4.30 | +| EggMapperGenerator | 15.27 ns | 0.272 ns | 0.241 ns | 14.95 ns | 15.21 ns | 15.68 ns | 0.99 | 0.02 | 1 | 0.0048 | 80 B | 1.00 | +| EggMapperClassMapper | 15.77 ns | 0.202 ns | 0.169 ns | 15.52 ns | 15.77 ns | 16.16 ns | 1.03 | 0.02 | 1 | 0.0048 | 80 B | 1.00 | #### 🟡 Flattening | Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Allocated | Alloc Ratio | |------------ |----------:|---------:|---------:|----------:|----------:|----------:|------:|--------:|-----:|-------:|----------:|------------:| -| Manual | 20.73 ns | 0.193 ns | 0.180 ns | 20.32 ns | 20.73 ns | 21.03 ns | 1.00 | 0.01 | 1 | 0.0048 | 80 B | 1.00 | -| EggMap | 31.25 ns | 0.297 ns | 0.263 ns | 30.94 ns | 31.23 ns | 31.88 ns | 1.51 | 0.02 | 3 | 0.0048 | 80 B | 1.00 | -| AutoMapper | 84.05 ns | 0.361 ns | 0.320 ns | 83.72 ns | 83.89 ns | 84.53 ns | 4.05 | 0.04 | 5 | 0.0048 | 80 B | 1.00 | -| Mapster | 34.24 ns | 0.383 ns | 0.359 ns | 33.82 ns | 34.15 ns | 34.98 ns | 1.65 | 0.02 | 4 | 0.0048 | 80 B | 1.00 | -| MapperlyMap | 24.53 ns | 0.397 ns | 0.371 ns | 24.09 ns | 24.47 ns | 25.18 ns | 1.18 | 0.02 | 2 | 0.0062 | 104 B | 1.30 | -| AgileMapper | 325.54 ns | 2.157 ns | 1.912 ns | 323.15 ns | 325.18 ns | 330.02 ns | 15.70 | 0.16 | 6 | 0.0205 | 344 B | 4.30 | +| Manual | 19.06 ns | 0.206 ns | 0.193 ns | 18.77 ns | 19.03 ns | 19.37 ns | 1.00 | 0.01 | 1 | 0.0048 | 80 B | 1.00 | +| EggMap | 30.65 ns | 0.592 ns | 0.581 ns | 29.79 ns | 30.55 ns | 31.81 ns | 1.61 | 0.03 | 3 | 0.0048 | 80 B | 1.00 | +| AutoMapper | 88.49 ns | 0.391 ns | 0.365 ns | 87.68 ns | 88.66 ns | 88.94 ns | 4.64 | 0.05 | 5 | 0.0048 | 80 B | 1.00 | +| Mapster | 36.62 ns | 0.535 ns | 0.475 ns | 35.99 ns | 36.43 ns | 37.86 ns | 1.92 | 0.03 | 4 | 0.0048 | 80 B | 1.00 | +| MapperlyMap | 22.70 ns | 0.375 ns | 0.351 ns | 22.16 ns | 22.66 ns | 23.36 ns | 1.19 | 0.02 | 2 | 0.0062 | 104 B | 1.30 | +| AgileMapper | 534.62 ns | 3.249 ns | 2.880 ns | 530.84 ns | 533.85 ns | 541.99 ns | 28.05 | 0.31 | 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 | 56.27 ns | 0.099 ns | 0.083 ns | 56.14 ns | 56.25 ns | 56.40 ns | 1.00 | 0.00 | 2 | 0.0162 | 272 B | 1.00 | -| EggMapper | 69.58 ns | 0.303 ns | 0.269 ns | 69.11 ns | 69.50 ns | 69.98 ns | 1.24 | 0.00 | 3 | 0.0162 | 272 B | 1.00 | -| AutoMapper | 108.09 ns | 0.203 ns | 0.180 ns | 107.82 ns | 108.06 ns | 108.38 ns | 1.92 | 0.00 | 5 | 0.0162 | 272 B | 1.00 | -| Mapster | 73.01 ns | 0.804 ns | 0.752 ns | 70.97 ns | 73.24 ns | 73.86 ns | 1.30 | 0.01 | 4 | 0.0162 | 272 B | 1.00 | -| MapperlyMap | 52.90 ns | 0.270 ns | 0.239 ns | 52.56 ns | 52.86 ns | 53.24 ns | 0.94 | 0.00 | 1 | 0.0162 | 272 B | 1.00 | -| AgileMapper | 358.36 ns | 1.869 ns | 1.748 ns | 354.39 ns | 358.28 ns | 361.11 ns | 6.37 | 0.03 | 6 | 0.0253 | 424 B | 1.56 | +| Manual | 54.35 ns | 0.855 ns | 0.800 ns | 53.02 ns | 54.25 ns | 56.00 ns | 1.00 | 0.02 | 2 | 0.0162 | 272 B | 1.00 | +| EggMapper | 65.44 ns | 1.257 ns | 1.345 ns | 63.24 ns | 65.36 ns | 68.38 ns | 1.20 | 0.03 | 3 | 0.0162 | 272 B | 1.00 | +| AutoMapper | 121.82 ns | 2.341 ns | 2.695 ns | 118.75 ns | 120.89 ns | 127.14 ns | 2.24 | 0.06 | 5 | 0.0162 | 272 B | 1.00 | +| Mapster | 69.31 ns | 1.278 ns | 1.133 ns | 67.93 ns | 68.97 ns | 71.82 ns | 1.28 | 0.03 | 4 | 0.0162 | 272 B | 1.00 | +| MapperlyMap | 49.91 ns | 0.745 ns | 0.696 ns | 48.19 ns | 50.00 ns | 50.85 ns | 0.92 | 0.02 | 1 | 0.0162 | 272 B | 1.00 | +| AgileMapper | 513.02 ns | 4.132 ns | 3.865 ns | 506.92 ns | 511.42 ns | 521.35 ns | 9.44 | 0.15 | 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 | 88.16 ns | 0.947 ns | 0.886 ns | 86.06 ns | 88.35 ns | 89.58 ns | 1.00 | 0.01 | 2 | 0.0191 | 320 B | 1.00 | -| EggMapper | 105.17 ns | 0.717 ns | 0.636 ns | 104.08 ns | 105.30 ns | 106.06 ns | 1.19 | 0.01 | 4 | 0.0191 | 320 B | 1.00 | -| AutoMapper | 145.32 ns | 1.394 ns | 1.304 ns | 143.47 ns | 145.31 ns | 147.61 ns | 1.65 | 0.02 | 5 | 0.0196 | 328 B | 1.02 | -| Mapster | 100.13 ns | 0.684 ns | 0.640 ns | 98.31 ns | 100.15 ns | 100.98 ns | 1.14 | 0.01 | 3 | 0.0191 | 320 B | 1.00 | -| MapperlyMap | 80.72 ns | 1.258 ns | 1.115 ns | 77.72 ns | 81.16 ns | 81.90 ns | 0.92 | 0.02 | 1 | 0.0191 | 320 B | 1.00 | -| AgileMapper | 405.62 ns | 1.279 ns | 1.196 ns | 403.89 ns | 405.46 ns | 407.62 ns | 4.60 | 0.05 | 6 | 0.0315 | 528 B | 1.65 | +| Manual | 71.15 ns | 1.091 ns | 1.020 ns | 69.81 ns | 71.02 ns | 73.28 ns | 1.00 | 0.02 | 1 | 0.0191 | 320 B | 1.00 | +| EggMapper | 93.34 ns | 1.038 ns | 0.867 ns | 91.80 ns | 93.38 ns | 94.99 ns | 1.31 | 0.02 | 2 | 0.0191 | 320 B | 1.00 | +| AutoMapper | 157.63 ns | 2.769 ns | 2.590 ns | 153.02 ns | 158.86 ns | 160.31 ns | 2.22 | 0.05 | 3 | 0.0196 | 328 B | 1.02 | +| Mapster | 89.92 ns | 1.123 ns | 1.050 ns | 88.36 ns | 89.78 ns | 91.86 ns | 1.26 | 0.02 | 2 | 0.0191 | 320 B | 1.00 | +| MapperlyMap | 72.00 ns | 0.747 ns | 0.662 ns | 71.16 ns | 71.99 ns | 73.24 ns | 1.01 | 0.02 | 1 | 0.0191 | 320 B | 1.00 | +| AgileMapper | 541.38 ns | 3.835 ns | 3.587 ns | 533.88 ns | 541.60 ns | 547.47 ns | 7.61 | 0.12 | 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.208 μs | 0.0290 μs | 0.0271 μs | 2.164 μs | 2.215 μs | 2.251 μs | 1.00 | 0.02 | 1 | 0.5264 | 0.0153 | 8.65 KB | 1.00 | -| EggMapper | 2.095 μs | 0.0412 μs | 0.0850 μs | 1.912 μs | 2.090 μs | 2.274 μs | 0.95 | 0.04 | 1 | 0.5264 | 0.0153 | 8.65 KB | 1.00 | -| AutoMapper | 2.641 μs | 0.0527 μs | 0.0951 μs | 2.497 μs | 2.655 μs | 2.899 μs | 1.20 | 0.04 | 2 | 0.6065 | 0.0191 | 9.95 KB | 1.15 | -| Mapster | 2.058 μs | 0.0405 μs | 0.0897 μs | 1.910 μs | 2.059 μs | 2.286 μs | 0.93 | 0.04 | 1 | 0.5264 | 0.0153 | 8.65 KB | 1.00 | -| MapperlyMap | 2.156 μs | 0.0414 μs | 0.0539 μs | 2.049 μs | 2.155 μs | 2.265 μs | 0.98 | 0.03 | 1 | 0.5264 | 0.0153 | 8.65 KB | 1.00 | -| AgileMapper | 2.722 μs | 0.0523 μs | 0.0603 μs | 2.616 μs | 2.709 μs | 2.822 μs | 1.23 | 0.03 | 2 | 0.5417 | 0.0153 | 8.91 KB | 1.03 | +| Manual | 1.790 μs | 0.0357 μs | 0.0489 μs | 1.727 μs | 1.775 μs | 1.907 μs | 1.00 | 0.04 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 | +| EggMapper | 1.710 μs | 0.0244 μs | 0.0216 μs | 1.668 μs | 1.714 μs | 1.743 μs | 0.96 | 0.03 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 | +| AutoMapper | 2.323 μs | 0.0292 μs | 0.0228 μs | 2.292 μs | 2.319 μs | 2.383 μs | 1.30 | 0.04 | 3 | 0.6065 | 0.0191 | 9.95 KB | 1.15 | +| Mapster | 1.766 μs | 0.0346 μs | 0.0518 μs | 1.673 μs | 1.756 μs | 1.885 μs | 0.99 | 0.04 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 | +| MapperlyMap | 1.924 μs | 0.0234 μs | 0.0219 μs | 1.893 μs | 1.924 μs | 1.961 μs | 1.08 | 0.03 | 2 | 0.5283 | 0.0172 | 8.65 KB | 1.00 | +| AgileMapper | 2.623 μs | 0.0482 μs | 0.0451 μs | 2.539 μs | 2.616 μs | 2.697 μs | 1.47 | 0.05 | 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 | 5.985 μs | 0.0644 μs | 0.0571 μs | 5.871 μs | 5.975 μs | 6.086 μs | 1.00 | 2 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | -| EggMapper | 6.458 μs | 0.0696 μs | 0.0651 μs | 6.338 μs | 6.429 μs | 6.581 μs | 1.08 | 3 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | -| AutoMapper | 7.090 μs | 0.0181 μs | 0.0161 μs | 7.065 μs | 7.087 μs | 7.116 μs | 1.18 | 4 | 1.7548 | 0.1068 | 28.7 KB | 1.05 | -| Mapster | 6.416 μs | 0.0431 μs | 0.0403 μs | 6.332 μs | 6.420 μs | 6.492 μs | 1.07 | 3 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | -| MapperlyMap | 5.878 μs | 0.0299 μs | 0.0265 μs | 5.845 μs | 5.867 μs | 5.928 μs | 0.98 | 2 | 1.6785 | 0.0992 | 27.42 KB | 1.00 | -| AgileMapper | 5.628 μs | 0.0280 μs | 0.0234 μs | 5.596 μs | 5.631 μs | 5.682 μs | 0.94 | 1 | 1.0223 | 0.0610 | 16.72 KB | 0.61 | +| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | +|------------ |---------:|----------:|----------:|---------:|---------:|---------:|------:|--------:|-----:|-------:|-------:|----------:|------------:| +| Manual | 5.353 μs | 0.0914 μs | 0.0855 μs | 5.213 μs | 5.314 μs | 5.495 μs | 1.00 | 0.02 | 1 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | +| EggMapper | 5.871 μs | 0.0987 μs | 0.0923 μs | 5.681 μs | 5.891 μs | 6.005 μs | 1.10 | 0.02 | 2 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | +| AutoMapper | 6.664 μs | 0.1311 μs | 0.1287 μs | 6.393 μs | 6.687 μs | 6.841 μs | 1.25 | 0.03 | 3 | 1.7548 | 0.1068 | 28.7 KB | 1.05 | +| Mapster | 5.912 μs | 0.1066 μs | 0.1185 μs | 5.729 μs | 5.921 μs | 6.149 μs | 1.10 | 0.03 | 2 | 1.6708 | 0.0916 | 27.4 KB | 1.00 | +| MapperlyMap | 5.504 μs | 0.1031 μs | 0.1013 μs | 5.290 μs | 5.491 μs | 5.681 μs | 1.03 | 0.02 | 1 | 1.6785 | 0.0992 | 27.42 KB | 1.00 | +| AgileMapper | 5.125 μs | 0.1001 μs | 0.0887 μs | 5.011 μs | 5.105 μs | 5.299 μs | 0.96 | 0.02 | 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.52 μs | 0.183 μs | 0.162 μs | 21.15 μs | 21.58 μs | 21.70 μs | 1.00 | 0.01 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | -| EggMapper | 20.78 μs | 0.414 μs | 0.935 μs | 19.46 μs | 20.71 μs | 23.24 μs | 0.97 | 0.04 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | -| AutoMapper | 25.36 μs | 0.503 μs | 0.517 μs | 24.24 μs | 25.46 μs | 26.09 μs | 1.18 | 0.02 | 2 | 5.7678 | 1.4343 | 94.34 KB | 1.10 | -| Mapster | 21.46 μs | 0.426 μs | 0.880 μs | 20.07 μs | 21.31 μs | 23.60 μs | 1.00 | 0.04 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | -| MapperlyMap | 22.22 μs | 0.442 μs | 1.149 μs | 20.81 μs | 21.90 μs | 25.37 μs | 1.03 | 0.05 | 1 | 5.2490 | 1.2817 | 86.02 KB | 1.00 | -| AgileMapper | 23.03 μs | 0.456 μs | 0.823 μs | 21.85 μs | 22.79 μs | 24.88 μs | 1.07 | 0.04 | 1 | 5.2795 | 1.3123 | 86.25 KB | 1.00 | +| Manual | 17.76 μs | 0.277 μs | 0.245 μs | 17.45 μs | 17.70 μs | 18.30 μs | 1.00 | 0.02 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | +| EggMapper | 17.26 μs | 0.327 μs | 0.321 μs | 16.58 μs | 17.23 μs | 17.88 μs | 0.97 | 0.02 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | +| AutoMapper | 21.49 μs | 0.322 μs | 0.285 μs | 20.82 μs | 21.55 μs | 21.81 μs | 1.21 | 0.02 | 2 | 5.7678 | 1.4343 | 94.34 KB | 1.10 | +| Mapster | 17.53 μs | 0.348 μs | 0.453 μs | 17.00 μs | 17.41 μs | 18.67 μs | 0.99 | 0.03 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 | +| MapperlyMap | 18.67 μs | 0.324 μs | 0.303 μs | 18.17 μs | 18.76 μs | 19.17 μs | 1.05 | 0.02 | 1 | 5.2490 | 1.2817 | 86.02 KB | 1.00 | +| AgileMapper | 21.08 μs | 0.401 μs | 0.375 μs | 20.53 μs | 21.06 μs | 21.65 μs | 1.19 | 0.03 | 2 | 5.2795 | 1.3123 | 86.25 KB | 1.00 | #### ⚪ Startup / Config -| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | -|------------------ |-------------:|-----------:|-----------:|-------------:|-------------:|-------------:|------:|--------:|-----:|-------:|-------:|----------:|------------:| -| EggMapperStartup | 1,128.804 μs | 13.5841 μs | 12.7066 μs | 1,095.100 μs | 1,130.245 μs | 1,151.025 μs | 1.000 | 0.02 | 3 | 5.8594 | 1.9531 | 95.68 KB | 1.00 | -| AutoMapperStartup | 242.537 μs | 0.5804 μs | 0.5146 μs | 241.782 μs | 242.531 μs | 243.358 μs | 0.215 | 0.00 | 2 | 5.8594 | - | 103.64 KB | 1.08 | -| MapsterStartup | 2.490 μs | 0.0450 μs | 0.0631 μs | 2.434 μs | 2.471 μs | 2.648 μs | 0.002 | 0.00 | 1 | 0.7019 | 0.0267 | 11.51 KB | 0.12 | +| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio | +|------------------ |-------------:|----------:|----------:|-------------:|-------------:|-------------:|------:|-----:|-------:|-------:|----------:|------------:| +| EggMapperStartup | 1,149.892 μs | 4.5725 μs | 4.0534 μs | 1,141.599 μs | 1,150.714 μs | 1,155.339 μs | 1.000 | 3 | 3.9063 | 1.9531 | 95.31 KB | 1.00 | +| AutoMapperStartup | 286.999 μs | 2.3138 μs | 1.9321 μs | 284.670 μs | 286.450 μs | 291.391 μs | 0.250 | 2 | 5.8594 | - | 103.76 KB | 1.09 | +| MapsterStartup | 3.173 μs | 0.0617 μs | 0.0606 μs | 3.089 μs | 3.166 μs | 3.279 μs | 0.003 | 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.102 ms | 0.0102 ms | 0.0090 ms | 1.090 ms | 1.102 ms | 1.118 ms | 1.00 | 0.01 | 1 | 5.8594 | 3.9063 | 96.69 KB | 1.00 | -| AutoMapper | 3.386 ms | 0.0066 ms | 0.0052 ms | 3.379 ms | 3.386 ms | 3.398 ms | 3.07 | 0.02 | 3 | 15.6250 | 7.8125 | 310.38 KB | 3.21 | -| Mapster | 2.585 ms | 0.0145 ms | 0.0128 ms | 2.568 ms | 2.586 ms | 2.605 ms | 2.35 | 0.02 | 2 | 39.0625 | 15.6250 | 757.48 KB | 7.83 | +| EggMapper | 1.155 ms | 0.0145 ms | 0.0135 ms | 1.137 ms | 1.153 ms | 1.181 ms | 1.00 | 0.02 | 1 | 5.8594 | 3.9063 | 96.56 KB | 1.00 | +| AutoMapper | 3.271 ms | 0.0276 ms | 0.0258 ms | 3.241 ms | 3.265 ms | 3.323 ms | 2.83 | 0.04 | 3 | 15.6250 | 7.8125 | 309.93 KB | 3.21 | +| Mapster | 2.494 ms | 0.0149 ms | 0.0140 ms | 2.470 ms | 2.491 ms | 2.516 ms | 2.16 | 0.03 | 2 | 46.8750 | 15.6250 | 766.77 KB | 7.94 | ---