BenchmarkDotNet=v0.12.1, OS=Windows 10.0.19042
Intel Core i7-8700K CPU 3.70GHz (Coffee Lake), 1 CPU, 12 logical and 6 physical cores
.NET Core SDK=5.0.101
[Host] : .NET Core 5.0.1 (CoreCLR 5.0.120.57516, CoreFX 5.0.120.57516), X64 RyuJIT
Job-NNXSUN : .NET Core 5.0.1 (CoreCLR 5.0.120.57516, CoreFX 5.0.120.57516), X64 RyuJIT
Job-TKOLIA : .NET Core 5.0.1 (CoreCLR 5.0.120.57516, CoreFX 5.0.120.57516), X64 RyuJIT
Job-FDOYXC : .NET Core 5.0.1 (CoreCLR 5.0.120.57516, CoreFX 5.0.120.57516), X64 RyuJIT
Type | Method | Mean | StdDev | Error | Op/s | Ratio | Op/Invoke | Gen 0 | Gen 1 | Gen 2 | Allocated |
InsertOrIgnoreScrobbleData | 'Generic DbCommand (tuples)' | 29,268.7 ns | 2,725.43 ns | 4,120.47 ns | 34,166.1 | 0.96 | 1000 | - | - | - | 6186 B |
InsertOrIgnoreScrobbleData | 'Generic DbCommand (arrays)' | 30,615.5 ns | 3,310.11 ns | 5,004.42 ns | 32,663.1 | 1.00 | 1000 | 1.0000 | - | - | 6276 B |
InsertOrIgnoreScrobbleData | 'Generic bulk (tuples)' | 33,330.7 ns | 2,577.40 ns | 3,896.66 ns | 30,002.4 | 1.09 | 1000 | 1.0000 | 1.0000 | - | 7948 B |
InsertOrIgnoreScrobbleData | 'Generic loop' | 53,518.0 ns | 10,783.29 ns | 16,302.79 ns | 18,685.3 | 1.74 | 1000 | 1.0000 | 1.0000 | - | 9605 B |
InsertOrIgnoreScrobbleData | Multi-values | 181,106.6 ns | 2,276.82 ns | 3,826.05 ns | 5,521.6 | 5.89 | 1000 | 1.0000 | 1.0000 | - | 7177 B |
InsertOrIgnoreScrobbleData | CTE | 294,419.3 ns | 1,635.74 ns | 2,748.75 ns | 3,396.5 | 9.57 | 1000 | - | - | - | 5313 B |
SelectArtist | 'EF Core query (compiled)' | 662.8 ns | 28.74 ns | 10.02 ns | 1,508,855.2 | 0.85 | 2500 | - | - | - | 307 B |
SelectArtist | 'EF Core query' | 664.7 ns | 58.65 ns | 21.04 ns | 1,504,537.7 | 0.86 | 2500 | - | - | - | 308 B |
SelectArtist | 'Dapper query' | 782.8 ns | 13.94 ns | 5.09 ns | 1,277,425.7 | 1.00 | 2500 | - | - | - | 225 B |
InsertArtist | 'Hard-coded bulk' | 3,356.5 ns | 114.32 ns | 102.85 ns | 297,925.9 | 1.00 | 2500 | - | - | - | 683 B |
InsertArtist | 'Hard-coded loop' | 7,607.0 ns | 118.69 ns | 110.92 ns | 131,457.3 | 2.27 | 2500 | - | - | - | 1403 B |
InsertArtist | 'EF Core' | 59,121.3 ns | 939.94 ns | 878.46 ns | 16,914.4 | 17.68 | 2500 | 2.0000 | 0.4000 | - | 14225 B |
InsertOrIgnoreArtist | 'Generic DbCommand (arrays)' | 2,649.1 ns | 35.27 ns | 32.96 ns | 377,484.0 | 1.00 | 5000 | - | - | - | 628 B |
InsertOrIgnoreArtist | 'Generic DbCommand (tuples)' | 2,684.3 ns | 62.31 ns | 58.23 ns | 372,532.1 | 1.01 | 5000 | - | - | - | 596 B |
InsertOrIgnoreArtist | 'Hard-coded bulk' | 2,724.1 ns | 38.56 ns | 37.55 ns | 367,088.2 | 1.03 | 5000 | - | - | - | 683 B |
InsertOrIgnoreArtist | 'Generic bulk (arrays)' | 3,664.8 ns | 164.18 ns | 142.56 ns | 272,868.6 | 1.38 | 5000 | - | - | - | 1076 B |
InsertOrIgnoreArtist | 'Generic bulk (tuples)' | 3,707.9 ns | 46.79 ns | 47.64 ns | 269,695.7 | 1.40 | 5000 | - | - | - | 1212 B |
InsertOrIgnoreArtist | 'Hard-coded loop' | 7,550.8 ns | 117.75 ns | 110.05 ns | 132,435.5 | 2.85 | 5000 | 0.2000 | - | - | 1435 B |
InsertOrIgnoreArtist | 'Generic loop (DynamicParameters)' | 9,783.4 ns | 260.51 ns | 234.37 ns | 102,213.5 | 3.69 | 5000 | 0.2000 | - | - | 1971 B |
InsertOrIgnoreArtist | 'Generic loop' | 9,787.9 ns | 269.94 ns | 242.86 ns | 102,167.1 | 3.70 | 5000 | 0.2000 | - | - | 1979 B |
InsertOrIgnoreArtist | 'EF Core' | 40,243.7 ns | 609.80 ns | 548.63 ns | 24,848.6 | 15.21 | 5000 | 1.4000 | 0.4000 | - | 9099 B |
InsertOrIgnoreArtist | Multi-values | 91,126.3 ns | 439.29 ns | 395.22 ns | 10,973.8 | 34.41 | 5000 | - | - | - | 905 B |
InsertOrIgnoreArtist | CTE | 91,619.0 ns | 449.17 ns | 437.40 ns | 10,914.8 | 34.62 | 5000 | - | - | - | 905 B |