Version 0.2.x

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

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.