Version 0.2.x, a bug-free release, introduced DB Cross Migration, MYSQL Syncing Provider, and adopted Fluid Templating, enhancing overall performance.
Benchmark Results
Environment Information
- BenchmarkDotNet Version: v0.13.11
- Operating System: Windows 10 (10.0.19045.3803/22H2/2022Update)
- Processor: AMD Ryzen 7 7700X, 1 CPU, 16 logical and 8 physical cores
- .NET SDK: 8.0.100
Benchmark Configuration
- Host Environment: .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
- Default Job: .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI
Database Changes Summary
The table below summarizes the changes in the database:
Method | Added | Edited | Deleted | Total Source Row | Total Destination Row |
---|---|---|---|---|---|
Album | 2 | 4 | 0 | 347 | 345 |
Artist | 0 | 3 | 0 | 275 | 275 |
SyncCustomer | 1 | 17 | 0 | 59 | 58 |
SyncEmployee | 0 | 3 | 0 | 8 | 8 |
Genre | 0 | 2 | 0 | 25 | 25 |
Invoice | 6 | 29 | 0 | 412 | 406 |
InvoiceLine | 36 | 0 | 1 | 2239 | 2204 |
MediaType | 0 | 0 | 0 | 5 | 5 |
Playlist | 0 | 0 | 0 | 18 | 18 |
PlaylistTrack | 9 | 0 | 2 | 8713 | 8706 |
Track | 2 | 166 | 1 | 3502 | 3501 |
These changes in the database are consistent for all benchmarks after this.
Release Information
- Release Tag: v0.2
- Source Code: GitHub Repository
The modifications made to incorporate the benchmark source code are also accessible in the release assets.
Benchmark Results
The following table summarizes the benchmark results for key methods in DbSyncKit Version 0.2.x:
Method | Mean | Error | StdDev | Gen0 | Gen1 | Gen2 | Allocated |
---|---|---|---|---|---|---|---|
Album | 404.76 μs | 5.919 μs | 5.537 μs | 68.3594 | 15.6250 | - | 1114.09 KB |
Artist | 282.29 μs | 5.536 μs | 7.761 μs | 50.7813 | 11.7188 | - | 829.6 KB |
Customer | 225.84 μs | 2.880 μs | 2.553 μs | 23.4375 | 22.9492 | - | 377.92 KB |
Employee | 68.98 μs | 1.338 μs | 1.252 μs | 5.8594 | 5.6152 | - | 95.46 KB |
Genre | 44.12 μs | 0.776 μs | 0.726 μs | 6.4697 | 3.7842 | - | 105.07 KB |
Invoice | 882.49 μs | 13.357 μs | 12.494 μs | 117.1875 | 50.7813 | - | 1949.78 KB |
InvoiceLine | 3,645.08 μs | 19.869 μs | 17.613 μs | 531.2500 | 101.5625 | 54.6875 | 8628.42 KB |
MediaType | 11.57 μs | 0.216 μs | 0.281 μs | 2.8687 | 0.4272 | - | 46.2 KB |
Playlist | 34.13 μs | 0.654 μs | 0.699 μs | 5.1270 | 0.3662 | - | 83.28 KB |
PlaylistTrack | 15,695.39 μs | 116.863 μs | 109.314 μs | 2625.0000 | 1312.5000 | 656.2500 | 37575.74 KB |
Track | 8,272.06 μs | 154.124 μs | 151.370 μs | 1031.2500 | 203.1250 | 62.5000 | 16856.41 KB |
Compare Versions
Explore the differences between various versions of DbSyncKit to track the evolution of performance and functionality.
For detailed comparisons between different versions, refer to the Get Differences Between Versions page in the documentation.