This commit is contained in:
Patrick Stevens
2022-12-23 11:27:41 +00:00
committed by GitHub
parent 8a14768375
commit 8d314e64ab
26 changed files with 472 additions and 154 deletions

1
.gitignore vendored
View File

@@ -7,3 +7,4 @@ riderModule.iml
*.sln.DotSettings.user
.vs/
*.log
result

View File

@@ -32,6 +32,7 @@
<EmbeddedResource Include="..\AdventOfCode2022.Test\Inputs\Day20.txt" />
<EmbeddedResource Include="..\AdventOfCode2022.Test\Inputs\Day21.txt" />
<EmbeddedResource Include="..\AdventOfCode2022.Test\Inputs\Day22.txt" />
<EmbeddedResource Include="..\AdventOfCode2022.Test\Inputs\Day23.txt" />
</ItemGroup>
<ItemGroup>

View File

@@ -2,5 +2,5 @@ namespace AdventOfCode2022.App
[<RequireQualifiedAccess>]
module Inputs =
let days = Array.init 22 (fun day -> Assembly.readResource $"Day%i{day + 1}.txt")
let days = Array.init 23 (fun day -> Assembly.readResource $"Day%i{day + 1}.txt")
let inline day (i : int) = days.[i - 1]

View File

@@ -79,7 +79,7 @@ type Benchmark21To25 () =
[<GlobalSetup>]
member _.Setup () = Run.shouldWrite <- false
[<Params(21, 22)>]
[<Params(21, 22, 23)>]
member val Day = 0 with get, set
[<Params(false, true)>]

View File

@@ -317,6 +317,21 @@ module Run =
if shouldWrite then
printfn "%i" output
let day23 (partTwo : bool) (input : string) =
let day23 = StringSplitEnumerator.make '\n' input
if not partTwo then
let output = Day23.part1 day23
if shouldWrite then
printfn "%i" output
else
let output = Day23.part2 day23
if shouldWrite then
printfn "%i" output
let allRuns =
[|
day1
@@ -341,4 +356,5 @@ module Run =
day20
day21
day22
day23
|]

View File

@@ -30,6 +30,7 @@
<Compile Include="Day20.fs" />
<Compile Include="Day21.fs" />
<Compile Include="Day22.fs" />
<Compile Include="Day23.fs" />
<EmbeddedResource Include="Inputs\Day1.txt" />
<EmbeddedResource Include="Inputs\Day2.txt" />
<EmbeddedResource Include="Inputs\Day3.txt" />
@@ -52,6 +53,7 @@
<EmbeddedResource Include="Inputs\Day20.txt" />
<EmbeddedResource Include="Inputs\Day21.txt" />
<EmbeddedResource Include="Inputs\Day22.txt" />
<EmbeddedResource Include="Inputs\Day23.txt" />
</ItemGroup>
<ItemGroup>

View File

@@ -0,0 +1,39 @@
namespace AdventOfCode2022.Test
open NUnit.Framework
open FsUnitTyped
open AdventOfCode2022
[<TestFixture>]
module TestDay23 =
let input =
"""....#..
..###.#
#...#.#
.#...##
#.###..
##.#.##
.#..#..
"""
[<Test>]
let ``Part 1, given`` () =
Day23.part1 (StringSplitEnumerator.make '\n' input) |> shouldEqual 110
[<Test>]
let ``Part 1`` () =
let input = Assembly.readResource "Day23.txt"
Day23.part1 (StringSplitEnumerator.make '\n' input) |> shouldEqual 4025
[<Test>]
let ``Part 2, given`` () =
Day23.part2 (StringSplitEnumerator.make '\n' input) |> shouldEqual 20
[<Test>]
let ``Part 2`` () =
let input = Assembly.readResource "Day23.txt"
Day23.part2 (StringSplitEnumerator.make '\n' input) |> shouldEqual 935

View File

@@ -0,0 +1,72 @@
#.#####..#..##......##.#..####....#.#.####..##.#######..##..##.###...#..
..#..##.#.#.#.##.#......######.#...###....#....#.#..#####.....#..#.####.
....#..#.###.####.......#.#.###..#.######...##..#.#.#..#.######.####..##
...#.#..####...#..##.#.####..#..##.#####..##.#...#..##..#..#.#.#.####...
.##..###..###.#.##...#..#.#.##.##.###.##....#.####.#.##.#..##.#####.#..#
#.#.###.#######..#...#####.##..##..##.#...#.#...#####.##....###.#...###.
...#...##.#..#.###....#.#.##..#.#..##.#.#.#..#...#.....#.####.##.#..##..
####.#...##.##.#..#.#####.#.##.###..#...#.#.##.##......##..#.#..##..##..
..#.##.##.####....##.....#.#.......##.#..#.###.####.###.#.....#.#.#...##
##...###..###.#.####.#..#...###...####..#####.#.#..##....#.#.####...#..#
####..#.#.##.##....#..##.###.#..#..###.##.#.....#######..##.##....#.#.##
.##...#.#####...#......##.#.##..#.####......#..###.##.##..#.#...##....##
.#.##.#.##.#..#..###.#.###....#.#.#.#.#.###....##..####.#######.##.##.#.
#######.##.#...###.#..#######.#..##.#..#.#...#.#.#.#..##.##.#.#.#....#..
#.#.#.#.##..##..#.##...##.#.###.####...####.##..#.##.##.###.###.#....##.
#...######.#....####.#.#.##....#..#...##.........#####.###..##.#.#..#.#.
#.#.#.#.#...#.###...#.....#.#....######......#..#..#.###.#..#.#.##.#....
#.##.#...#####.#....#.#.#..##...##.##.##.#####.####.#.##.#.###...#.##.##
#...#.#.###........##..#...#.###...###.##......##.####..#.##....##.#..##
#####.#..#.....#######..........#..####..##.#.#####..###...#...##.#.####
...###..##.##.##.##.#..###...###.#.##.#.###.##.#.#........###...#....##.
###.##...##.###..#..#.#.#...##.#.#.....##.#.##....####.####..#######..##
##.#.#..#..###.#.#######..#..#.#.#..#####...####...#.####....##.###..##.
..#.#.#....####.#.......#..#..###.##.#...##.####..###.#.#..####..#.####.
.#.#..##.##..#...##...###.##.#.#.#..#####...#...#####..##.#...###..#.##.
..###.#...#.#...#.###...###.##.#.#....#.#...##...##.....#.##.#.###.#....
##....#..#........###..#.##.#..##...#.#.#..##.####.#...#.########.###...
..#####.##.#...#..##...###.#####...#....#.##.######.#..#.##....###..##..
.####.##..###...#.##...#.#.##..###.......#.###.#.##...#.#....#.#.##..##.
#..#..###....#..#.#.....#.#.#####..##...####....####.#.#.##....#####.##.
##########.####.#...##.##...#....##..##...###....#..###.##..##.###...###
##.###..##.####.....#.#.....#.##...#...###..#.#...#....###..###.......#.
##..###.#....##..#.#....###...#.####.#.###.#.#.#..##.##..##.######.##...
#...####...#.##..##.##.#..####.#..#..#.##.##....#..#.##..##.#.###..#.###
#.#..##.###.....#....###.##.##.#.###.#####.#.....##.##.##..#.##.###..###
#...#..##..#..###....#..#...#..###...#.##.#.#.###...###..#.##..#..##.##.
#.#..#.##.#...#..............#.###...##.##.#.....########.###....#.....#
#..#.#...##..#.#.###.##.#.#....####.#.##.#.###.###.#..#..##.....#..####.
.....###....##.##..##..#....######......##.###..#.#......#.#..#..#...#.#
.##...###.#.#.###...##...##.#.####..#.###.#.#.#.###...##.#...#....###..#
#..####.#...#.##..#..#.###.###...#.#.#..##....####..#...##........####..
....##.##....#.....#..##..###..####..##.#.#.######..#....#..####.###.#..
.#.##..#..#.#.....#........#..###.##.###.##.#..#..##.....#.#.###.###..#.
#.#.#.#..#.###.#..#.##.##..######.##.######.#...#.###..#...#...##....#.#
##..#...##.#.#.#.######.####.###...####..#....####...#.#..###...##.##..#
.##.#....#...##...#...##.##.####..#.##..#.##.####..#.##..#..###..######.
.##.#.#.##.#.####..#..#..##.#....#...####.###.##.####.....###..#..#.#..#
#.##..#....##....##...#.##..####.#..####....###.##...###....##.###.##...
..##..##.#...#.#..###...#.#.#.###.#.#######..#..###.#.###..#.###....#..#
#..##.##.####..##.#....##..#.#......###....######..#.....###.....#.#.#..
.#...###.##...#.##.##...##...##..####...#..########.###..########.#..#.#
###.##.###.#.##.#..#.###....##...###.#.###.##..#.#...#..#####.##.##...#.
.###.####..###.#.....####.#...###.##.#.##..#..#....##....#.#..#....###..
##.#.#..##.#####..########..##...####....#.##.#.#.###.###.####.....####.
#....###.....####.###.###.##..#...#.##.##...##.#..#.........#####......#
##.####.#.#..#..#.##...#.##......#...#.#.#.####.##..##...####.....#.#.#.
...#.###.#..###.....#.#####.#.....####.###...#.###....#...#..#.#...##.#.
.#.......#...#......##..#.###....#.######..###.##...###...##.#.#.##..#.#
.##.###.#..#.#####..###...#.###...##.#.####.#.#.#..#....#####...#..##.##
.###..#...##..#.....##.#...#.#...##..##.#.###..###.#....##.###.###..#...
#######.##..#..#.#...#..#.#..#.#..###..#########.#.....#.....####.##.#.#
#.##..####...##.#..###.###...#....####...####..#...#####...##.#...#####.
#..##.#..#.######.#.#.#.##...##..#...##...#.......#.#####.#...#.##..#.#.
.##..#..###..#####.#.##..######.##...#.###.##.##.#..#....#..#.###..####.
...#...##.#...##.#.###.#.#..##..####.....#..........#..#.........##..##.
#####..##......##.##...#.##.###...####....##.##..#.###.#..##..#.##.#....
.###....##.#####.#.###.#.##...##.####....###..#......#.#..#....##.#.#.##
..###.#....#######.#.#..#.###.##.##..#..###...##.###.##.####.##.##.####.
.#.#...##.#..##.....###.#..#.#...##..#..#.#.#.###.##.##.#.....#.##..#...
.#####.#....#..#.####..####..#....#....##.#...#.##...###.#.#...#########
###.####....#.####..#..###....#.###.##...#####.###...#.#..#.#........###
#.#.######...#.#..#####.#.####.....##...#.###.#.##..##.#.#.##..#.####.#.

