isb icon indicating copy to clipboard operation
isb copied to clipboard

Improve performance

Open wixette opened this issue 4 years ago • 3 comments

Benchmark howto:

dotnet run -p ISB.Benchmark -c Release

As of the commit 024c7b72fd1f86437a1662e005b84bca3a997e6d :

BenchmarkDotNet=v0.13.1, OS=macOS Big Sur 11.5.2 (20G95) [Darwin 20.6.0] Intel Xeon CPU E5-1650 v2 3.50GHz, 1 CPU, 12 logical and 6 physical cores .NET SDK=5.0.300 [Host] : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT DefaultJob : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT

Method Mean Error StdDev
Compile 89.10 us 1.736 us 2.489 us
Run 2,117.31 us 31.815 us 29.760 us
RunWithLibCall 13,016.36 us 255.537 us 262.418 us

wixette avatar Sep 24 '21 16:09 wixette

With the commit of eb5cffa1b133c12977c45a77247888187dcaf33d :

BenchmarkDotNet=v0.13.1, OS=macOS Big Sur 11.5.2 (20G95) [Darwin 20.6.0] Intel Xeon CPU E5-1650 v2 3.50GHz, 1 CPU, 12 logical and 6 physical cores .NET SDK=5.0.300 [Host] : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT DefaultJob : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT

Method Mean Error StdDev
Compile 64.68 us 0.199 us 0.176 us
Run 2,062.07 us 11.140 us 9.875 us
RunWithLibCall 4,717.63 us 13.144 us 10.976 us

wixette avatar Sep 24 '21 17:09 wixette

(Added a new benchmark)

Without the commit 1be44fd526a5d428fc1b5b7e37b23f15461b736a

BenchmarkDotNet=v0.13.1, OS=macOS Big Sur 11.6 (20G165) [Darwin 20.6.0] Intel Xeon CPU E5-1650 v2 3.50GHz, 1 CPU, 12 logical and 6 physical cores .NET SDK=5.0.300 [Host] : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT DefaultJob : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT

Method Mean Error StdDev
Compile 65.09 us 0.164 us 0.137 us
Run 2,054.25 us 4.859 us 4.308 us
RunWithLibCall 4,966.69 us 14.985 us 13.284 us
RunPrimeChecking 364.22 us 0.580 us 0.514 us

With the comit 1be44fd526a5d428fc1b5b7e37b23f15461b736a

BenchmarkDotNet=v0.13.1, OS=macOS Big Sur 11.6 (20G165) [Darwin 20.6.0] Intel Xeon CPU E5-1650 v2 3.50GHz, 1 CPU, 12 logical and 6 physical cores .NET SDK=5.0.300 [Host] : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT DefaultJob : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT

Method Mean Error StdDev
Compile 65.63 us 0.250 us 0.221 us
Run 1,993.80 us 13.974 us 12.387 us
RunWithLibCall 4,818.23 us 11.906 us 9.295 us
RunPrimeChecking 345.88 us 1.107 us 0.924 us

wixette avatar Oct 10 '21 06:10 wixette

With the commit 000d29f0a291824e02dbb5a50ec33b55682963c2

BenchmarkDotNet=v0.13.1, OS=macOS Big Sur 11.6 (20G165) [Darwin 20.6.0] Intel Xeon CPU E5-1650 v2 3.50GHz, 1 CPU, 12 logical and 6 physical cores .NET SDK=5.0.300 [Host] : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT DefaultJob : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT

Method Mean Error StdDev
Compile 67.07 us 0.179 us 0.150 us
Run 1,824.45 us 4.263 us 3.987 us
RunWithLibCall 4,742.75 us 12.672 us 10.582 us
RunPrimeChecking 320.35 us 0.656 us 0.582 us

With the commit e38574e7b26555c31a1457b30e07ddd821cd3a61

BenchmarkDotNet=v0.13.1, OS=macOS Big Sur 11.6 (20G165) [Darwin 20.6.0] Intel Xeon CPU E5-1650 v2 3.50GHz, 1 CPU, 12 logical and 6 physical cores .NET SDK=5.0.300 [Host] : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT DefaultJob : .NET 5.0.6 (5.0.621.22011), X64 RyuJIT

Method Mean Error StdDev
Compile 66.58 us 0.745 us 0.697 us
Run 1,870.69 us 6.084 us 5.080 us
RunWithLibCall 4,584.93 us 12.776 us 11.951 us
RunPrimeChecking 322.01 us 0.499 us 0.417 us

wixette avatar Oct 10 '21 12:10 wixette