Skip to content

Instantly share code, notes, and snippets.

@Tornhoof
Last active December 15, 2017 14:04
Show Gist options
  • Save Tornhoof/fbc0dfcc8061debf59120ed860363b96 to your computer and use it in GitHub Desktop.
Save Tornhoof/fbc0dfcc8061debf59120ed860363b96 to your computer and use it in GitHub Desktop.
.NET Core Performance Improvements

CensusIncome

BenchmarkDotNet=v0.10.11, OS=Windows 10 Redstone 3 [1709, Fall Creators Update] (10.0.16299.64)
Processor=Intel Core i7-4790K CPU 4.00GHz (Haswell), ProcessorCount=8
Frequency=3906248 Hz, Resolution=256.0001 ns, Timer=TSC
.NET Core SDK=2.2.0-preview1-007813
  [Host]            : .NET Core 2.1.0-preview1-26013-05 (Framework 4.6.26013.03), 64bit RyuJIT
  Core2.0-x64       : .NET Core 2.0.3 (Framework 4.6.25815.02), 64bit RyuJIT
  Core2.1-x64       : .NET Core 2.1.0-preview1-26013-05 (Framework 4.6.26013.03), 64bit RyuJIT
  NET4.7_RyuJIT-x64 : .NET Framework 4.7 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.7.2600.0

Jit=RyuJit  Platform=X64  
Method Job Runtime Toolchain Mean Error StdDev Median Gen 0 Allocated
Or Core2.0-x64 Core .NET Core 2.0 2.148 ms 0.0209 ms 0.0196 ms 2.140 ms 925.7813 3795.87 KB
Xor Core2.0-x64 Core .NET Core 2.0 2.241 ms 0.0144 ms 0.0120 ms 2.234 ms 941.4063 3860.95 KB
And Core2.0-x64 Core .NET Core 2.0 2.212 ms 0.0427 ms 0.0457 ms 2.201 ms 312.5000 1286.75 KB
AndNot Core2.0-x64 Core .NET Core 2.0 2.392 ms 0.0478 ms 0.0730 ms 2.369 ms 589.8438 2430.99 KB
Iterate Core2.0-x64 Core .NET Core 2.0 86.979 ms 1.7230 ms 1.6117 ms 87.219 ms - 42.28 KB
Or Core2.1-x64 Core .NET Core 2.1 2.074 ms 0.0410 ms 0.0602 ms 2.061 ms 925.7813 3795.87 KB
Xor Core2.1-x64 Core .NET Core 2.1 2.100 ms 0.0411 ms 0.0365 ms 2.091 ms 941.4063 3860.95 KB
And Core2.1-x64 Core .NET Core 2.1 2.018 ms 0.0399 ms 0.0572 ms 2.006 ms 312.5000 1286.75 KB
AndNot Core2.1-x64 Core .NET Core 2.1 2.120 ms 0.0422 ms 0.0917 ms 2.095 ms 589.8438 2430.99 KB
Iterate Core2.1-x64 Core .NET Core 2.1 78.944 ms 1.5457 ms 2.1158 ms 78.470 ms - 42.28 KB
Or NET4.7_RyuJIT-x64 Clr Default 2.344 ms 0.0469 ms 0.0999 ms 2.321 ms 925.7813 3799.13 KB
Xor NET4.7_RyuJIT-x64 Clr Default 2.590 ms 0.0528 ms 0.1266 ms 2.564 ms 941.4063 3864.35 KB
And NET4.7_RyuJIT-x64 Clr Default 2.361 ms 0.0608 ms 0.1793 ms 2.304 ms 312.5000 1287.37 KB
AndNot NET4.7_RyuJIT-x64 Clr Default 2.370 ms 0.0318 ms 0.0282 ms 2.375 ms 589.8438 2432 KB
Iterate NET4.7_RyuJIT-x64 Clr Default 90.845 ms 1.7461 ms 1.6333 ms 90.553 ms - 42.5 KB

Census1881

BenchmarkDotNet=v0.10.11, OS=Windows 10 Redstone 3 [1709, Fall Creators Update] (10.0.16299.64)
Processor=Intel Core i7-4790K CPU 4.00GHz (Haswell), ProcessorCount=8
Frequency=3906248 Hz, Resolution=256.0001 ns, Timer=TSC
.NET Core SDK=2.2.0-preview1-007813
  [Host]            : .NET Core 2.1.0-preview1-26013-05 (Framework 4.6.26013.03), 64bit RyuJIT
  Core2.0-x64       : .NET Core 2.0.3 (Framework 4.6.25815.02), 64bit RyuJIT
  Core2.1-x64       : .NET Core 2.1.0-preview1-26013-05 (Framework 4.6.26013.03), 64bit RyuJIT
  NET4.7_RyuJIT-x64 : .NET Framework 4.7 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.7.2600.0

Jit=RyuJit  Platform=X64  
Method Job Runtime Toolchain Mean Error StdDev Gen 0 Gen 1 Allocated
Or Core2.0-x64 Core .NET Core 2.0 234.85 us 0.6481 us 0.6063 us 91.0645 11.2305 382.72 KB
Xor Core2.0-x64 Core .NET Core 2.0 182.37 us 0.8650 us 0.8091 us 91.0645 11.2305 382.72 KB
And Core2.0-x64 Core .NET Core 2.0 59.07 us 0.1068 us 0.0999 us 8.4229 - 34.59 KB
AndNot Core2.0-x64 Core .NET Core 2.0 152.56 us 1.7705 us 1.5695 us 78.3854 15.3971 322.66 KB
Iterate Core2.0-x64 Core .NET Core 2.0 10,430.51 us 17.7792 us 14.8465 us 15.6250 - 66.64 KB
Or Core2.1-x64 Core .NET Core 2.1 178.52 us 0.3113 us 0.2431 us 91.0645 11.2305 382.72 KB
Xor Core2.1-x64 Core .NET Core 2.1 165.00 us 0.1575 us 0.1473 us 91.0645 11.2305 382.72 KB
And Core2.1-x64 Core .NET Core 2.1 54.17 us 0.0660 us 0.0551 us 8.4229 - 34.59 KB
AndNot Core2.1-x64 Core .NET Core 2.1 140.43 us 1.9262 us 1.8017 us 78.2552 15.2018 322.66 KB
Iterate Core2.1-x64 Core .NET Core 2.1 10,426.59 us 4.7871 us 3.9975 us 15.6250 - 66.64 KB
Or NET4.7_RyuJIT-x64 Clr Default 234.38 us 0.7222 us 0.6030 us 91.5527 12.2070 382.82 KB
Xor NET4.7_RyuJIT-x64 Clr Default 182.35 us 1.3184 us 1.1688 us 91.5527 12.2070 382.82 KB
And NET4.7_RyuJIT-x64 Clr Default 60.16 us 0.3031 us 0.2687 us 8.4229 - 34.59 KB
AndNot NET4.7_RyuJIT-x64 Clr Default 158.57 us 0.1260 us 0.1052 us 78.3691 15.3809 322.72 KB
Iterate NET4.7_RyuJIT-x64 Clr Default 10,546.22 us 9.9988 us 9.3528 us 15.6250 - 66.75 KB
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment