From bddc977cd8c34d8bf8ebc4a3953d259da6435256 Mon Sep 17 00:00:00 2001 From: Asriel Camora Date: Fri, 10 Nov 2023 18:58:34 -0800 Subject: [PATCH] Benchmark .NET 8.0, as well --- .github/workflows/build.yml | 4 +++- Benchmark/Bench.cs | 4 +++- Simulator/SimulationState.cs | 9 +++++++++ Solver/SolverConfig.cs | 4 +--- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7a8dc56..e85119a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -90,7 +90,9 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v3 with: - dotnet-version: '7.0' + dotnet-version: | + 7.0 + 8.0 - name: Download Dalamud run: | diff --git a/Benchmark/Bench.cs b/Benchmark/Bench.cs index 2518195..d094474 100644 --- a/Benchmark/Bench.cs +++ b/Benchmark/Bench.cs @@ -1,11 +1,13 @@ using BenchmarkDotNet.Attributes; using BenchmarkDotNet.Diagnostics.dotTrace; +using BenchmarkDotNet.Jobs; using Craftimizer.Simulator; using Craftimizer.Solver; namespace Craftimizer.Benchmark; -[SimpleJob(iterationCount: 10)] +[SimpleJob(RuntimeMoniker.Net70, baseline: true)] +[SimpleJob(RuntimeMoniker.Net80)] [MinColumn, Q1Column, Q3Column, MaxColumn] [DotTraceDiagnoser] public class Bench diff --git a/Simulator/SimulationState.cs b/Simulator/SimulationState.cs index e743ade..74cac04 100644 --- a/Simulator/SimulationState.cs +++ b/Simulator/SimulationState.cs @@ -44,4 +44,13 @@ public record struct SimulationState ActionCount = 0; ActionStates = new(); } + +#if IS_DETERMINISTIC + public override readonly string ToString() + { + var b = new System.Text.StringBuilder(); + PrintMembers(b); + return Convert.ToHexString(System.Security.Cryptography.SHA256.HashData(System.Text.Encoding.UTF8.GetBytes(b.ToString()))); + } +#endif } diff --git a/Solver/SolverConfig.cs b/Solver/SolverConfig.cs index d261949..65274a9 100644 --- a/Solver/SolverConfig.cs +++ b/Solver/SolverConfig.cs @@ -1,5 +1,3 @@ -using Craftimizer.Simulator.Actions; -using Craftimizer.Simulator; using System.Runtime.InteropServices; namespace Craftimizer.Solver; @@ -71,4 +69,4 @@ public readonly record struct SolverConfig FurcatedActionCount = Environment.ProcessorCount / 2, Algorithm = SolverAlgorithm.StepwiseForked }; -} \ No newline at end of file +}