Simple mapping function (fun x -> x*x) 1,000,000 ints
Method | Length | Median | StdDev | Scaled | Gen 0 | Gen 1 | Gen 2 | Bytes Allocated/Op |
---------------- |-------- |---------- |---------- |------- |------ |------ |------- |------------------- | Parallelmap | 1000000 | 3.7892 ms | 0.4924 ms | 1.85 | - | - | 880.58 | 1,749,410.73 | map | 1000000 | 2.0427 ms | 0.0211 ms | 1.00 | - | - | 793.00 | 1,755,648.30 | SIMDmap | 1000000 | 1.7126 ms | 0.0175 ms | 0.84 | - | - | 777.53 | 1,721,123.56 | SIMDParallelmap | 1000000 | 1.6008 ms | 0.0267 ms | 0.78 | - | - | 926.58 | 1,590,658.22 |
More complex mapping function(fun x->x*(x*x+x+x/5.0f)) 1,000,000 float32s
Method | Length | Median | StdDev | Scaled | Gen 0 | Gen 1 | Gen 2 | Bytes Allocated/Op |
---------------- |-------- |---------- |---------- |------- |------ |------ |------- |------------------- | Parallelmap | 1000000 | 3.5004 ms | 0.2690 ms | 1.03 | - | - | 590.03 | 1,989,879.94 | map | 1000000 | 3.4058 ms | 0.0296 ms | 1.00 | - | - | 459.00 | 1,889,419.69 | SIMDmap | 1000000 | 1.8777 ms | 0.0132 ms | 0.55 | - | - | 408.30 | 1,664,673.50 | SIMDParallelmap | 1000000 | 1.6841 ms | 0.2531 ms | 0.49 | - | - | 422.67 | 1,390,865.07 |
Host Process Environment Information:
BenchmarkDotNet=v0.9.8.0
OS=Microsoft Windows NT 6.2.9200.0
Processor=Intel(R) Core(TM) i7-4712HQ CPU 2.30GHz, ProcessorCount=8
Frequency=2240905 ticks, Resolution=446.2483 ns, Timer=TSC
CLR=MS.NET 4.0.30319.42000, Arch=64-bit RELEASE [RyuJIT]
GC=Concurrent Workstation
JitModules=clrjit-v4.6.1590.0
Type=CoreBenchmark Mode=Throughput Platform=X64
Jit=RyuJit GarbageCollection=Concurrent Workstation