change benchmarks to run both full framework and core
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -87,4 +87,4 @@ PrecompiledWeb
|
||||
|
||||
project.lock.json
|
||||
|
||||
BenchmarkDotNet.Artifacts
|
||||
BenchmarkDotNet.Artifacts*
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="spring">
|
||||
<section name="context" type="Spring.Context.Support.ContextHandler, Spring.Core" />
|
||||
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
|
||||
</sectionGroup>
|
||||
<sectionGroup name="common">
|
||||
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<spring>
|
||||
<context>
|
||||
<resource uri="config://spring/objects" />
|
||||
</context>
|
||||
<objects xmlns="http://www.springframework.net">
|
||||
<object name="Spring.Benchmark.Classes.ISingleton1" type="Spring.Benchmark.Classes.Singleton1, Spring.Benchmark" singleton="true" />
|
||||
<object name="Spring.Benchmark.Classes.ISingleton2" type="Spring.Benchmark.Classes.Singleton2, Spring.Benchmark" singleton="true" />
|
||||
<object name="Spring.Benchmark.Classes.ISingleton3" type="Spring.Benchmark.Classes.Singleton3, Spring.Benchmark" singleton="true" />
|
||||
<object name="Spring.Benchmark.Classes.ITransient1" type="Spring.Benchmark.Classes.Transient1, Spring.Benchmark" singleton="false" />
|
||||
<object name="Spring.Benchmark.Classes.ITransient2" type="Spring.Benchmark.Classes.Transient2, Spring.Benchmark" singleton="false" />
|
||||
<object name="Spring.Benchmark.Classes.ITransient3" type="Spring.Benchmark.Classes.Transient3, Spring.Benchmark" singleton="false" />
|
||||
</objects>
|
||||
</spring>
|
||||
</configuration>
|
||||
@@ -25,11 +25,11 @@ using Spring.Context.Support;
|
||||
|
||||
namespace Spring.Benchmark
|
||||
{
|
||||
[MediumRunJob]
|
||||
[ClrJob, CoreJob]
|
||||
[MemoryDiagnoser]
|
||||
public class ContainerBenchmark
|
||||
{
|
||||
private IApplicationContext container;
|
||||
private XmlApplicationContext container;
|
||||
|
||||
[Params(5_000)]
|
||||
public int Iterations { get; set; }
|
||||
@@ -37,7 +37,8 @@ namespace Spring.Benchmark
|
||||
[GlobalSetup]
|
||||
public void GlobalSetup()
|
||||
{
|
||||
container = ContextRegistry.GetContext();
|
||||
container = new XmlApplicationContext("ContainerBenchmark.xml");
|
||||
container.Refresh();
|
||||
}
|
||||
|
||||
[Benchmark]
|
||||
|
||||
14
test/Spring/Spring.Benchmark/ContainerBenchmark.xml
Normal file
14
test/Spring/Spring.Benchmark/ContainerBenchmark.xml
Normal file
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<objects xmlns="http://www.springframework.net"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd">
|
||||
|
||||
<object name="Spring.Benchmark.Classes.ISingleton1" type="Spring.Benchmark.Classes.Singleton1, Spring.Benchmark" singleton="true" />
|
||||
<object name="Spring.Benchmark.Classes.ISingleton2" type="Spring.Benchmark.Classes.Singleton2, Spring.Benchmark" singleton="true" />
|
||||
<object name="Spring.Benchmark.Classes.ISingleton3" type="Spring.Benchmark.Classes.Singleton3, Spring.Benchmark" singleton="true" />
|
||||
<object name="Spring.Benchmark.Classes.ITransient1" type="Spring.Benchmark.Classes.Transient1, Spring.Benchmark" singleton="false" />
|
||||
<object name="Spring.Benchmark.Classes.ITransient2" type="Spring.Benchmark.Classes.Transient2, Spring.Benchmark" singleton="false" />
|
||||
<object name="Spring.Benchmark.Classes.ITransient3" type="Spring.Benchmark.Classes.Transient3, Spring.Benchmark" singleton="false" />
|
||||
|
||||
</objects>
|
||||
@@ -23,7 +23,7 @@ using Spring.Objects.Factory.Support;
|
||||
|
||||
namespace Spring.Benchmark
|
||||
{
|
||||
[MediumRunJob]
|
||||
[ClrJob, CoreJob]
|
||||
[MemoryDiagnoser]
|
||||
public class HybridSetBenchmark
|
||||
{
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<TargetFrameworks>net471;netcoreapp2.1</TargetFrameworks>
|
||||
<RootNamespace>Spring.Benchmark</RootNamespace>
|
||||
</PropertyGroup>
|
||||
|
||||
@@ -14,4 +14,10 @@
|
||||
<ProjectReference Include="..\..\..\src\Spring\Spring.Core\Spring.Core.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="ContainerBenchmark.xml">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
||||
Reference in New Issue
Block a user