View File

@@ -34,6 +34,7 @@
<Compile Include="Day20.fs" />
<Compile Include="Day21.fs" />
<Compile Include="Day22.fs" />
<Compile Include="Day23.fs" />
</ItemGroup>
<ItemGroup>

View File

@@ -1,6 +1,7 @@
namespace AdventOfCode2022
open System
open System.Runtime.CompilerServices
#if DEBUG
open Checked
@@ -12,6 +13,7 @@ open Checked
#endif
[<Struct>]
[<IsReadOnly>]
type Coordinate =
{
X : int

172
AdventOfCode2022/Day23.fs Normal file
View File

@@ -0,0 +1,172 @@
namespace AdventOfCode2022
open System
open System.Collections.Generic
#if DEBUG
open Checked
#else
#nowarn "9"
#endif
[<RequireQualifiedAccess>]
module Day23 =
let parse (line : StringSplitEnumerator) : Coordinate HashSet =
use mutable enum = line.GetEnumerator ()
let output = HashSet ()
let mutable y = 0
while enum.MoveNext () do
if not (enum.Current.IsWhiteSpace ()) then
let mutable x = 0
for c in enum.Current.TrimEnd () do
if c = '#' then
output.Add
{
X = x
Y = y
}
|> ignore
x <- x + 1
y <- y + 1
output
// proposedEndSteps will be cleared on input; it's just to save allocation.
// All inputs will be mutated.
// Returns true if an elf moved.
let inline oneRound
(board : HashSet<Coordinate>)
(proposedEndSteps : Dictionary<_, _>)
(proposedDirections : _ array)
: bool
=
proposedEndSteps.Clear ()
for elf in board do
let mutable hasAdjacentElf = false
for xOffset = -1 to 1 do
for yOffset = -1 to 1 do
if not hasAdjacentElf && (xOffset <> 0 || yOffset <> 0) then
let adjacentElf =
{
X = elf.X + xOffset
Y = elf.Y + yOffset
}
if board.Contains adjacentElf then
hasAdjacentElf <- true
if hasAdjacentElf then
let mutable proposedEndPlace = ValueNone
for struct (proposedX, proposedY) in proposedDirections do
let mutable hasElfInDestination = false
if proposedEndPlace.IsNone then
if proposedX = 0 then
for proposedX' = -1 to 1 do
if not hasElfInDestination then
let proposal =
{
X = elf.X + proposedX'
Y = elf.Y + proposedY
}
if board.Contains proposal then
hasElfInDestination <- true
else
for proposedY' = -1 to 1 do
if not hasElfInDestination then
let proposal =
{
X = elf.X + proposedX
Y = elf.Y + proposedY'
}
if board.Contains proposal then
hasElfInDestination <- true
if not hasElfInDestination then
proposedEndPlace <-
ValueSome
{
X = elf.X + proposedX
Y = elf.Y + proposedY
}
match proposedEndPlace with
| ValueNone -> ()
| ValueSome loc ->
if not (proposedEndSteps.TryAdd (loc, ValueSome elf)) then
proposedEndSteps.[loc] <- ValueNone
for KeyValue (dest, source) in proposedEndSteps do
match source with
| ValueNone -> ()
| ValueSome source ->
board.Remove source |> ignore
board.Add dest |> ignore
let tmp = proposedDirections.[0]
for i = 0 to proposedDirections.Length - 2 do
proposedDirections.[i] <- proposedDirections.[i + 1]
proposedDirections.[proposedDirections.Length - 1] <- tmp
proposedEndSteps.Count > 0
let part1 (lines : StringSplitEnumerator) : int =
let board = parse lines
let proposedEndSteps = Dictionary board.Count
let proposedDirections =
[| struct (0, -1) ; struct (0, 1) ; struct (-1, 0) ; struct (1, 0) |]
for _round = 0 to 9 do
oneRound board proposedEndSteps proposedDirections |> ignore
let mutable minX = Int32.MaxValue
let mutable maxX = Int32.MinValue
let mutable minY = Int32.MaxValue
let mutable maxY = Int32.MinValue
let mutable count = 0
for elf in board do
if elf.X < minX then
minX <- elf.X
if elf.X > maxX then
maxX <- elf.X
if elf.Y < minY then
minY <- elf.Y
if elf.Y > maxY then
maxY <- elf.Y
count <- count + 1
(maxX - minX + 1) * (maxY - minY + 1) - count
let part2 (lines : StringSplitEnumerator) : int =
let board = parse lines
let proposedEndSteps = Dictionary board.Count
let proposedDirections =
[| struct (0, -1) ; struct (0, 1) ; struct (-1, 0) ; struct (1, 0) |]
let mutable count = 1
while oneRound board proposedEndSteps proposedDirections do
count <- count + 1
count

View File

@@ -1,6 +1,6 @@
``` ini
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -8,15 +8,15 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
```
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |---------------:|--------------:|--------------:|
| **Benchmark** | **11** | **False** | **2,820.457 μs** | **3.7483 μs** | **3.3227 μs** |
| **Benchmark** | **11** | **True** | **7.169 μs** | **0.0174 μs** | **0.0155 μs** |
| **Benchmark** | **12** | **False** | **21,549.304 μs** | **27.9526 μs** | **23.3417 μs** |
| **Benchmark** | **12** | **True** | **20,387.439 μs** | **37.2080 μs** | **31.0703 μs** |
| **Benchmark** | **13** | **False** | **613.099 μs** | **0.6537 μs** | **0.5459 μs** |
| **Benchmark** | **13** | **True** | **335.878 μs** | **0.7367 μs** | **0.6531 μs** |
| **Benchmark** | **14** | **False** | **4,092.648 μs** | **6.5945 μs** | **5.5067 μs** |
| **Benchmark** | **14** | **True** | **356.154 μs** | **0.6613 μs** | **0.6186 μs** |
| **Benchmark** | **15** | **False** | **52.149 μs** | **0.3480 μs** | **0.3085 μs** |
| **Benchmark** | **15** | **True** | **176,786.977 μs** | **2,760.3078 μs** | **2,155.0668 μs** |
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |---------------:|--------------:|------------:|
| **Benchmark** | **11** | **False** | **2,813.869 μs** | **14.6687 μs** | **12.2490 μs** |
| **Benchmark** | **11** | **True** | **7.198 μs** | **0.0554 μs** | **0.0519 μs** |
| **Benchmark** | **12** | **False** | **22,499.829 μs** | **361.1070 μs** | **281.9286 μs** |
| **Benchmark** | **12** | **True** | **18,836.926 μs** | **136.6720 μs** | **121.1562 μs** |
| **Benchmark** | **13** | **False** | **392.867 μs** | **2.6808 μs** | **2.3764 μs** |
| **Benchmark** | **13** | **True** | **374.141 μs** | **2.5758 μs** | **2.4094 μs** |
| **Benchmark** | **14** | **False** | **4,157.513 μs** | **23.2704 μs** | **20.6286 μs** |
| **Benchmark** | **14** | **True** | **347.943 μs** | **4.7107 μs** | **4.4064 μs** |
| **Benchmark** | **15** | **False** | **52.101 μs** | **0.6099 μs** | **0.5705 μs** |
| **Benchmark** | **15** | **True** | **179,334.650 μs** | **1,074.9237 μs** | **839.2297 μs** |

View File

@@ -1,11 +1,11 @@
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Day,IsPartOne,Mean,Error,StdDev
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,11,False,"2,820.457 μs",3.7483 μs,3.3227 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,11,True,7.169 μs,0.0174 μs,0.0155 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,12,False,"21,549.304 μs",27.9526 μs,23.3417 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,12,True,"20,387.439 μs",37.2080 μs,31.0703 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,13,False,613.099 μs,0.6537 μs,0.5459 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,13,True,335.878 μs,0.7367 μs,0.6531 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,14,False,"4,092.648 μs",6.5945 μs,5.5067 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,14,True,356.154 μs,0.6613 μs,0.6186 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,15,False,52.149 μs,0.3480 μs,0.3085 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,15,True,"176,786.977 μs","2,760.3078 μs","2,155.0668 μs"
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,11,False,"2,813.869 μs",14.6687 μs,12.2490 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,11,True,7.198 μs,0.0554 μs,0.0519 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,12,False,"22,499.829 μs",361.1070 μs,281.9286 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,12,True,"18,836.926 μs",136.6720 μs,121.1562 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,13,False,392.867 μs,2.6808 μs,2.3764 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,13,True,374.141 μs,2.5758 μs,2.4094 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,14,False,"4,157.513 μs",23.2704 μs,20.6286 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,14,True,347.943 μs,4.7107 μs,4.4064 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,15,False,52.101 μs,0.6099 μs,0.5705 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,15,True,"179,334.650 μs","1,074.9237 μs",839.2297 μs
1 Method Job AnalyzeLaunchVariance EvaluateOverhead MaxAbsoluteError MaxRelativeError MinInvokeCount MinIterationTime OutlierMode Affinity EnvironmentVariables Jit Platform PowerPlanMode Runtime AllowVeryLargeObjects Concurrent CpuGroups Force HeapAffinitizeMask HeapCount NoAffinitize RetainVm Server Arguments BuildConfiguration Clock EngineFactory NuGetReferences Toolchain IsMutator InvocationCount IterationCount IterationTime LaunchCount MaxIterationCount MaxWarmupIterationCount MemoryRandomization MinIterationCount MinWarmupIterationCount RunStrategy UnrollFactor WarmupCount Day IsPartOne Mean Error StdDev
2 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 11 False 2,820.457 μs 2,813.869 μs 3.7483 μs 14.6687 μs 3.3227 μs 12.2490 μs
3 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 11 True 7.169 μs 7.198 μs 0.0174 μs 0.0554 μs 0.0155 μs 0.0519 μs
4 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 12 False 21,549.304 μs 22,499.829 μs 27.9526 μs 361.1070 μs 23.3417 μs 281.9286 μs
5 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 12 True 20,387.439 μs 18,836.926 μs 37.2080 μs 136.6720 μs 31.0703 μs 121.1562 μs
6 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 13 False 613.099 μs 392.867 μs 0.6537 μs 2.6808 μs 0.5459 μs 2.3764 μs
7 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 13 True 335.878 μs 374.141 μs 0.7367 μs 2.5758 μs 0.6531 μs 2.4094 μs
8 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 14 False 4,092.648 μs 4,157.513 μs 6.5945 μs 23.2704 μs 5.5067 μs 20.6286 μs
9 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 14 True 356.154 μs 347.943 μs 0.6613 μs 4.7107 μs 0.6186 μs 4.4064 μs
10 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 15 False 52.149 μs 52.101 μs 0.3480 μs 0.6099 μs 0.3085 μs 0.5705 μs
11 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 15 True 176,786.977 μs 179,334.650 μs 2,760.3078 μs 1,074.9237 μs 2,155.0668 μs 839.2297 μs

View File

@@ -2,7 +2,7 @@
<html lang='en'>
<head>
<meta charset='utf-8' />
<title>AdventOfCode2022.App.Benchmark11To15-20221220-123142</title>
<title>AdventOfCode2022.App.Benchmark11To15-20221223-105122</title>
<style type="text/css">
table { border-collapse: collapse; display: block; width: 100%; overflow: auto; }
@@ -13,7 +13,7 @@
</head>
<body>
<pre><code>
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -22,18 +22,18 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
<pre><code></code></pre>
<table>
<thead><tr><th>Method</th><th>Day</th><th>IsPartOne</th><th> Mean</th><th> Error</th><th> StdDev</th>
<thead><tr><th>Method</th><th>Day</th><th>IsPartOne</th><th> Mean</th><th> Error</th><th>StdDev</th>
</tr>
</thead><tbody><tr><td>Benchmark</td><td>11</td><td>False</td><td>2,820.457 &mu;s</td><td>3.7483 &mu;s</td><td>3.3227 &mu;s</td>
</tr><tr><td>Benchmark</td><td>11</td><td>True</td><td>7.169 &mu;s</td><td>0.0174 &mu;s</td><td>0.0155 &mu;s</td>
</tr><tr><td>Benchmark</td><td>12</td><td>False</td><td>21,549.304 &mu;s</td><td>27.9526 &mu;s</td><td>23.3417 &mu;s</td>
</tr><tr><td>Benchmark</td><td>12</td><td>True</td><td>20,387.439 &mu;s</td><td>37.2080 &mu;s</td><td>31.0703 &mu;s</td>
</tr><tr><td>Benchmark</td><td>13</td><td>False</td><td>613.099 &mu;s</td><td>0.6537 &mu;s</td><td>0.5459 &mu;s</td>
</tr><tr><td>Benchmark</td><td>13</td><td>True</td><td>335.878 &mu;s</td><td>0.7367 &mu;s</td><td>0.6531 &mu;s</td>
</tr><tr><td>Benchmark</td><td>14</td><td>False</td><td>4,092.648 &mu;s</td><td>6.5945 &mu;s</td><td>5.5067 &mu;s</td>
</tr><tr><td>Benchmark</td><td>14</td><td>True</td><td>356.154 &mu;s</td><td>0.6613 &mu;s</td><td>0.6186 &mu;s</td>
</tr><tr><td>Benchmark</td><td>15</td><td>False</td><td>52.149 &mu;s</td><td>0.3480 &mu;s</td><td>0.3085 &mu;s</td>
</tr><tr><td>Benchmark</td><td>15</td><td>True</td><td>176,786.977 &mu;s</td><td>2,760.3078 &mu;s</td><td>2,155.0668 &mu;s</td>
</thead><tbody><tr><td>Benchmark</td><td>11</td><td>False</td><td>2,813.869 &mu;s</td><td>14.6687 &mu;s</td><td>12.2490 &mu;s</td>
</tr><tr><td>Benchmark</td><td>11</td><td>True</td><td>7.198 &mu;s</td><td>0.0554 &mu;s</td><td>0.0519 &mu;s</td>
</tr><tr><td>Benchmark</td><td>12</td><td>False</td><td>22,499.829 &mu;s</td><td>361.1070 &mu;s</td><td>281.9286 &mu;s</td>
</tr><tr><td>Benchmark</td><td>12</td><td>True</td><td>18,836.926 &mu;s</td><td>136.6720 &mu;s</td><td>121.1562 &mu;s</td>
</tr><tr><td>Benchmark</td><td>13</td><td>False</td><td>392.867 &mu;s</td><td>2.6808 &mu;s</td><td>2.3764 &mu;s</td>
</tr><tr><td>Benchmark</td><td>13</td><td>True</td><td>374.141 &mu;s</td><td>2.5758 &mu;s</td><td>2.4094 &mu;s</td>
</tr><tr><td>Benchmark</td><td>14</td><td>False</td><td>4,157.513 &mu;s</td><td>23.2704 &mu;s</td><td>20.6286 &mu;s</td>
</tr><tr><td>Benchmark</td><td>14</td><td>True</td><td>347.943 &mu;s</td><td>4.7107 &mu;s</td><td>4.4064 &mu;s</td>
</tr><tr><td>Benchmark</td><td>15</td><td>False</td><td>52.101 &mu;s</td><td>0.6099 &mu;s</td><td>0.5705 &mu;s</td>
</tr><tr><td>Benchmark</td><td>15</td><td>True</td><td>179,334.650 &mu;s</td><td>1,074.9237 &mu;s</td><td>839.2297 &mu;s</td>
</tr></tbody></table>
</body>
</html>

View File

@@ -1,6 +1,6 @@
``` ini
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -8,15 +8,15 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
```
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |---------------:|-------------:|--------------:|
| **Benchmark** | **16** | **False** | **3,095,380.2 μs** | **84,912.16 μs** | **250,365.43 μs** |
| **Benchmark** | **16** | **True** | **327,650.0 μs** | **912.56 μs** | **712.46 μs** |
| **Benchmark** | **17** | **False** | **3,038.3 μs** | **14.24 μs** | **13.32 μs** |
| **Benchmark** | **17** | **True** | **1,557.7 μs** | **4.21 μs** | **3.73 μs** |
| **Benchmark** | **18** | **False** | **42,873.0 μs** | **63.68 μs** | **53.18 μs** |
| **Benchmark** | **18** | **True** | **131.4 μs** | **0.35 μs** | **0.29 μs** |
| **Benchmark** | **19** | **False** | **561,661.4 μs** | **920.21 μs** | **815.75 μs** |
| **Benchmark** | **19** | **True** | **682,697.4 μs** | **3,253.31 μs** | **3,043.15 μs** |
| **Benchmark** | **20** | **False** | **117,615.9 μs** | **393.47 μs** | **368.06 μs** |
| **Benchmark** | **20** | **True** | **12,723.1 μs** | **18.14 μs** | **16.08 μs** |
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |---------------:|-------------:|-------------:|
| **Benchmark** | **16** | **False** | **3,528,338.8 μs** | **69,294.15 μs** | **82,489.76 μs** |
| **Benchmark** | **16** | **True** | **377,458.7 μs** | **975.99 μs** | **815.00 μs** |
| **Benchmark** | **17** | **False** | **3,102.7 μs** | **60.69 μs** | **53.80 μs** |
| **Benchmark** | **17** | **True** | **1,593.5 μs** | **6.95 μs** | **5.80 μs** |
| **Benchmark** | **18** | **False** | **43,915.2 μs** | **313.88 μs** | **293.61 μs** |
| **Benchmark** | **18** | **True** | **139.9 μs** | **1.99 μs** | **1.86 μs** |
| **Benchmark** | **19** | **False** | **570,969.8 μs** | **3,119.46 μs** | **2,917.94 μs** |
| **Benchmark** | **19** | **True** | **690,794.4 μs** | **5,494.15 μs** | **5,139.23 μs** |
| **Benchmark** | **20** | **False** | **118,895.5 μs** | **260.48 μs** | **230.91 μs** |
| **Benchmark** | **20** | **True** | **12,892.8 μs** | **35.90 μs** | **33.58 μs** |

View File

@@ -1,11 +1,11 @@
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Day,IsPartOne,Mean,Error,StdDev
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,16,False,"3,095,380.2 μs","84,912.16 μs","250,365.43 μs"
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,16,True,"327,650.0 μs",912.56 μs,712.46 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,17,False,"3,038.3 μs",14.24 μs,13.32 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,17,True,"1,557.7 μs",4.21 μs,3.73 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,18,False,"42,873.0 μs",63.68 μs,53.18 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,18,True,131.4 μs,0.35 μs,0.29 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,19,False,"561,661.4 μs",920.21 μs,815.75 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,19,True,"682,697.4 μs","3,253.31 μs","3,043.15 μs"
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,20,False,"117,615.9 μs",393.47 μs,368.06 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,20,True,"12,723.1 μs",18.14 μs,16.08 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,16,False,"3,528,338.8 μs","69,294.15 μs","82,489.76 μs"
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,16,True,"377,458.7 μs",975.99 μs,815.00 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,17,False,"3,102.7 μs",60.69 μs,53.80 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,17,True,"1,593.5 μs",6.95 μs,5.80 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,18,False,"43,915.2 μs",313.88 μs,293.61 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,18,True,139.9 μs,1.99 μs,1.86 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,19,False,"570,969.8 μs","3,119.46 μs","2,917.94 μs"
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,19,True,"690,794.4 μs","5,494.15 μs","5,139.23 μs"
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,20,False,"118,895.5 μs",260.48 μs,230.91 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,20,True,"12,892.8 μs",35.90 μs,33.58 μs
1 Method Job AnalyzeLaunchVariance EvaluateOverhead MaxAbsoluteError MaxRelativeError MinInvokeCount MinIterationTime OutlierMode Affinity EnvironmentVariables Jit Platform PowerPlanMode Runtime AllowVeryLargeObjects Concurrent CpuGroups Force HeapAffinitizeMask HeapCount NoAffinitize RetainVm Server Arguments BuildConfiguration Clock EngineFactory NuGetReferences Toolchain IsMutator InvocationCount IterationCount IterationTime LaunchCount MaxIterationCount MaxWarmupIterationCount MemoryRandomization MinIterationCount MinWarmupIterationCount RunStrategy UnrollFactor WarmupCount Day IsPartOne Mean Error StdDev
2 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 16 False 3,095,380.2 μs 3,528,338.8 μs 84,912.16 μs 69,294.15 μs 250,365.43 μs 82,489.76 μs
3 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 16 True 327,650.0 μs 377,458.7 μs 912.56 μs 975.99 μs 712.46 μs 815.00 μs
4 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 17 False 3,038.3 μs 3,102.7 μs 14.24 μs 60.69 μs 13.32 μs 53.80 μs
5 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 17 True 1,557.7 μs 1,593.5 μs 4.21 μs 6.95 μs 3.73 μs 5.80 μs
6 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 18 False 42,873.0 μs 43,915.2 μs 63.68 μs 313.88 μs 53.18 μs 293.61 μs
7 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 18 True 131.4 μs 139.9 μs 0.35 μs 1.99 μs 0.29 μs 1.86 μs
8 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 19 False 561,661.4 μs 570,969.8 μs 920.21 μs 3,119.46 μs 815.75 μs 2,917.94 μs
9 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 19 True 682,697.4 μs 690,794.4 μs 3,253.31 μs 5,494.15 μs 3,043.15 μs 5,139.23 μs
10 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 20 False 117,615.9 μs 118,895.5 μs 393.47 μs 260.48 μs 368.06 μs 230.91 μs
11 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 20 True 12,723.1 μs 12,892.8 μs 18.14 μs 35.90 μs 16.08 μs 33.58 μs

View File

@@ -2,7 +2,7 @@
<html lang='en'>
<head>
<meta charset='utf-8' />
<title>AdventOfCode2022.App.Benchmark16To20-20221220-123444</title>
<title>AdventOfCode2022.App.Benchmark16To20-20221223-105433</title>
<style type="text/css">
table { border-collapse: collapse; display: block; width: 100%; overflow: auto; }
@@ -13,7 +13,7 @@
</head>
<body>
<pre><code>
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -22,18 +22,18 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
<pre><code></code></pre>
<table>
<thead><tr><th>Method</th><th>Day</th><th>IsPartOne</th><th> Mean</th><th> Error</th><th> StdDev</th>
<thead><tr><th>Method</th><th>Day</th><th>IsPartOne</th><th> Mean</th><th> Error</th><th>StdDev</th>
</tr>
</thead><tbody><tr><td>Benchmark</td><td>16</td><td>False</td><td>3,095,380.2 &mu;s</td><td>84,912.16 &mu;s</td><td>250,365.43 &mu;s</td>
</tr><tr><td>Benchmark</td><td>16</td><td>True</td><td>327,650.0 &mu;s</td><td>912.56 &mu;s</td><td>712.46 &mu;s</td>
</tr><tr><td>Benchmark</td><td>17</td><td>False</td><td>3,038.3 &mu;s</td><td>14.24 &mu;s</td><td>13.32 &mu;s</td>
</tr><tr><td>Benchmark</td><td>17</td><td>True</td><td>1,557.7 &mu;s</td><td>4.21 &mu;s</td><td>3.73 &mu;s</td>
</tr><tr><td>Benchmark</td><td>18</td><td>False</td><td>42,873.0 &mu;s</td><td>63.68 &mu;s</td><td>53.18 &mu;s</td>
</tr><tr><td>Benchmark</td><td>18</td><td>True</td><td>131.4 &mu;s</td><td>0.35 &mu;s</td><td>0.29 &mu;s</td>
</tr><tr><td>Benchmark</td><td>19</td><td>False</td><td>561,661.4 &mu;s</td><td>920.21 &mu;s</td><td>815.75 &mu;s</td>
</tr><tr><td>Benchmark</td><td>19</td><td>True</td><td>682,697.4 &mu;s</td><td>3,253.31 &mu;s</td><td>3,043.15 &mu;s</td>
</tr><tr><td>Benchmark</td><td>20</td><td>False</td><td>117,615.9 &mu;s</td><td>393.47 &mu;s</td><td>368.06 &mu;s</td>
</tr><tr><td>Benchmark</td><td>20</td><td>True</td><td>12,723.1 &mu;s</td><td>18.14 &mu;s</td><td>16.08 &mu;s</td>
</thead><tbody><tr><td>Benchmark</td><td>16</td><td>False</td><td>3,528,338.8 &mu;s</td><td>69,294.15 &mu;s</td><td>82,489.76 &mu;s</td>
</tr><tr><td>Benchmark</td><td>16</td><td>True</td><td>377,458.7 &mu;s</td><td>975.99 &mu;s</td><td>815.00 &mu;s</td>
</tr><tr><td>Benchmark</td><td>17</td><td>False</td><td>3,102.7 &mu;s</td><td>60.69 &mu;s</td><td>53.80 &mu;s</td>
</tr><tr><td>Benchmark</td><td>17</td><td>True</td><td>1,593.5 &mu;s</td><td>6.95 &mu;s</td><td>5.80 &mu;s</td>
</tr><tr><td>Benchmark</td><td>18</td><td>False</td><td>43,915.2 &mu;s</td><td>313.88 &mu;s</td><td>293.61 &mu;s</td>
</tr><tr><td>Benchmark</td><td>18</td><td>True</td><td>139.9 &mu;s</td><td>1.99 &mu;s</td><td>1.86 &mu;s</td>
</tr><tr><td>Benchmark</td><td>19</td><td>False</td><td>570,969.8 &mu;s</td><td>3,119.46 &mu;s</td><td>2,917.94 &mu;s</td>
</tr><tr><td>Benchmark</td><td>19</td><td>True</td><td>690,794.4 &mu;s</td><td>5,494.15 &mu;s</td><td>5,139.23 &mu;s</td>
</tr><tr><td>Benchmark</td><td>20</td><td>False</td><td>118,895.5 &mu;s</td><td>260.48 &mu;s</td><td>230.91 &mu;s</td>
</tr><tr><td>Benchmark</td><td>20</td><td>True</td><td>12,892.8 &mu;s</td><td>35.90 &mu;s</td><td>33.58 &mu;s</td>
</tr></tbody></table>
</body>
</html>

View File

@@ -1,6 +1,6 @@
``` ini
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -10,13 +10,13 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
```
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |---------:|---------:|---------:|
| **Benchmark** | **1** | **False** | **32.13 μs** | **0.239 μs** | **0.212 μs** |
| **Benchmark** | **1** | **True** | **31.73 μs** | **0.072 μs** | **0.060 μs** |
| **Benchmark** | **2** | **False** | **79.43 μs** | **0.149 μs** | **0.132 μs** |
| **Benchmark** | **2** | **True** | **80.64 μs** | **0.194 μs** | **0.172 μs** |
| **Benchmark** | **3** | **False** | **65.79 μs** | **0.631 μs** | **0.590 μs** |
| **Benchmark** | **3** | **True** | **33.10 μs** | **0.206 μs** | **0.172 μs** |
| **Benchmark** | **4** | **False** | **52.37 μs** | **0.135 μs** | **0.120 μs** |
| **Benchmark** | **4** | **True** | **63.40 μs** | **0.137 μs** | **0.128 μs** |
| **Benchmark** | **5** | **False** | **79.16 μs** | **0.365 μs** | **0.304 μs** |
| **Benchmark** | **5** | **True** | **91.81 μs** | **0.304 μs** | **0.284 μs** |
| **Benchmark** | **1** | **False** | **32.19 μs** | **0.076 μs** | **0.067 μs** |
| **Benchmark** | **1** | **True** | **32.07 μs** | **0.114 μs** | **0.107 μs** |
| **Benchmark** | **2** | **False** | **79.54 μs** | **0.419 μs** | **0.392 μs** |
| **Benchmark** | **2** | **True** | **81.04 μs** | **0.143 μs** | **0.127 μs** |
| **Benchmark** | **3** | **False** | **67.11 μs** | **0.604 μs** | **0.565 μs** |
| **Benchmark** | **3** | **True** | **29.12 μs** | **0.296 μs** | **0.277 μs** |
| **Benchmark** | **4** | **False** | **53.06 μs** | **0.171 μs** | **0.160 μs** |
| **Benchmark** | **4** | **True** | **64.65 μs** | **0.209 μs** | **0.195 μs** |
| **Benchmark** | **5** | **False** | **78.68 μs** | **0.322 μs** | **0.252 μs** |
| **Benchmark** | **5** | **True** | **91.09 μs** | **0.345 μs** | **0.323 μs** |

View File

@@ -1,11 +1,11 @@
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Day,IsPartOne,Mean,Error,StdDev
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,1,False,32.13 μs,0.239 μs,0.212 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,1,True,31.73 μs,0.072 μs,0.060 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,2,False,79.43 μs,0.149 μs,0.132 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,2,True,80.64 μs,0.194 μs,0.172 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,3,False,65.79 μs,0.631 μs,0.590 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,3,True,33.10 μs,0.206 μs,0.172 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,4,False,52.37 μs,0.135 μs,0.120 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,4,True,63.40 μs,0.137 μs,0.128 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,5,False,79.16 μs,0.365 μs,0.304 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,5,True,91.81 μs,0.304 μs,0.284 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,1,False,32.19 μs,0.076 μs,0.067 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,1,True,32.07 μs,0.114 μs,0.107 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,2,False,79.54 μs,0.419 μs,0.392 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,2,True,81.04 μs,0.143 μs,0.127 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,3,False,67.11 μs,0.604 μs,0.565 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,3,True,29.12 μs,0.296 μs,0.277 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,4,False,53.06 μs,0.171 μs,0.160 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,4,True,64.65 μs,0.209 μs,0.195 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,5,False,78.68 μs,0.322 μs,0.252 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,5,True,91.09 μs,0.345 μs,0.323 μs
1 Method Job AnalyzeLaunchVariance EvaluateOverhead MaxAbsoluteError MaxRelativeError MinInvokeCount MinIterationTime OutlierMode Affinity EnvironmentVariables Jit Platform PowerPlanMode Runtime AllowVeryLargeObjects Concurrent CpuGroups Force HeapAffinitizeMask HeapCount NoAffinitize RetainVm Server Arguments BuildConfiguration Clock EngineFactory NuGetReferences Toolchain IsMutator InvocationCount IterationCount IterationTime LaunchCount MaxIterationCount MaxWarmupIterationCount MemoryRandomization MinIterationCount MinWarmupIterationCount RunStrategy UnrollFactor WarmupCount Day IsPartOne Mean Error StdDev
2 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 1 False 32.13 μs 32.19 μs 0.239 μs 0.076 μs 0.212 μs 0.067 μs
3 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 1 True 31.73 μs 32.07 μs 0.072 μs 0.114 μs 0.060 μs 0.107 μs
4 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 2 False 79.43 μs 79.54 μs 0.149 μs 0.419 μs 0.132 μs 0.392 μs
5 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 2 True 80.64 μs 81.04 μs 0.194 μs 0.143 μs 0.172 μs 0.127 μs
6 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 3 False 65.79 μs 67.11 μs 0.631 μs 0.604 μs 0.590 μs 0.565 μs
7 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 3 True 33.10 μs 29.12 μs 0.206 μs 0.296 μs 0.172 μs 0.277 μs
8 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 4 False 52.37 μs 53.06 μs 0.135 μs 0.171 μs 0.120 μs 0.160 μs
9 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 4 True 63.40 μs 64.65 μs 0.137 μs 0.209 μs 0.128 μs 0.195 μs
10 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 5 False 79.16 μs 78.68 μs 0.365 μs 0.322 μs 0.304 μs 0.252 μs
11 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 5 True 91.81 μs 91.09 μs 0.304 μs 0.345 μs 0.284 μs 0.323 μs

View File

@@ -2,7 +2,7 @@
<html lang='en'>
<head>
<meta charset='utf-8' />
<title>AdventOfCode2022.App.Benchmark1To5-20221220-122552</title>
<title>AdventOfCode2022.App.Benchmark1To5-20221223-104458</title>
<style type="text/css">
table { border-collapse: collapse; display: block; width: 100%; overflow: auto; }
@@ -13,7 +13,7 @@
</head>
<body>
<pre><code>
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -24,16 +24,16 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
<table>
<thead><tr><th>Method</th><th>Day</th><th>IsPartOne</th><th>Mean</th><th>Error</th><th>StdDev</th>
</tr>
</thead><tbody><tr><td>Benchmark</td><td>1</td><td>False</td><td>32.13 &mu;s</td><td>0.239 &mu;s</td><td>0.212 &mu;s</td>
</tr><tr><td>Benchmark</td><td>1</td><td>True</td><td>31.73 &mu;s</td><td>0.072 &mu;s</td><td>0.060 &mu;s</td>
</tr><tr><td>Benchmark</td><td>2</td><td>False</td><td>79.43 &mu;s</td><td>0.149 &mu;s</td><td>0.132 &mu;s</td>
</tr><tr><td>Benchmark</td><td>2</td><td>True</td><td>80.64 &mu;s</td><td>0.194 &mu;s</td><td>0.172 &mu;s</td>
</tr><tr><td>Benchmark</td><td>3</td><td>False</td><td>65.79 &mu;s</td><td>0.631 &mu;s</td><td>0.590 &mu;s</td>
</tr><tr><td>Benchmark</td><td>3</td><td>True</td><td>33.10 &mu;s</td><td>0.206 &mu;s</td><td>0.172 &mu;s</td>
</tr><tr><td>Benchmark</td><td>4</td><td>False</td><td>52.37 &mu;s</td><td>0.135 &mu;s</td><td>0.120 &mu;s</td>
</tr><tr><td>Benchmark</td><td>4</td><td>True</td><td>63.40 &mu;s</td><td>0.137 &mu;s</td><td>0.128 &mu;s</td>
</tr><tr><td>Benchmark</td><td>5</td><td>False</td><td>79.16 &mu;s</td><td>0.365 &mu;s</td><td>0.304 &mu;s</td>
</tr><tr><td>Benchmark</td><td>5</td><td>True</td><td>91.81 &mu;s</td><td>0.304 &mu;s</td><td>0.284 &mu;s</td>
</thead><tbody><tr><td>Benchmark</td><td>1</td><td>False</td><td>32.19 &mu;s</td><td>0.076 &mu;s</td><td>0.067 &mu;s</td>
</tr><tr><td>Benchmark</td><td>1</td><td>True</td><td>32.07 &mu;s</td><td>0.114 &mu;s</td><td>0.107 &mu;s</td>
</tr><tr><td>Benchmark</td><td>2</td><td>False</td><td>79.54 &mu;s</td><td>0.419 &mu;s</td><td>0.392 &mu;s</td>
</tr><tr><td>Benchmark</td><td>2</td><td>True</td><td>81.04 &mu;s</td><td>0.143 &mu;s</td><td>0.127 &mu;s</td>
</tr><tr><td>Benchmark</td><td>3</td><td>False</td><td>67.11 &mu;s</td><td>0.604 &mu;s</td><td>0.565 &mu;s</td>
</tr><tr><td>Benchmark</td><td>3</td><td>True</td><td>29.12 &mu;s</td><td>0.296 &mu;s</td><td>0.277 &mu;s</td>
</tr><tr><td>Benchmark</td><td>4</td><td>False</td><td>53.06 &mu;s</td><td>0.171 &mu;s</td><td>0.160 &mu;s</td>
</tr><tr><td>Benchmark</td><td>4</td><td>True</td><td>64.65 &mu;s</td><td>0.209 &mu;s</td><td>0.195 &mu;s</td>
</tr><tr><td>Benchmark</td><td>5</td><td>False</td><td>78.68 &mu;s</td><td>0.322 &mu;s</td><td>0.252 &mu;s</td>
</tr><tr><td>Benchmark</td><td>5</td><td>True</td><td>91.09 &mu;s</td><td>0.345 &mu;s</td><td>0.323 &mu;s</td>
</tr></tbody></table>
</body>
</html>

View File

@@ -1,6 +1,6 @@
``` ini
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -8,7 +8,11 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
```
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |---------:|---------:|---------:|
| **Benchmark** | **21** | **False** | **654.8 μs** | **12.87 μs** | **13.22 μs** |
| **Benchmark** | **21** | **True** | **577.8 μs** | **6.50 μs** | **6.08 μs** |
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |-------------:|------------:|------------:|
| **Benchmark** | **21** | **False** | **646.1 μs** | **3.88 μs** | **3.63 μs** |
| **Benchmark** | **21** | **True** | **576.8 μs** | **4.40 μs** | **4.12 μs** |
| **Benchmark** | **22** | **False** | **328.5 μs** | **1.49 μs** | **1.39 μs** |
| **Benchmark** | **22** | **True** | **216.0 μs** | **1.63 μs** | **1.52 μs** |
| **Benchmark** | **23** | **False** | **357,191.8 μs** | **1,404.56 μs** | **1,313.82 μs** |
| **Benchmark** | **23** | **True** | **3,190.7 μs** | **7.80 μs** | **6.91 μs** |

View File

@@ -1,3 +1,7 @@
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Day,IsPartOne,Mean,Error,StdDev
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,21,False,654.8 μs,12.87 μs,13.22 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,21,True,577.8 μs,6.50 μs,6.08 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,21,False,646.1 μs,3.88 μs,3.63 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,21,True,576.8 μs,4.40 μs,4.12 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,22,False,328.5 μs,1.49 μs,1.39 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,22,True,216.0 μs,1.63 μs,1.52 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,23,False,"357,191.8 μs","1,404.56 μs","1,313.82 μs"
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,23,True,"3,190.7 μs",7.80 μs,6.91 μs
1 Method Job AnalyzeLaunchVariance EvaluateOverhead MaxAbsoluteError MaxRelativeError MinInvokeCount MinIterationTime OutlierMode Affinity EnvironmentVariables Jit Platform PowerPlanMode Runtime AllowVeryLargeObjects Concurrent CpuGroups Force HeapAffinitizeMask HeapCount NoAffinitize RetainVm Server Arguments BuildConfiguration Clock EngineFactory NuGetReferences Toolchain IsMutator InvocationCount IterationCount IterationTime LaunchCount MaxIterationCount MaxWarmupIterationCount MemoryRandomization MinIterationCount MinWarmupIterationCount RunStrategy UnrollFactor WarmupCount Day IsPartOne Mean Error StdDev
2 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 21 False 654.8 μs 646.1 μs 12.87 μs 3.88 μs 13.22 μs 3.63 μs
3 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 21 True 577.8 μs 576.8 μs 6.50 μs 4.40 μs 6.08 μs 4.12 μs
4 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 22 False 328.5 μs 1.49 μs 1.39 μs
5 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 22 True 216.0 μs 1.63 μs 1.52 μs
6 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 23 False 357,191.8 μs 1,404.56 μs 1,313.82 μs
7 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 23 True 3,190.7 μs 7.80 μs 6.91 μs

View File

@@ -2,7 +2,7 @@
<html lang='en'>
<head>
<meta charset='utf-8' />
<title>AdventOfCode2022.App.Benchmark21To25-20221221-110833</title>
<title>AdventOfCode2022.App.Benchmark21To25-20221223-105901</title>
<style type="text/css">
table { border-collapse: collapse; display: block; width: 100%; overflow: auto; }
@@ -13,7 +13,7 @@
</head>
<body>
<pre><code>
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -22,10 +22,14 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
<pre><code></code></pre>
<table>
<thead><tr><th>Method</th><th>Day</th><th>IsPartOne</th><th>Mean</th><th>Error</th><th>StdDev</th>
<thead><tr><th>Method</th><th>Day</th><th>IsPartOne</th><th> Mean</th><th>Error</th><th>StdDev</th>
</tr>
</thead><tbody><tr><td>Benchmark</td><td>21</td><td>False</td><td>654.8 &mu;s</td><td>12.87 &mu;s</td><td>13.22 &mu;s</td>
</tr><tr><td>Benchmark</td><td>21</td><td>True</td><td>577.8 &mu;s</td><td>6.50 &mu;s</td><td>6.08 &mu;s</td>
</thead><tbody><tr><td>Benchmark</td><td>21</td><td>False</td><td>646.1 &mu;s</td><td>3.88 &mu;s</td><td>3.63 &mu;s</td>
</tr><tr><td>Benchmark</td><td>21</td><td>True</td><td>576.8 &mu;s</td><td>4.40 &mu;s</td><td>4.12 &mu;s</td>
</tr><tr><td>Benchmark</td><td>22</td><td>False</td><td>328.5 &mu;s</td><td>1.49 &mu;s</td><td>1.39 &mu;s</td>
</tr><tr><td>Benchmark</td><td>22</td><td>True</td><td>216.0 &mu;s</td><td>1.63 &mu;s</td><td>1.52 &mu;s</td>
</tr><tr><td>Benchmark</td><td>23</td><td>False</td><td>357,191.8 &mu;s</td><td>1,404.56 &mu;s</td><td>1,313.82 &mu;s</td>
</tr><tr><td>Benchmark</td><td>23</td><td>True</td><td>3,190.7 &mu;s</td><td>7.80 &mu;s</td><td>6.91 &mu;s</td>
</tr></tbody></table>
</body>
</html>

View File

@@ -1,6 +1,6 @@
``` ini
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -8,15 +8,15 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
```
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |-----------:|----------:|----------:|
| **Benchmark** | **6** | **False** | **162.713 μs** | **0.9106 μs** | **0.7110 μs** |
| **Benchmark** | **6** | **True** | **83.291 μs** | **0.2351 μs** | **0.2084 μs** |
| **Benchmark** | **7** | **False** | **441.797 μs** | **0.8446 μs** | **0.6594 μs** |
| **Benchmark** | **7** | **True** | **440.557 μs** | **0.7502 μs** | **0.7017 μs** |
| **Benchmark** | **8** | **False** | **365.736 μs** | **2.9974 μs** | **2.8038 μs** |
| **Benchmark** | **8** | **True** | **748.357 μs** | **0.7033 μs** | **0.5873 μs** |
| **Benchmark** | **9** | **False** | **923.710 μs** | **1.6158 μs** | **1.5114 μs** |
| **Benchmark** | **9** | **True** | **513.015 μs** | **1.3454 μs** | **1.2585 μs** |
| **Benchmark** | **10** | **False** | **8.294 μs** | **0.0213 μs** | **0.0189 μs** |
| **Benchmark** | **10** | **True** | **7.552 μs** | **0.0127 μs** | **0.0106 μs** |
| Method | Day | IsPartOne | Mean | Error | StdDev |
|---------- |---- |---------- |-----------:|-----------:|----------:|
| **Benchmark** | **6** | **False** | **52.298 μs** | **1.0260 μs** | **1.8762 μs** |
| **Benchmark** | **6** | **True** | **16.584 μs** | **0.1464 μs** | **0.1369 μs** |
| **Benchmark** | **7** | **False** | **444.348 μs** | **2.6326 μs** | **2.4625 μs** |
| **Benchmark** | **7** | **True** | **446.293 μs** | **1.9890 μs** | **1.8605 μs** |
| **Benchmark** | **8** | **False** | **280.641 μs** | **1.2356 μs** | **1.1558 μs** |
| **Benchmark** | **8** | **True** | **551.138 μs** | **5.4089 μs** | **4.5166 μs** |
| **Benchmark** | **9** | **False** | **886.578 μs** | **10.4698 μs** | **9.7934 μs** |
| **Benchmark** | **9** | **True** | **450.062 μs** | **5.8633 μs** | **5.4845 μs** |
| **Benchmark** | **10** | **False** | **8.373 μs** | **0.0165 μs** | **0.0128 μs** |
| **Benchmark** | **10** | **True** | **7.495 μs** | **0.0311 μs** | **0.0259 μs** |

View File

@@ -1,11 +1,11 @@
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Day,IsPartOne,Mean,Error,StdDev
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,6,False,162.713 μs,0.9106 μs,0.7110 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,6,True,83.291 μs,0.2351 μs,0.2084 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,7,False,441.797 μs,0.8446 μs,0.6594 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,7,True,440.557 μs,0.7502 μs,0.7017 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,8,False,365.736 μs,2.9974 μs,2.8038 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,8,True,748.357 μs,0.7033 μs,0.5873 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,9,False,923.710 μs,1.6158 μs,1.5114 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,9,True,513.015 μs,1.3454 μs,1.2585 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,10,False,8.294 μs,0.0213 μs,0.0189 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,10,True,7.552 μs,0.0127 μs,0.0106 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,6,False,52.298 μs,1.0260 μs,1.8762 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,6,True,16.584 μs,0.1464 μs,0.1369 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,7,False,444.348 μs,2.6326 μs,2.4625 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,7,True,446.293 μs,1.9890 μs,1.8605 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,8,False,280.641 μs,1.2356 μs,1.1558 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,8,True,551.138 μs,5.4089 μs,4.5166 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,9,False,886.578 μs,10.4698 μs,9.7934 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,9,True,450.062 μs,5.8633 μs,5.4845 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,10,False,8.373 μs,0.0165 μs,0.0128 μs
Benchmark,DefaultJob,False,Default,Default,Default,Default,Default,Default,0000000000,Empty,RyuJit,Arm64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 7.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,10,True,7.495 μs,0.0311 μs,0.0259 μs
1 Method Job AnalyzeLaunchVariance EvaluateOverhead MaxAbsoluteError MaxRelativeError MinInvokeCount MinIterationTime OutlierMode Affinity EnvironmentVariables Jit Platform PowerPlanMode Runtime AllowVeryLargeObjects Concurrent CpuGroups Force HeapAffinitizeMask HeapCount NoAffinitize RetainVm Server Arguments BuildConfiguration Clock EngineFactory NuGetReferences Toolchain IsMutator InvocationCount IterationCount IterationTime LaunchCount MaxIterationCount MaxWarmupIterationCount MemoryRandomization MinIterationCount MinWarmupIterationCount RunStrategy UnrollFactor WarmupCount Day IsPartOne Mean Error StdDev
2 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 6 False 162.713 μs 52.298 μs 0.9106 μs 1.0260 μs 0.7110 μs 1.8762 μs
3 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 6 True 83.291 μs 16.584 μs 0.2351 μs 0.1464 μs 0.2084 μs 0.1369 μs
4 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 7 False 441.797 μs 444.348 μs 0.8446 μs 2.6326 μs 0.6594 μs 2.4625 μs
5 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 7 True 440.557 μs 446.293 μs 0.7502 μs 1.9890 μs 0.7017 μs 1.8605 μs
6 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 8 False 365.736 μs 280.641 μs 2.9974 μs 1.2356 μs 2.8038 μs 1.1558 μs
7 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 8 True 748.357 μs 551.138 μs 0.7033 μs 5.4089 μs 0.5873 μs 4.5166 μs
8 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 9 False 923.710 μs 886.578 μs 1.6158 μs 10.4698 μs 1.5114 μs 9.7934 μs
9 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 9 True 513.015 μs 450.062 μs 1.3454 μs 5.8633 μs 1.2585 μs 5.4845 μs
10 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 10 False 8.294 μs 8.373 μs 0.0213 μs 0.0165 μs 0.0189 μs 0.0128 μs
11 Benchmark DefaultJob False Default Default Default Default Default Default 0000000000 Empty RyuJit Arm64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 7.0 False True False True Default Default False False False Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default Default 16 Default 10 True 7.552 μs 7.495 μs 0.0127 μs 0.0311 μs 0.0106 μs 0.0259 μs

View File

@@ -2,7 +2,7 @@
<html lang='en'>
<head>
<meta charset='utf-8' />
<title>AdventOfCode2022.App.Benchmark6To10-20221220-122830</title>
<title>AdventOfCode2022.App.Benchmark6To10-20221223-104743</title>
<style type="text/css">
table { border-collapse: collapse; display: block; width: 100%; overflow: auto; }
@@ -13,7 +13,7 @@
</head>
<body>
<pre><code>
BenchmarkDotNet=v0.13.2, OS=macOS 13.0.1 (22A400) [Darwin 22.1.0]
BenchmarkDotNet=v0.13.2, OS=macOS 13.1 (22C65) [Darwin 22.2.0]
Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
.NET SDK=7.0.100
[Host] : .NET 7.0.0 (7.0.22.51805), Arm64 RyuJIT AdvSIMD DEBUG
@@ -24,16 +24,16 @@ Apple M1 Max, 1 CPU, 10 logical and 10 physical cores
<table>
<thead><tr><th>Method</th><th>Day</th><th>IsPartOne</th><th>Mean</th><th>Error</th><th>StdDev</th>
</tr>
</thead><tbody><tr><td>Benchmark</td><td>6</td><td>False</td><td>162.713 &mu;s</td><td>0.9106 &mu;s</td><td>0.7110 &mu;s</td>
</tr><tr><td>Benchmark</td><td>6</td><td>True</td><td>83.291 &mu;s</td><td>0.2351 &mu;s</td><td>0.2084 &mu;s</td>
</tr><tr><td>Benchmark</td><td>7</td><td>False</td><td>441.797 &mu;s</td><td>0.8446 &mu;s</td><td>0.6594 &mu;s</td>
</tr><tr><td>Benchmark</td><td>7</td><td>True</td><td>440.557 &mu;s</td><td>0.7502 &mu;s</td><td>0.7017 &mu;s</td>
</tr><tr><td>Benchmark</td><td>8</td><td>False</td><td>365.736 &mu;s</td><td>2.9974 &mu;s</td><td>2.8038 &mu;s</td>
</tr><tr><td>Benchmark</td><td>8</td><td>True</td><td>748.357 &mu;s</td><td>0.7033 &mu;s</td><td>0.5873 &mu;s</td>
</tr><tr><td>Benchmark</td><td>9</td><td>False</td><td>923.710 &mu;s</td><td>1.6158 &mu;s</td><td>1.5114 &mu;s</td>
</tr><tr><td>Benchmark</td><td>9</td><td>True</td><td>513.015 &mu;s</td><td>1.3454 &mu;s</td><td>1.2585 &mu;s</td>
</tr><tr><td>Benchmark</td><td>10</td><td>False</td><td>8.294 &mu;s</td><td>0.0213 &mu;s</td><td>0.0189 &mu;s</td>
</tr><tr><td>Benchmark</td><td>10</td><td>True</td><td>7.552 &mu;s</td><td>0.0127 &mu;s</td><td>0.0106 &mu;s</td>
</thead><tbody><tr><td>Benchmark</td><td>6</td><td>False</td><td>52.298 &mu;s</td><td>1.0260 &mu;s</td><td>1.8762 &mu;s</td>
</tr><tr><td>Benchmark</td><td>6</td><td>True</td><td>16.584 &mu;s</td><td>0.1464 &mu;s</td><td>0.1369 &mu;s</td>
</tr><tr><td>Benchmark</td><td>7</td><td>False</td><td>444.348 &mu;s</td><td>2.6326 &mu;s</td><td>2.4625 &mu;s</td>
</tr><tr><td>Benchmark</td><td>7</td><td>True</td><td>446.293 &mu;s</td><td>1.9890 &mu;s</td><td>1.8605 &mu;s</td>
</tr><tr><td>Benchmark</td><td>8</td><td>False</td><td>280.641 &mu;s</td><td>1.2356 &mu;s</td><td>1.1558 &mu;s</td>
</tr><tr><td>Benchmark</td><td>8</td><td>True</td><td>551.138 &mu;s</td><td>5.4089 &mu;s</td><td>4.5166 &mu;s</td>
</tr><tr><td>Benchmark</td><td>9</td><td>False</td><td>886.578 &mu;s</td><td>10.4698 &mu;s</td><td>9.7934 &mu;s</td>
</tr><tr><td>Benchmark</td><td>9</td><td>True</td><td>450.062 &mu;s</td><td>5.8633 &mu;s</td><td>5.4845 &mu;s</td>
</tr><tr><td>Benchmark</td><td>10</td><td>False</td><td>8.373 &mu;s</td><td>0.0165 &mu;s</td><td>0.0128 &mu;s</td>
</tr><tr><td>Benchmark</td><td>10</td><td>True</td><td>7.495 &mu;s</td><td>0.0311 &mu;s</td><td>0.0259 &mu;s</td>
</tr></tbody></table>
</body>
</html>