Skip to content

Commit

Permalink
more benchmarks
Browse files Browse the repository at this point in the history
  • Loading branch information
mregen committed Oct 1, 2024
1 parent 022d042 commit 25d77ca
Show file tree
Hide file tree
Showing 4 changed files with 346 additions and 35 deletions.
60 changes: 46 additions & 14 deletions Tests/Common/Main.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,34 +28,66 @@
* ======================================================================*/

using System;
using System.Linq;
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Configs;
using BenchmarkDotNet.Jobs;
using BenchmarkDotNet.Loggers;
using BenchmarkDotNet.Running;
using BenchmarkDotNet.Validators;
using Opc.Ua;

[assembly: Config(typeof(BenchmarksDefaultConfig))]

class BenchmarksDefaultConfig : ManualConfig
{
public BenchmarksDefaultConfig()
{
AddJob(Job.Dry);
AddLogger(BenchmarkDotNet.Loggers.ConsoleLogger.Default);
AddValidator(JitOptimizationsValidator.DontFailOnError);
if (Program.CmdLineUsed)
{
var defaults = DefaultConfig.Instance;
foreach (var exporter in defaults.GetExporters())
{
AddExporter(exporter);
}
foreach (var logger in defaults.GetLoggers())
{
AddLogger(logger);
}
foreach (var analyser in defaults.GetAnalysers())
{
AddAnalyser(analyser);
}
foreach (var validator in defaults.GetValidators())
{
AddValidator(validator);
}
WithOptions(ConfigOptions.DisableOptimizationsValidator);
}
else
{
AddJob(Job.Dry);
AddLogger(ConsoleLogger.Default);
AddValidator(JitOptimizationsValidator.DontFailOnError);
}
}
}

static class Program
{
// Main Method
public static void Main(String[] args)
static class Program
{
IConfig config = ManualConfig.Create(DefaultConfig.Instance)
// need this option because of reference to nunit.framework
.WithOptions(ConfigOptions.DisableOptimizationsValidator)
;
BenchmarkSwitcher.FromAssembly(typeof(Program).Assembly).Run(args, config);
/// <summary>
/// Whether command line was used to start.
/// </summary>
public static bool CmdLineUsed = false;

// Main Method
public static void Main(string[] args)
{
IConfig config = ManualConfig.Create(DefaultConfig.Instance)
// need this option because of reference to nunit.framework
.WithOptions(ConfigOptions.DisableOptimizationsValidator)
;
CmdLineUsed = true;
BenchmarkSwitcher.FromAssembly(typeof(Program).Assembly).Run(args);
}
}
}

2 changes: 1 addition & 1 deletion Tests/Opc.Ua.Core.Tests/Opc.Ua.Core.Tests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
<Choose>
<When Condition="'$(TargetFramework)' == 'net462'">
</When>
<When Condition="'$(TargetFramework)' == 'netstandard2.0'">
<When Condition="'$(TargetFramework)' == 'netcoreapp2.1'">
</When>
<Otherwise>
<PropertyGroup Condition="'$(DisableECCTests)' != 'true'">
Expand Down
Loading

0 comments on commit 25d77ca

Please sign in to comment.