Skip to content

Commit d702fb8

Browse files
committed
Update benchmarks to latest run
1 parent c5f884d commit d702fb8

File tree

1 file changed

+42
-37
lines changed

1 file changed

+42
-37
lines changed

Readme.md

Lines changed: 42 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -123,44 +123,49 @@ Output from the latest run is:
123123
BenchmarkDotNet=v0.11.1, OS=Windows 10.0.17134.254 (1803/April2018Update/Redstone4)
124124
Intel Core i7-7700HQ CPU 2.80GHz (Kaby Lake), 1 CPU, 8 logical and 4 physical cores
125125
Frequency=2742188 Hz, Resolution=364.6723 ns, Timer=TSC
126-
[Host] : .NET Framework 4.7.2 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.7.3163.0
127-
Dry : .NET Framework 4.7.2 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.7.3163.0
126+
[Host] : .NET Framework 4.7.2 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.7.3163.0
127+
ShortRun : .NET Framework 4.7.2 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.7.3163.0
128+
128129
```
129-
| ORM | Method | Return | Mean | StdDev | Error | Gen 0 | Gen 1 | Allocated |
130-
|------------- |------------------------------ |-------- |------------:|-----------:|-----------:|--------:|-------:|----------:|
131-
| HandCoded | SqlCommand | Post | 86.76 us | 1.573 us | 2.379 us | 3.8000 | - | 12.24 KB |
132-
| PetaPoco | 'Fetch<Post> (Fast)' | Post | 95.43 us | 2.434 us | 3.681 us | 4.4000 | - | 13.65 KB |
133-
| HandCoded | DataTable | dynamic | 98.18 us | 5.242 us | 7.925 us | 2.2000 | 0.6000 | 12.45 KB |
134-
| PetaPoco | Fetch<Post> | Post | 98.18 us | 2.252 us | 3.404 us | 4.6000 | - | 14.59 KB |
135-
| Massive | 'Query (dynamic)' | dynamic | 98.47 us | 3.102 us | 4.690 us | 4.6000 | - | 14.21 KB |
136-
| Belgrade | ExecuteReader | Post | 99.14 us | 15.731 us | 23.783 us | 3.6000 | 1.0000 | 11.37 KB |
137-
| Dapper | 'Query<dynamic> (buffered)' | dynamic | 100.42 us | 5.311 us | 8.030 us | 4.4000 | - | 13.88 KB |
138-
| Dapper | 'Contrib Get<T>' | Post | 102.55 us | 9.289 us | 14.044 us | 4.6000 | - | 14.45 KB |
139-
| Dapper | 'Query<T> (buffered)' | Post | 104.85 us | 10.278 us | 15.539 us | 4.4000 | - | 13.79 KB |
140-
| ServiceStack | SingleById | Post | 107.83 us | 5.144 us | 7.778 us | 5.6000 | - | 17.53 KB |
141-
| Dapper | QueryFirstOrDefault<dynamic> | dynamic | 109.78 us | 7.689 us | 11.624 us | 4.2000 | - | 13.51 KB |
142-
| Dapper | QueryFirstOrDefault<T> | Post | 112.97 us | 4.081 us | 6.170 us | 4.2000 | - | 13.47 KB |
143-
| Susanoo | 'Mapping Static' | Post | 118.91 us | 8.786 us | 13.282 us | 4.8000 | - | 14.99 KB |
144-
| Susanoo | 'Mapping Static (dynamic)' | dynamic | 119.57 us | 6.985 us | 10.560 us | 4.8000 | - | 14.97 KB |
145-
| Susanoo | 'Mapping Cache' | Post | 123.68 us | 6.693 us | 10.118 us | 6.8000 | - | 20.9 KB |
146-
| Dapper | 'Query<dynamic> (unbuffered)' | dynamic | 127.06 us | 8.748 us | 13.225 us | 4.4000 | - | 13.87 KB |
147-
| Dapper | 'Query<T> (unbuffered)' | Post | 132.28 us | 9.350 us | 14.136 us | 4.4000 | - | 13.84 KB |
148-
| Susanoo | 'Mapping Cache (dynamic)' | dynamic | 133.45 us | 4.179 us | 6.318 us | 6.6000 | - | 20.41 KB |
149-
| Linq2Sql | Compiled | Post | 133.46 us | 6.137 us | 9.278 us | 3.0000 | - | 9.82 KB |
150-
| EFCore | Compiled | Post | 180.70 us | 65.498 us | 99.024 us | 5.2000 | - | 16.08 KB |
151-
| EF6 | SqlQuery | Post | 187.09 us | 136.314 us | 206.088 us | 9.0000 | - | 27.86 KB |
152-
| NHibernate | Get<T> | Post | 202.34 us | 10.271 us | 15.528 us | 10.4000 | - | 32.5 KB |
153-
| NHibernate | HQL | Post | 216.95 us | 26.889 us | 40.653 us | 11.2000 | - | 35 KB |
154-
| EFCore | 'No Tracking' | Post | 243.18 us | 59.359 us | 89.742 us | 6.8000 | - | 21.36 KB |
155-
| EFCore | Normal | Post | 245.60 us | 72.618 us | 109.788 us | 6.4000 | - | 20.25 KB |
156-
| Linq2Sql | ExecuteQuery | Post | 246.66 us | 6.215 us | 9.396 us | 13.6000 | - | 42.34 KB |
157-
| NHibernate | Criteria | Post | 252.51 us | 18.303 us | 27.672 us | 21.2000 | - | 65.37 KB |
158-
| EFCore | SqlQuery | Post | 263.34 us | 73.919 us | 111.755 us | 6.6000 | - | 20.75 KB |
159-
| EF6 | Normal | Post | 308.46 us | 154.203 us | 233.133 us | 15.6000 | - | 48.29 KB |
160-
| NHibernate | SQL | Post | 322.13 us | 9.530 us | 14.408 us | 32.8000 | - | 101.06 KB |
161-
| EF6 | 'No Tracking' | Post | 324.12 us | 134.870 us | 203.905 us | 17.8000 | - | 55.1 KB |
162-
| Linq2Sql | Normal | Post | 370.55 us | 238.033 us | 359.871 us | 4.6000 | 1.4000 | 14.68 KB |
163-
| NHibernate | LINQ | Post | 1,110.87 us | 36.863 us | 55.731 us | 20.2000 | - | 62.13 KB |
130+
| ORM | Method | Return | Mean | Gen 0 | Gen 1 | Gen 2 | Allocated |
131+
|------------- |------------------------------ |-------- |------------:|--------:|-------:|-------:|----------:|
132+
| LINQ to DB | 'First (Compiled)' | Post | 78.75 us | 0.7500 | - | - | 2.66 KB |
133+
| LINQ to DB | Query<T> | Post | 80.38 us | 2.1250 | - | - | 6.87 KB |
134+
| Hand Coded | SqlCommand | Post | 87.16 us | 2.5000 | 1.0000 | 0.2500 | 12.24 KB |
135+
| Dapper | QueryFirstOrDefault<dynamic> | dynamic | 87.80 us | 4.3750 | - | - | 13.5 KB |
136+
| Belgrade | ExecuteReader | Post | 87.85 us | 3.6250 | 0.7500 | - | 11.27 KB |
137+
| Dapper | QueryFirstOrDefault<T> | Post | 91.51 us | 2.8750 | 0.8750 | 0.2500 | 13.46 KB |
138+
| Hand Coded | DataTable | dynamic | 91.74 us | 2.2500 | 0.6250 | - | 12.45 KB |
139+
| Dapper | 'Query<T> (buffered)' | Post | 94.05 us | 2.8750 | 0.8750 | 0.2500 | 13.79 KB |
140+
| Dapper | 'Query<dynamic> (buffered)' | dynamic | 95.25 us | 2.5000 | 1.0000 | 0.2500 | 13.87 KB |
141+
| Massive | 'Query (dynamic)' | dynamic | 96.18 us | 3.2500 | 0.8750 | 0.3750 | 14.19 KB |
142+
| PetaPoco | 'Fetch<T> (Fast)' | Post | 96.57 us | 2.7500 | 0.8750 | 0.2500 | 13.65 KB |
143+
| PetaPoco | Fetch<T> | Post | 97.62 us | 2.8750 | 0.8750 | 0.2500 | 14.59 KB |
144+
| Dapper | 'Contrib Get<T>' | Post | 98.85 us | 2.8750 | 1.0000 | 0.2500 | 14.45 KB |
145+
| ServiceStack | SingleById<T> | Post | 102.39 us | 3.1250 | 0.8750 | 0.3750 | 17.52 KB |
146+
| LINQ to DB | First | Post | 103.54 us | 1.7500 | - | - | 5.51 KB |
147+
| Susanoo | 'Execute<T> (Static)' | Post | 105.07 us | 2.8750 | 0.8750 | 0.2500 | 14.98 KB |
148+
| Dashing | Get | Post | 105.80 us | 3.1250 | 0.8750 | 0.3750 | 14.82 KB |
149+
| Susanoo | 'Execut<dynamic> (Static)' | dynamic | 109.26 us | 3.1250 | 0.8750 | 0.2500 | 14.97 KB |
150+
| LINQ to SQL | 'First (Compiled)' | Post | 114.62 us | 3.1250 | - | - | 9.82 KB |
151+
| Dapper | 'Query<T> (unbuffered)' | Post | 119.72 us | 3.1250 | 0.8750 | 0.2500 | 13.83 KB |
152+
| Susanoo | 'Execute<dynamic> (Cache)' | dynamic | 124.02 us | 3.6250 | 1.0000 | 0.5000 | 20.4 KB |
153+
| Susanoo | 'Execute<T> (Cache)' | Post | 126.92 us | 4.2500 | 1.0000 | 0.5000 | 20.88 KB |
154+
| Dapper | 'Query<dynamic> (unbuffered)' | dynamic | 139.89 us | 2.5000 | 1.0000 | 0.2500 | 13.87 KB |
155+
| EF 6 | SqlQuery | Post | 143.86 us | 5.2500 | 0.7500 | - | 27.86 KB |
156+
| EF Core | 'First (Compiled)' | Post | 148.42 us | 5.0000 | - | - | 16.08 KB |
157+
| NHibernate | Get<T> | Post | 196.88 us | 5.7500 | 1.0000 | - | 32.5 KB |
158+
| EF Core | First | Post | 197.91 us | 6.5000 | - | - | 20.25 KB |
159+
| NHibernate | HQL | Post | 207.84 us | 6.0000 | 0.7500 | - | 35 KB |
160+
| EF Core | 'First (No Tracking)' | Post | 213.58 us | 4.2500 | 0.7500 | 0.2500 | 21.36 KB |
161+
| EF Core | SqlQuery | Post | 247.25 us | 6.5000 | - | - | 20.56 KB |
162+
| EF 6 | First | Post | 247.53 us | 15.5000 | - | - | 48.29 KB |
163+
| NHibernate | Criteria | Post | 253.30 us | 13.2500 | 1.2500 | 0.2500 | 65.32 KB |
164+
| EF 6 | 'First (No Tracking)' | Post | 265.80 us | 10.5000 | 1.0000 | - | 55.09 KB |
165+
| LINQ to SQL | ExecuteQuery | Post | 284.74 us | 7.0000 | 1.0000 | 0.5000 | 42.33 KB |
166+
| NHibernate | SQL | Post | 313.85 us | 26.5000 | 1.0000 | - | 101.01 KB |
167+
| LINQ to SQL | First | Post | 968.14 us | 4.0000 | 1.0000 | - | 14.68 KB |
168+
| NHibernate | LINQ | Post | 1,062.16 us | 11.0000 | 2.0000 | - | 62.37 KB |
164169

165170

166171
Feel free to submit patches that include other ORMs - when running benchmarks, be sure to compile in Release and not attach a debugger (<kbd>Ctrl</kbd>+<kbd>F5</kbd>).

0 commit comments

Comments
 (0)