This used a Struct of 4 ints, to avoid the optimization for smaller types
BenchmarkDotNet=v0.11.3, OS=Windows 10.0.17763.379 (1809/October2018Update/Redstone5)
Intel Pentium CPU G3250 3.20GHz, 1 CPU, 2 logical and 2 physical cores
.NET Core SDK=2.2.202
[Host] : .NET Core 2.2.3 (CoreCLR 4.6.27414.05, CoreFX 4.6.27414.05), 64bit RyuJIT
Job-WCMDLP : .NET Core 2.2.3 (CoreCLR 4.6.27414.05, CoreFX 4.6.27414.05), 64bit RyuJIT
Runtime=Core Force=True InvocationCount=1
UnrollFactor=1
| Method | N | Mean | Error | StdDev | Median | Iterations | Gen 0/1k Op | Gen 1/1k Op | Gen 2/1k Op | Allocated Memory/Op |
|---|---|---|---|---|---|---|---|---|---|---|
| SpanFill | 1000 | 1.081 us | 0.1068 us | 0.3046 us | 1.070 us | 94.00 | - | - | - | - |
| Loop | 1000 | 1.165 us | 0.0256 us | 0.0738 us | 1.210 us | 96.00 | - | - | - | - |
| SpanFill | 10000 | 7.583 us | 0.4377 us | 1.2345 us | 6.980 us | 92.00 | - | - | - | - |
| Loop | 10000 | 11.767 us | 0.3977 us | 1.1217 us | 11.595 us | 92.00 | - | - | - | - |
| SpanFill | 100000 | 367.905 us | 74.6713 us | 220.1701 us | 421.010 us | 100.00 | - | - | - | - |
| Loop | 100000 | 371.141 us | 71.8670 us | 209.6394 us | 444.710 us | 98.00 | - | - | - | - |