daily update on 20240203 by nitloadd youmu. New glhandle setup.

This commit is contained in:
Nitload
2024-02-03 23:20:50 +08:00
parent 8148c10acd
commit 5d778e0f2f
258 changed files with 10025 additions and 1220 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+24
View File
@@ -0,0 +1,24 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<Configurations>Debug;Release;Benchmark</Configurations>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<Optimize>True</Optimize>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Benchmark|AnyCPU'">
<Optimize>True</Optimize>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="BenchmarkDotNet" Version="0.13.12" />
</ItemGroup>
</Project>
+85
View File
@@ -0,0 +1,85 @@
using BenchmarkDotNet.Running;
using BenchmarkDotNet.Attributes;
using System.Runtime.InteropServices;
using System.Reflection;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
namespace BenchMark
{
internal class Program
{
static unsafe void Main(string[] args)
{
int* p = (int*)Marshal.AllocHGlobal(sizeof(int) * 10);
for (int i = 0; i < 10; i++)
{
*(p + i) = i;
}
int[] array = (int[])GCHandle.FromIntPtr((IntPtr)p).Target;
Console.WriteLine(array);
//BenchmarkRunner.Run(typeof(MyClass).Assembly);
}
}
public class MyClass
{
[Benchmark]
public bool isM128Pinnable()
{
var type = typeof(M128);
foreach (var field in type.GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic))
{
// 如果字段是引用类型,返回 false
if (!field.FieldType.IsValueType)
{
return false;
}
}
// 如果没有引用类型的字段,返回 true
return true;
}
[Benchmark]
public bool isVector4Pinnable()
{
var type = typeof(int);
foreach (var field in type.GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic))
{
// 如果字段是引用类型,返回 false
if (!field.FieldType.IsValueType)
{
return false;
}
}
// 如果没有引用类型的字段,返回 true
return true;
}
}
[StructLayout(LayoutKind.Explicit)]
public unsafe struct M128
{
[FieldOffset(0)] internal fixed float Single[4];
[FieldOffset(0)] internal fixed double Double[2];
[FieldOffset(0)] internal fixed sbyte Int8[16];
[FieldOffset(0)] internal fixed short Int16[8];
[FieldOffset(0)] internal fixed int Int32[4];
[FieldOffset(0)] internal fixed long Int64[2];
[FieldOffset(0)] internal fixed byte UInt8[16];
[FieldOffset(0)] internal fixed ushort UInt16[8];
[FieldOffset(0)] internal fixed uint UInt32[4];
[FieldOffset(0)] internal fixed ulong UInt64[2];
}
}
@@ -0,0 +1,694 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"BenchMark/1.0.0": {
"dependencies": {
"BenchmarkDotNet": "0.13.12"
},
"runtime": {
"BenchMark.dll": {}
}
},
"BenchmarkDotNet/0.13.12": {
"dependencies": {
"BenchmarkDotNet.Annotations": "0.13.12",
"CommandLineParser": "2.9.1",
"Gee.External.Capstone": "2.3.0",
"Iced": "1.17.0",
"Microsoft.CodeAnalysis.CSharp": "4.1.0",
"Microsoft.Diagnostics.Runtime": "2.2.332302",
"Microsoft.Diagnostics.Tracing.TraceEvent": "3.0.2",
"Microsoft.DotNet.PlatformAbstractions": "3.1.6",
"Perfolizer": "0.2.1",
"System.Management": "5.0.0"
},
"runtime": {
"lib/net6.0/BenchmarkDotNet.dll": {
"assemblyVersion": "0.13.12.0",
"fileVersion": "0.13.12.0"
}
}
},
"BenchmarkDotNet.Annotations/0.13.12": {
"runtime": {
"lib/netstandard2.0/BenchmarkDotNet.Annotations.dll": {
"assemblyVersion": "0.13.12.0",
"fileVersion": "0.13.12.0"
}
}
},
"CommandLineParser/2.9.1": {
"runtime": {
"lib/netstandard2.0/CommandLine.dll": {
"assemblyVersion": "2.9.1.0",
"fileVersion": "2.9.1.0"
}
}
},
"Gee.External.Capstone/2.3.0": {
"runtime": {
"lib/net6.0/Gee.External.Capstone.dll": {
"assemblyVersion": "2.3.0.0",
"fileVersion": "2.3.0.0"
}
},
"runtimeTargets": {
"runtimes/linux-arm/native/libcapstone.so": {
"rid": "linux-arm",
"assetType": "native",
"fileVersion": "0.0.0.0"
},
"runtimes/linux-arm64/native/libcapstone.so": {
"rid": "linux-arm64",
"assetType": "native",
"fileVersion": "0.0.0.0"
},
"runtimes/linux-x64/native/libcapstone.so": {
"rid": "linux-x64",
"assetType": "native",
"fileVersion": "0.0.0.0"
},
"runtimes/linux-x86/native/libcapstone.so": {
"rid": "linux-x86",
"assetType": "native",
"fileVersion": "0.0.0.0"
},
"runtimes/osx-arm64/native/libcapstone.dylib": {
"rid": "osx-arm64",
"assetType": "native",
"fileVersion": "0.0.0.0"
},
"runtimes/osx-x64/native/libcapstone.dylib": {
"rid": "osx-x64",
"assetType": "native",
"fileVersion": "0.0.0.0"
},
"runtimes/win-arm64/native/capstone.dll": {
"rid": "win-arm64",
"assetType": "native",
"fileVersion": "0.0.0.0"
},
"runtimes/win-x64/native/capstone.dll": {
"rid": "win-x64",
"assetType": "native",
"fileVersion": "0.0.0.0"
},
"runtimes/win-x86/native/capstone.dll": {
"rid": "win-x86",
"assetType": "native",
"fileVersion": "0.0.0.0"
}
}
},
"Iced/1.17.0": {
"runtime": {
"lib/netstandard2.1/Iced.dll": {
"assemblyVersion": "1.17.0.0",
"fileVersion": "1.17.0.0"
}
}
},
"Microsoft.Bcl.AsyncInterfaces/1.1.0": {
"runtime": {
"lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": {
"assemblyVersion": "1.0.0.0",
"fileVersion": "4.700.19.56404"
}
}
},
"Microsoft.CodeAnalysis.Analyzers/3.3.3": {},
"Microsoft.CodeAnalysis.Common/4.1.0": {
"dependencies": {
"Microsoft.CodeAnalysis.Analyzers": "3.3.3",
"System.Collections.Immutable": "5.0.0",
"System.Memory": "4.5.4",
"System.Reflection.Metadata": "5.0.0",
"System.Runtime.CompilerServices.Unsafe": "5.0.0",
"System.Text.Encoding.CodePages": "4.5.1",
"System.Threading.Tasks.Extensions": "4.5.4"
},
"runtime": {
"lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": {
"assemblyVersion": "4.1.0.0",
"fileVersion": "4.100.22.11411"
}
},
"resources": {
"lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": {
"locale": "cs"
},
"lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": {
"locale": "de"
},
"lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": {
"locale": "es"
},
"lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": {
"locale": "fr"
},
"lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": {
"locale": "it"
},
"lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": {
"locale": "ja"
},
"lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": {
"locale": "ko"
},
"lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": {
"locale": "pl"
},
"lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": {
"locale": "pt-BR"
},
"lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": {
"locale": "ru"
},
"lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": {
"locale": "tr"
},
"lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": {
"locale": "zh-Hans"
},
"lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": {
"locale": "zh-Hant"
}
}
},
"Microsoft.CodeAnalysis.CSharp/4.1.0": {
"dependencies": {
"Microsoft.CodeAnalysis.Common": "4.1.0"
},
"runtime": {
"lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": {
"assemblyVersion": "4.1.0.0",
"fileVersion": "4.100.22.11411"
}
},
"resources": {
"lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "cs"
},
"lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "de"
},
"lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "es"
},
"lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "fr"
},
"lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "it"
},
"lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "ja"
},
"lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "ko"
},
"lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "pl"
},
"lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "pt-BR"
},
"lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "ru"
},
"lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "tr"
},
"lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "zh-Hans"
},
"lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": {
"locale": "zh-Hant"
}
}
},
"Microsoft.Diagnostics.NETCore.Client/0.2.251802": {
"dependencies": {
"Microsoft.Bcl.AsyncInterfaces": "1.1.0",
"Microsoft.Extensions.Logging": "2.1.1"
},
"runtime": {
"lib/netcoreapp3.1/Microsoft.Diagnostics.NETCore.Client.dll": {
"assemblyVersion": "0.2.5.1802",
"fileVersion": "0.2.5.1802"
}
}
},
"Microsoft.Diagnostics.Runtime/2.2.332302": {
"dependencies": {
"Microsoft.Diagnostics.NETCore.Client": "0.2.251802",
"System.Collections.Immutable": "5.0.0",
"System.Runtime.CompilerServices.Unsafe": "5.0.0"
},
"runtime": {
"lib/net6.0/Microsoft.Diagnostics.Runtime.dll": {
"assemblyVersion": "2.2.6.32302",
"fileVersion": "2.2.6.32302"
}
}
},
"Microsoft.Diagnostics.Tracing.TraceEvent/3.0.2": {
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "5.0.0"
},
"runtime": {
"lib/netstandard2.0/Dia2Lib.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.0.0.0"
},
"lib/netstandard2.0/Microsoft.Diagnostics.FastSerialization.dll": {
"assemblyVersion": "3.0.2.0",
"fileVersion": "3.0.2.0"
},
"lib/netstandard2.0/Microsoft.Diagnostics.Tracing.TraceEvent.dll": {
"assemblyVersion": "3.0.2.0",
"fileVersion": "3.0.2.0"
},
"lib/netstandard2.0/OSExtensions.dll": {
"assemblyVersion": "1.0.0.0",
"fileVersion": "1.0.0.0"
},
"lib/netstandard2.0/TraceReloggerLib.dll": {
"assemblyVersion": "0.0.0.0",
"fileVersion": "0.0.0.0"
}
}
},
"Microsoft.DotNet.PlatformAbstractions/3.1.6": {
"runtime": {
"lib/netstandard2.0/Microsoft.DotNet.PlatformAbstractions.dll": {
"assemblyVersion": "3.1.6.0",
"fileVersion": "3.100.620.31604"
}
}
},
"Microsoft.Extensions.Configuration/2.1.1": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "2.1.1"
},
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Configuration.dll": {
"assemblyVersion": "2.1.1.0",
"fileVersion": "2.1.1.18157"
}
}
},
"Microsoft.Extensions.Configuration.Abstractions/2.1.1": {
"dependencies": {
"Microsoft.Extensions.Primitives": "2.1.1"
},
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
"assemblyVersion": "2.1.1.0",
"fileVersion": "2.1.1.18157"
}
}
},
"Microsoft.Extensions.Configuration.Binder/2.1.1": {
"dependencies": {
"Microsoft.Extensions.Configuration": "2.1.1"
},
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Configuration.Binder.dll": {
"assemblyVersion": "2.1.1.0",
"fileVersion": "2.1.1.18157"
}
}
},
"Microsoft.Extensions.DependencyInjection.Abstractions/2.1.1": {
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
"assemblyVersion": "2.1.1.0",
"fileVersion": "2.1.1.18157"
}
}
},
"Microsoft.Extensions.Logging/2.1.1": {
"dependencies": {
"Microsoft.Extensions.Configuration.Binder": "2.1.1",
"Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1",
"Microsoft.Extensions.Logging.Abstractions": "2.1.1",
"Microsoft.Extensions.Options": "2.1.1"
},
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Logging.dll": {
"assemblyVersion": "2.1.1.0",
"fileVersion": "2.1.1.18157"
}
}
},
"Microsoft.Extensions.Logging.Abstractions/2.1.1": {
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll": {
"assemblyVersion": "2.1.1.0",
"fileVersion": "2.1.1.18157"
}
}
},
"Microsoft.Extensions.Options/2.1.1": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1",
"Microsoft.Extensions.Primitives": "2.1.1"
},
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Options.dll": {
"assemblyVersion": "2.1.1.0",
"fileVersion": "2.1.1.18157"
}
}
},
"Microsoft.Extensions.Primitives/2.1.1": {
"dependencies": {
"System.Memory": "4.5.4",
"System.Runtime.CompilerServices.Unsafe": "5.0.0"
},
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Primitives.dll": {
"assemblyVersion": "2.1.1.0",
"fileVersion": "2.1.1.18157"
}
}
},
"Microsoft.NETCore.Platforms/5.0.0": {},
"Microsoft.Win32.Registry/5.0.0": {
"dependencies": {
"System.Security.AccessControl": "5.0.0",
"System.Security.Principal.Windows": "5.0.0"
}
},
"Perfolizer/0.2.1": {
"dependencies": {
"System.Memory": "4.5.4"
},
"runtime": {
"lib/netstandard2.0/Perfolizer.dll": {
"assemblyVersion": "0.2.1.0",
"fileVersion": "0.2.1.0"
}
}
},
"System.CodeDom/5.0.0": {
"runtime": {
"lib/netstandard2.0/System.CodeDom.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"System.Collections.Immutable/5.0.0": {},
"System.Management/5.0.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "5.0.0",
"Microsoft.Win32.Registry": "5.0.0",
"System.CodeDom": "5.0.0"
},
"runtime": {
"lib/netstandard2.0/System.Management.dll": {
"assemblyVersion": "4.0.0.0",
"fileVersion": "5.0.20.51904"
}
},
"runtimeTargets": {
"runtimes/win/lib/netcoreapp2.0/System.Management.dll": {
"rid": "win",
"assetType": "runtime",
"assemblyVersion": "4.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"System.Memory/4.5.4": {},
"System.Reflection.Metadata/5.0.0": {},
"System.Runtime.CompilerServices.Unsafe/5.0.0": {},
"System.Security.AccessControl/5.0.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "5.0.0",
"System.Security.Principal.Windows": "5.0.0"
}
},
"System.Security.Principal.Windows/5.0.0": {},
"System.Text.Encoding.CodePages/4.5.1": {
"dependencies": {
"Microsoft.NETCore.Platforms": "5.0.0",
"System.Runtime.CompilerServices.Unsafe": "5.0.0"
}
},
"System.Threading.Tasks.Extensions/4.5.4": {}
}
},
"libraries": {
"BenchMark/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"BenchmarkDotNet/0.13.12": {
"type": "package",
"serviceable": true,
"sha512": "sha512-aKnzpUZJJfLBHG7zcfQZhCexZQKcJgElC8qcFUTXPMYFlVauJBobuOmtRnmrapqC2j7EjjZCsPxa3yLvFLx5/Q==",
"path": "benchmarkdotnet/0.13.12",
"hashPath": "benchmarkdotnet.0.13.12.nupkg.sha512"
},
"BenchmarkDotNet.Annotations/0.13.12": {
"type": "package",
"serviceable": true,
"sha512": "sha512-4zmFOOJqW1GrEP/t5XKgh97LH9r6zixGy2IA0JAaoTNNnZ8kPBt9u/XagsGNyV0e7rglOpFcWc6wI5EjefKpKA==",
"path": "benchmarkdotnet.annotations/0.13.12",
"hashPath": "benchmarkdotnet.annotations.0.13.12.nupkg.sha512"
},
"CommandLineParser/2.9.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-OE0sl1/sQ37bjVsPKKtwQlWDgqaxWgtme3xZz7JssWUzg5JpMIyHgCTY9MVMxOg48fJ1AgGT3tgdH5m/kQ5xhA==",
"path": "commandlineparser/2.9.1",
"hashPath": "commandlineparser.2.9.1.nupkg.sha512"
},
"Gee.External.Capstone/2.3.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-2ap/rYmjtzCOT8hxrnEW/QeiOt+paD8iRrIcdKX0cxVwWLFa1e+JDBNeECakmccXrSFeBQuu5AV8SNkipFMMMw==",
"path": "gee.external.capstone/2.3.0",
"hashPath": "gee.external.capstone.2.3.0.nupkg.sha512"
},
"Iced/1.17.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-8x+HCVTl/HHTGpscH3vMBhV8sknN/muZFw9s3TsI8SA6+c43cOTCi2+jE4KsU8pNLbJ++iF2ZFcpcXHXtDglnw==",
"path": "iced/1.17.0",
"hashPath": "iced.1.17.0.nupkg.sha512"
},
"Microsoft.Bcl.AsyncInterfaces/1.1.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-1Am6l4Vpn3/K32daEqZI+FFr96OlZkgwK2LcT3pZ2zWubR5zTPW3/FkO1Rat9kb7oQOa4rxgl9LJHc5tspCWfg==",
"path": "microsoft.bcl.asyncinterfaces/1.1.0",
"hashPath": "microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512"
},
"Microsoft.CodeAnalysis.Analyzers/3.3.3": {
"type": "package",
"serviceable": true,
"sha512": "sha512-j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==",
"path": "microsoft.codeanalysis.analyzers/3.3.3",
"hashPath": "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512"
},
"Microsoft.CodeAnalysis.Common/4.1.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-bNzTyxP3iD5FPFHfVDl15Y6/wSoI7e3MeV0lOaj9igbIKTjgrmuw6LoVJ06jUNFA7+KaDC/OIsStWl/FQJz6sQ==",
"path": "microsoft.codeanalysis.common/4.1.0",
"hashPath": "microsoft.codeanalysis.common.4.1.0.nupkg.sha512"
},
"Microsoft.CodeAnalysis.CSharp/4.1.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-sbu6kDGzo9bfQxuqWpeEE7I9P30bSuZEnpDz9/qz20OU6pm79Z63+/BsAzO2e/R/Q97kBrpj647wokZnEVr97w==",
"path": "microsoft.codeanalysis.csharp/4.1.0",
"hashPath": "microsoft.codeanalysis.csharp.4.1.0.nupkg.sha512"
},
"Microsoft.Diagnostics.NETCore.Client/0.2.251802": {
"type": "package",
"serviceable": true,
"sha512": "sha512-bqnYl6AdSeboeN4v25hSukK6Odm6/54E3Y2B8rBvgqvAW0mF8fo7XNRVE2DMOG7Rk0fiuA079QIH28+V+W1Zdg==",
"path": "microsoft.diagnostics.netcore.client/0.2.251802",
"hashPath": "microsoft.diagnostics.netcore.client.0.2.251802.nupkg.sha512"
},
"Microsoft.Diagnostics.Runtime/2.2.332302": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Hp84ivxSKIMTBzYSATxmUsm3YSXHWivcwiRRbsydGmqujMUK8BAueLN0ssAVEOkOBmh0vjUBhrq7YcroT7VCug==",
"path": "microsoft.diagnostics.runtime/2.2.332302",
"hashPath": "microsoft.diagnostics.runtime.2.2.332302.nupkg.sha512"
},
"Microsoft.Diagnostics.Tracing.TraceEvent/3.0.2": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Pr7t+Z/qBe6DxCow4BmYmDycHe2MrGESaflWXRcSUI4XNGyznx1ttS+9JNOxLuBZSoBSPTKw9Dyheo01Yi6anQ==",
"path": "microsoft.diagnostics.tracing.traceevent/3.0.2",
"hashPath": "microsoft.diagnostics.tracing.traceevent.3.0.2.nupkg.sha512"
},
"Microsoft.DotNet.PlatformAbstractions/3.1.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-jek4XYaQ/PGUwDKKhwR8K47Uh1189PFzMeLqO83mXrXQVIpARZCcfuDedH50YDTepBkfijCZN5U/vZi++erxtg==",
"path": "microsoft.dotnet.platformabstractions/3.1.6",
"hashPath": "microsoft.dotnet.platformabstractions.3.1.6.nupkg.sha512"
},
"Microsoft.Extensions.Configuration/2.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-LjVKO6P2y52c5ZhTLX/w8zc5H4Y3J/LJsgqTBj49TtFq/hAtVNue/WA0F6/7GMY90xhD7K0MDZ4qpOeWXbLvzg==",
"path": "microsoft.extensions.configuration/2.1.1",
"hashPath": "microsoft.extensions.configuration.2.1.1.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.Abstractions/2.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-VfuZJNa0WUshZ/+8BFZAhwFKiKuu/qOUCFntfdLpHj7vcRnsGHqd3G2Hse78DM+pgozczGM63lGPRLmy+uhUOA==",
"path": "microsoft.extensions.configuration.abstractions/2.1.1",
"hashPath": "microsoft.extensions.configuration.abstractions.2.1.1.nupkg.sha512"
},
"Microsoft.Extensions.Configuration.Binder/2.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-fcLCTS03poWE4v9tSNBr3pWn0QwGgAn1vzqHXlXgvqZeOc7LvQNzaWcKRQZTdEc3+YhQKwMsOtm3VKSA2aWQ8w==",
"path": "microsoft.extensions.configuration.binder/2.1.1",
"hashPath": "microsoft.extensions.configuration.binder.2.1.1.nupkg.sha512"
},
"Microsoft.Extensions.DependencyInjection.Abstractions/2.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-MgYpU5cwZohUMKKg3sbPhvGG+eAZ/59E9UwPwlrUkyXU+PGzqwZg9yyQNjhxuAWmoNoFReoemeCku50prYSGzA==",
"path": "microsoft.extensions.dependencyinjection.abstractions/2.1.1",
"hashPath": "microsoft.extensions.dependencyinjection.abstractions.2.1.1.nupkg.sha512"
},
"Microsoft.Extensions.Logging/2.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-hh+mkOAQDTp6XH80xJt3+wwYVzkbwYQl9XZRCz4Um0JjP/o7N9vHM3rZ6wwwtr+BBe/L6iBO2sz0px6OWBzqZQ==",
"path": "microsoft.extensions.logging/2.1.1",
"hashPath": "microsoft.extensions.logging.2.1.1.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Abstractions/2.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-XRzK7ZF+O6FzdfWrlFTi1Rgj2080ZDsd46vzOjadHUB0Cz5kOvDG8vI7caa5YFrsHQpcfn0DxtjS4E46N4FZsA==",
"path": "microsoft.extensions.logging.abstractions/2.1.1",
"hashPath": "microsoft.extensions.logging.abstractions.2.1.1.nupkg.sha512"
},
"Microsoft.Extensions.Options/2.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-V7lXCU78lAbzaulCGFKojcCyG8RTJicEbiBkPJjFqiqXwndEBBIehdXRMWEVU3UtzQ1yDvphiWUL9th6/4gJ7w==",
"path": "microsoft.extensions.options/2.1.1",
"hashPath": "microsoft.extensions.options.2.1.1.nupkg.sha512"
},
"Microsoft.Extensions.Primitives/2.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-scJ1GZNIxMmjpENh0UZ8XCQ6vzr/LzeF9WvEA51Ix2OQGAs9WPgPu8ABVUdvpKPLuor/t05gm6menJK3PwqOXg==",
"path": "microsoft.extensions.primitives/2.1.1",
"hashPath": "microsoft.extensions.primitives.2.1.1.nupkg.sha512"
},
"Microsoft.NETCore.Platforms/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-VyPlqzH2wavqquTcYpkIIAQ6WdenuKoFN0BdYBbCWsclXacSOHNQn66Gt4z5NBqEYW0FAPm5rlvki9ZiCij5xQ==",
"path": "microsoft.netcore.platforms/5.0.0",
"hashPath": "microsoft.netcore.platforms.5.0.0.nupkg.sha512"
},
"Microsoft.Win32.Registry/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-dDoKi0PnDz31yAyETfRntsLArTlVAVzUzCIvvEDsDsucrl33Dl8pIJG06ePTJTI3tGpeyHS9Cq7Foc/s4EeKcg==",
"path": "microsoft.win32.registry/5.0.0",
"hashPath": "microsoft.win32.registry.5.0.0.nupkg.sha512"
},
"Perfolizer/0.2.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Dt4aCxCT8NPtWBKA8k+FsN/RezOQ2C6omNGm5o/qmYRiIwlQYF93UgFmeF1ezVNsztTnkg7P5P63AE+uNkLfrw==",
"path": "perfolizer/0.2.1",
"hashPath": "perfolizer.0.2.1.nupkg.sha512"
},
"System.CodeDom/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-JPJArwA1kdj8qDAkY2XGjSWoYnqiM7q/3yRNkt6n28Mnn95MuEGkZXUbPBf7qc3IjwrGY5ttQon7yqHZyQJmOQ==",
"path": "system.codedom/5.0.0",
"hashPath": "system.codedom.5.0.0.nupkg.sha512"
},
"System.Collections.Immutable/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-FXkLXiK0sVVewcso0imKQoOxjoPAj42R8HtjjbSjVPAzwDfzoyoznWxgA3c38LDbN9SJux1xXoXYAhz98j7r2g==",
"path": "system.collections.immutable/5.0.0",
"hashPath": "system.collections.immutable.5.0.0.nupkg.sha512"
},
"System.Management/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-MF1CHaRcC+MLFdnDthv4/bKWBZnlnSpkGqa87pKukQefgEdwtb9zFW6zs0GjPp73qtpYYg4q6PEKbzJbxCpKfw==",
"path": "system.management/5.0.0",
"hashPath": "system.management.5.0.0.nupkg.sha512"
},
"System.Memory/4.5.4": {
"type": "package",
"serviceable": true,
"sha512": "sha512-1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==",
"path": "system.memory/4.5.4",
"hashPath": "system.memory.4.5.4.nupkg.sha512"
},
"System.Reflection.Metadata/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-5NecZgXktdGg34rh1OenY1rFNDCI8xSjFr+Z4OU4cU06AQHUdRnIIEeWENu3Wl4YowbzkymAIMvi3WyK9U53pQ==",
"path": "system.reflection.metadata/5.0.0",
"hashPath": "system.reflection.metadata.5.0.0.nupkg.sha512"
},
"System.Runtime.CompilerServices.Unsafe/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ZD9TMpsmYJLrxbbmdvhwt9YEgG5WntEnZ/d1eH8JBX9LBp+Ju8BSBhUGbZMNVHHomWo2KVImJhTDl2hIgw/6MA==",
"path": "system.runtime.compilerservices.unsafe/5.0.0",
"hashPath": "system.runtime.compilerservices.unsafe.5.0.0.nupkg.sha512"
},
"System.Security.AccessControl/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-dagJ1mHZO3Ani8GH0PHpPEe/oYO+rVdbQjvjJkBRNQkX4t0r1iaeGn8+/ybkSLEan3/slM0t59SVdHzuHf2jmw==",
"path": "system.security.accesscontrol/5.0.0",
"hashPath": "system.security.accesscontrol.5.0.0.nupkg.sha512"
},
"System.Security.Principal.Windows/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-t0MGLukB5WAVU9bO3MGzvlGnyJPgUlcwerXn1kzBRjwLKixT96XV0Uza41W49gVd8zEMFu9vQEFlv0IOrytICA==",
"path": "system.security.principal.windows/5.0.0",
"hashPath": "system.security.principal.windows.5.0.0.nupkg.sha512"
},
"System.Text.Encoding.CodePages/4.5.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-4J2JQXbftjPMppIHJ7IC+VXQ9XfEagN92vZZNoG12i+zReYlim5dMoXFC1Zzg7tsnKDM7JPo5bYfFK4Jheq44w==",
"path": "system.text.encoding.codepages/4.5.1",
"hashPath": "system.text.encoding.codepages.4.5.1.nupkg.sha512"
},
"System.Threading.Tasks.Extensions/4.5.4": {
"type": "package",
"serviceable": true,
"sha512": "sha512-zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==",
"path": "system.threading.tasks.extensions/4.5.4",
"hashPath": "system.threading.tasks.extensions.4.5.4.nupkg.sha512"
}
}
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,12 @@
{
"runtimeOptions": {
"tfm": "net6.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
},
"configProperties": {
"System.Reflection.Metadata.MetadataUpdater.IsSupported": false
}
}
}
@@ -0,0 +1,4 @@
// Validating benchmarks:
// Benchmark MyClass.isPinnable: DefaultJob
// * Benchmarked method `isPinnable` is static. Benchmarks MUST be instance methods, static methods are not supported.
@@ -0,0 +1,173 @@
// Validating benchmarks:
// ***** BenchmarkRunner: Start *****
// ***** Found 1 benchmark(s) in total *****
// ***** Building 1 exe(s) in Parallel: Start *****
// start dotnet restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\0aa9900f-f35c-4918-9b0f-012b22b34229
// command took 4.3 sec and exited with 0
// start dotnet build -c Release --no-restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\0aa9900f-f35c-4918-9b0f-012b22b34229
// command took 14.75 sec and exited with 1
// start dotnet build -c Release --no-restore --no-dependencies /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\0aa9900f-f35c-4918-9b0f-012b22b34229
// command took 3.03 sec and exited with 0
// ***** Done, took 00:00:22 (22.2 sec) *****
// Found 1 benchmarks:
// MyClass.isPinnable: DefaultJob
Setup power plan (GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c FriendlyName: 高性能)
// **************************
// Benchmark: MyClass.isPinnable: DefaultJob
// *** Execute ***
// Launch: 1 / 1
// Execute: dotnet 0aa9900f-f35c-4918-9b0f-012b22b34229.dll --anonymousPipes 1492 1480 --benchmarkName BenchMark.MyClass.isPinnable --job Default --benchmarkId 0 in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\0aa9900f-f35c-4918-9b0f-012b22b34229\bin\Release\net6.0
// BeforeAnythingElse
// Benchmark Process Environment Information:
// BenchmarkDotNet v0.13.12
// Runtime=.NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
// GC=Concurrent Workstation
// HardwareIntrinsics=AVX2,AES,BMI1,BMI2,FMA,LZCNT,PCLMUL,POPCNT,AvxVnni VectorSize=256
// Job: DefaultJob
OverheadJitting 1: 1 op, 265600.00 ns, 265.6000 us/op
WorkloadJitting 1: 1 op, 684500.00 ns, 684.5000 us/op
OverheadJitting 2: 16 op, 457800.00 ns, 28.6125 us/op
WorkloadJitting 2: 16 op, 445600.00 ns, 27.8500 us/op
WorkloadPilot 1: 16 op, 20800.00 ns, 1.3000 us/op
WorkloadPilot 2: 32 op, 26900.00 ns, 840.6250 ns/op
WorkloadPilot 3: 64 op, 41400.00 ns, 646.8750 ns/op
WorkloadPilot 4: 128 op, 74400.00 ns, 581.2500 ns/op
WorkloadPilot 5: 256 op, 137700.00 ns, 537.8906 ns/op
WorkloadPilot 6: 512 op, 259000.00 ns, 505.8594 ns/op
WorkloadPilot 7: 1024 op, 523600.00 ns, 511.3281 ns/op
WorkloadPilot 8: 2048 op, 1100500.00 ns, 537.3535 ns/op
WorkloadPilot 9: 4096 op, 2108300.00 ns, 514.7217 ns/op
WorkloadPilot 10: 8192 op, 4172600.00 ns, 509.3506 ns/op
WorkloadPilot 11: 16384 op, 8327400.00 ns, 508.2642 ns/op
WorkloadPilot 12: 32768 op, 16843200.00 ns, 514.0137 ns/op
WorkloadPilot 13: 65536 op, 33403300.00 ns, 509.6939 ns/op
WorkloadPilot 14: 131072 op, 67557800.00 ns, 515.4251 ns/op
WorkloadPilot 15: 262144 op, 100144200.00 ns, 382.0198 ns/op
WorkloadPilot 16: 524288 op, 161091000.00 ns, 307.2567 ns/op
WorkloadPilot 17: 1048576 op, 319678200.00 ns, 304.8689 ns/op
WorkloadPilot 18: 2097152 op, 644219600.00 ns, 307.1878 ns/op
OverheadWarmup 1: 2097152 op, 5446900.00 ns, 2.5973 ns/op
OverheadWarmup 2: 2097152 op, 5454800.00 ns, 2.6011 ns/op
OverheadWarmup 3: 2097152 op, 5452700.00 ns, 2.6000 ns/op
OverheadWarmup 4: 2097152 op, 5453300.00 ns, 2.6003 ns/op
OverheadWarmup 5: 2097152 op, 5485600.00 ns, 2.6157 ns/op
OverheadWarmup 6: 2097152 op, 5441700.00 ns, 2.5948 ns/op
OverheadActual 1: 2097152 op, 5442000.00 ns, 2.5949 ns/op
OverheadActual 2: 2097152 op, 5444800.00 ns, 2.5963 ns/op
OverheadActual 3: 2097152 op, 5402500.00 ns, 2.5761 ns/op
OverheadActual 4: 2097152 op, 5458900.00 ns, 2.6030 ns/op
OverheadActual 5: 2097152 op, 5443900.00 ns, 2.5959 ns/op
OverheadActual 6: 2097152 op, 5450600.00 ns, 2.5990 ns/op
OverheadActual 7: 2097152 op, 5456800.00 ns, 2.6020 ns/op
OverheadActual 8: 2097152 op, 5476500.00 ns, 2.6114 ns/op
OverheadActual 9: 2097152 op, 5456300.00 ns, 2.6018 ns/op
OverheadActual 10: 2097152 op, 5776000.00 ns, 2.7542 ns/op
OverheadActual 11: 2097152 op, 5591300.00 ns, 2.6661 ns/op
OverheadActual 12: 2097152 op, 5773600.00 ns, 2.7531 ns/op
OverheadActual 13: 2097152 op, 5780500.00 ns, 2.7564 ns/op
OverheadActual 14: 2097152 op, 5861800.00 ns, 2.7951 ns/op
OverheadActual 15: 2097152 op, 5542500.00 ns, 2.6429 ns/op
WorkloadWarmup 1: 2097152 op, 643464600.00 ns, 306.8278 ns/op
WorkloadWarmup 2: 2097152 op, 644750600.00 ns, 307.4410 ns/op
WorkloadWarmup 3: 2097152 op, 642893200.00 ns, 306.5554 ns/op
WorkloadWarmup 4: 2097152 op, 642421700.00 ns, 306.3305 ns/op
WorkloadWarmup 5: 2097152 op, 647587100.00 ns, 308.7936 ns/op
WorkloadWarmup 6: 2097152 op, 642930500.00 ns, 306.5732 ns/op
// BeforeActualRun
WorkloadActual 1: 2097152 op, 640817400.00 ns, 305.5655 ns/op
WorkloadActual 2: 2097152 op, 645447200.00 ns, 307.7732 ns/op
WorkloadActual 3: 2097152 op, 645477800.00 ns, 307.7878 ns/op
WorkloadActual 4: 2097152 op, 642796100.00 ns, 306.5091 ns/op
WorkloadActual 5: 2097152 op, 643307300.00 ns, 306.7528 ns/op
WorkloadActual 6: 2097152 op, 642814600.00 ns, 306.5179 ns/op
WorkloadActual 7: 2097152 op, 644337300.00 ns, 307.2440 ns/op
WorkloadActual 8: 2097152 op, 643307500.00 ns, 306.7529 ns/op
WorkloadActual 9: 2097152 op, 643973000.00 ns, 307.0703 ns/op
WorkloadActual 10: 2097152 op, 643147000.00 ns, 306.6764 ns/op
WorkloadActual 11: 2097152 op, 643559500.00 ns, 306.8731 ns/op
WorkloadActual 12: 2097152 op, 645488700.00 ns, 307.7930 ns/op
WorkloadActual 13: 2097152 op, 646668400.00 ns, 308.3555 ns/op
WorkloadActual 14: 2097152 op, 643548000.00 ns, 306.8676 ns/op
WorkloadActual 15: 2097152 op, 646247400.00 ns, 308.1548 ns/op
// AfterActualRun
WorkloadResult 1: 2097152 op, 635358500.00 ns, 302.9625 ns/op
WorkloadResult 2: 2097152 op, 639988300.00 ns, 305.1702 ns/op
WorkloadResult 3: 2097152 op, 640018900.00 ns, 305.1848 ns/op
WorkloadResult 4: 2097152 op, 637337200.00 ns, 303.9061 ns/op
WorkloadResult 5: 2097152 op, 637848400.00 ns, 304.1498 ns/op
WorkloadResult 6: 2097152 op, 637355700.00 ns, 303.9149 ns/op
WorkloadResult 7: 2097152 op, 638878400.00 ns, 304.6410 ns/op
WorkloadResult 8: 2097152 op, 637848600.00 ns, 304.1499 ns/op
WorkloadResult 9: 2097152 op, 638514100.00 ns, 304.4672 ns/op
WorkloadResult 10: 2097152 op, 637688100.00 ns, 304.0734 ns/op
WorkloadResult 11: 2097152 op, 638100600.00 ns, 304.2701 ns/op
WorkloadResult 12: 2097152 op, 640029800.00 ns, 305.1900 ns/op
WorkloadResult 13: 2097152 op, 641209500.00 ns, 305.7525 ns/op
WorkloadResult 14: 2097152 op, 638089100.00 ns, 304.2646 ns/op
WorkloadResult 15: 2097152 op, 640788500.00 ns, 305.5518 ns/op
// AfterAll
// Benchmark Process 29564 has exited with code 0.
Mean = 304.510 ns, StdErr = 0.191 ns (0.06%), N = 15, StdDev = 0.741 ns
Min = 302.963 ns, Q1 = 304.112 ns, Median = 304.270 ns, Q3 = 305.177 ns, Max = 305.753 ns
IQR = 1.066 ns, LowerFence = 302.513 ns, UpperFence = 306.776 ns
ConfidenceInterval = [303.718 ns; 305.302 ns] (CI 99.9%), Margin = 0.792 ns (0.26% of Mean)
Skewness = -0.06, Kurtosis = 2.27, MValue = 2
// ** Remained 0 (0.0%) benchmark(s) to run. Estimated finish 2024-01-31 22:46 (0h 0m from now) **
Successfully reverted power plan (GUID: af0ac61f-1554-472d-ba2d-6ed6b3aea947 FriendlyName: 游戏模式)
// ***** BenchmarkRunner: Finish *****
// * Export *
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report.csv
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report-github.md
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report.html
// * Detailed results *
MyClass.isPinnable: DefaultJob
Runtime = .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 304.510 ns, StdErr = 0.191 ns (0.06%), N = 15, StdDev = 0.741 ns
Min = 302.963 ns, Q1 = 304.112 ns, Median = 304.270 ns, Q3 = 305.177 ns, Max = 305.753 ns
IQR = 1.066 ns, LowerFence = 302.513 ns, UpperFence = 306.776 ns
ConfidenceInterval = [303.718 ns; 305.302 ns] (CI 99.9%), Margin = 0.792 ns (0.26% of Mean)
Skewness = -0.06, Kurtosis = 2.27, MValue = 2
-------------------- Histogram --------------------
[302.568 ns ; 306.147 ns) | @@@@@@@@@@@@@@@
---------------------------------------------------
// * Summary *
BenchmarkDotNet v0.13.12, Windows 10 (10.0.19045.3930/22H2/2022Update)
12th Gen Intel Core i7-12700H, 1 CPU, 20 logical and 14 physical cores
.NET SDK 8.0.100
[Host] : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
DefaultJob : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
| Method | Mean | Error | StdDev |
|----------- |---------:|--------:|--------:|
| isPinnable | 304.5 ns | 0.79 ns | 0.74 ns |
// * Legends *
Mean : Arithmetic mean of all measurements
Error : Half of 99.9% confidence interval
StdDev : Standard deviation of all measurements
1 ns : 1 Nanosecond (0.000000001 sec)
// ***** BenchmarkRunner: End *****
Run time: 00:00:15 (15.68 sec), executed benchmarks: 1
Global total time: 00:00:38 (38.5 sec), executed benchmarks: 1
// * Artifacts cleanup *
Artifacts cleanup is finished
@@ -0,0 +1,307 @@
// Validating benchmarks:
// ***** BenchmarkRunner: Start *****
// ***** Found 2 benchmark(s) in total *****
// ***** Building 1 exe(s) in Parallel: Start *****
// start dotnet restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\299b41c0-79ef-477d-a6cc-a2b18e801381
// command took 1.77 sec and exited with 0
// start dotnet build -c Release --no-restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\299b41c0-79ef-477d-a6cc-a2b18e801381
// command took 14.53 sec and exited with 1
// start dotnet build -c Release --no-restore --no-dependencies /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\299b41c0-79ef-477d-a6cc-a2b18e801381
// command took 3.01 sec and exited with 0
// ***** Done, took 00:00:19 (19.41 sec) *****
// Found 2 benchmarks:
// MyClass.isM128Pinnable: DefaultJob
// MyClass.isVector4Pinnable: DefaultJob
Setup power plan (GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c FriendlyName: 高性能)
// **************************
// Benchmark: MyClass.isM128Pinnable: DefaultJob
// *** Execute ***
// Launch: 1 / 1
// Execute: dotnet 299b41c0-79ef-477d-a6cc-a2b18e801381.dll --anonymousPipes 1228 1472 --benchmarkName BenchMark.MyClass.isM128Pinnable --job Default --benchmarkId 0 in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\299b41c0-79ef-477d-a6cc-a2b18e801381\bin\Release\net6.0
// BeforeAnythingElse
// Benchmark Process Environment Information:
// BenchmarkDotNet v0.13.12
// Runtime=.NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
// GC=Concurrent Workstation
// HardwareIntrinsics=AVX2,AES,BMI1,BMI2,FMA,LZCNT,PCLMUL,POPCNT,AvxVnni VectorSize=256
// Job: DefaultJob
OverheadJitting 1: 1 op, 294900.00 ns, 294.9000 us/op
WorkloadJitting 1: 1 op, 737100.00 ns, 737.1000 us/op
OverheadJitting 2: 16 op, 451900.00 ns, 28.2437 us/op
WorkloadJitting 2: 16 op, 462300.00 ns, 28.8938 us/op
WorkloadPilot 1: 16 op, 20500.00 ns, 1.2812 us/op
WorkloadPilot 2: 32 op, 27100.00 ns, 846.8750 ns/op
WorkloadPilot 3: 64 op, 41700.00 ns, 651.5625 ns/op
WorkloadPilot 4: 128 op, 70600.00 ns, 551.5625 ns/op
WorkloadPilot 5: 256 op, 133900.00 ns, 523.0469 ns/op
WorkloadPilot 6: 512 op, 265600.00 ns, 518.7500 ns/op
WorkloadPilot 7: 1024 op, 518000.00 ns, 505.8594 ns/op
WorkloadPilot 8: 2048 op, 1068100.00 ns, 521.5332 ns/op
WorkloadPilot 9: 4096 op, 2115600.00 ns, 516.5039 ns/op
WorkloadPilot 10: 8192 op, 4184900.00 ns, 510.8521 ns/op
WorkloadPilot 11: 16384 op, 8401800.00 ns, 512.8052 ns/op
WorkloadPilot 12: 32768 op, 16747800.00 ns, 511.1023 ns/op
WorkloadPilot 13: 65536 op, 33841900.00 ns, 516.3864 ns/op
WorkloadPilot 14: 131072 op, 68017500.00 ns, 518.9323 ns/op
WorkloadPilot 15: 262144 op, 104964200.00 ns, 400.4066 ns/op
WorkloadPilot 16: 524288 op, 190036100.00 ns, 362.4651 ns/op
WorkloadPilot 17: 1048576 op, 320567300.00 ns, 305.7168 ns/op
WorkloadPilot 18: 2097152 op, 644057800.00 ns, 307.1107 ns/op
OverheadWarmup 1: 2097152 op, 5457200.00 ns, 2.6022 ns/op
OverheadWarmup 2: 2097152 op, 5588200.00 ns, 2.6647 ns/op
OverheadWarmup 3: 2097152 op, 5466700.00 ns, 2.6067 ns/op
OverheadWarmup 4: 2097152 op, 5455900.00 ns, 2.6016 ns/op
OverheadWarmup 5: 2097152 op, 5444800.00 ns, 2.5963 ns/op
OverheadWarmup 6: 2097152 op, 5456500.00 ns, 2.6019 ns/op
OverheadWarmup 7: 2097152 op, 5441200.00 ns, 2.5946 ns/op
OverheadActual 1: 2097152 op, 5444700.00 ns, 2.5962 ns/op
OverheadActual 2: 2097152 op, 5453300.00 ns, 2.6003 ns/op
OverheadActual 3: 2097152 op, 5461200.00 ns, 2.6041 ns/op
OverheadActual 4: 2097152 op, 5435600.00 ns, 2.5919 ns/op
OverheadActual 5: 2097152 op, 5437100.00 ns, 2.5926 ns/op
OverheadActual 6: 2097152 op, 5450200.00 ns, 2.5989 ns/op
OverheadActual 7: 2097152 op, 5450000.00 ns, 2.5988 ns/op
OverheadActual 8: 2097152 op, 5441500.00 ns, 2.5947 ns/op
OverheadActual 9: 2097152 op, 5438200.00 ns, 2.5931 ns/op
OverheadActual 10: 2097152 op, 5442700.00 ns, 2.5953 ns/op
OverheadActual 11: 2097152 op, 5395400.00 ns, 2.5727 ns/op
OverheadActual 12: 2097152 op, 5794600.00 ns, 2.7631 ns/op
OverheadActual 13: 2097152 op, 5696800.00 ns, 2.7164 ns/op
OverheadActual 14: 2097152 op, 5792900.00 ns, 2.7623 ns/op
OverheadActual 15: 2097152 op, 5999600.00 ns, 2.8608 ns/op
WorkloadWarmup 1: 2097152 op, 644581600.00 ns, 307.3605 ns/op
WorkloadWarmup 2: 2097152 op, 646682200.00 ns, 308.3621 ns/op
WorkloadWarmup 3: 2097152 op, 779498000.00 ns, 371.6936 ns/op
WorkloadWarmup 4: 2097152 op, 644744200.00 ns, 307.4380 ns/op
WorkloadWarmup 5: 2097152 op, 645772200.00 ns, 307.9282 ns/op
WorkloadWarmup 6: 2097152 op, 641899400.00 ns, 306.0815 ns/op
// BeforeActualRun
WorkloadActual 1: 2097152 op, 642380400.00 ns, 306.3108 ns/op
WorkloadActual 2: 2097152 op, 645025000.00 ns, 307.5719 ns/op
WorkloadActual 3: 2097152 op, 645559300.00 ns, 307.8267 ns/op
WorkloadActual 4: 2097152 op, 645686600.00 ns, 307.8874 ns/op
WorkloadActual 5: 2097152 op, 646469000.00 ns, 308.2604 ns/op
WorkloadActual 6: 2097152 op, 644931300.00 ns, 307.5272 ns/op
WorkloadActual 7: 2097152 op, 647487700.00 ns, 308.7462 ns/op
WorkloadActual 8: 2097152 op, 647308700.00 ns, 308.6608 ns/op
WorkloadActual 9: 2097152 op, 645597600.00 ns, 307.8449 ns/op
WorkloadActual 10: 2097152 op, 641643100.00 ns, 305.9593 ns/op
WorkloadActual 11: 2097152 op, 640938300.00 ns, 305.6232 ns/op
WorkloadActual 12: 2097152 op, 645238700.00 ns, 307.6738 ns/op
WorkloadActual 13: 2097152 op, 639874200.00 ns, 305.1158 ns/op
WorkloadActual 14: 2097152 op, 639509900.00 ns, 304.9421 ns/op
WorkloadActual 15: 2097152 op, 640780000.00 ns, 305.5477 ns/op
// AfterActualRun
WorkloadResult 1: 2097152 op, 636930400.00 ns, 303.7121 ns/op
WorkloadResult 2: 2097152 op, 639575000.00 ns, 304.9731 ns/op
WorkloadResult 3: 2097152 op, 640109300.00 ns, 305.2279 ns/op
WorkloadResult 4: 2097152 op, 640236600.00 ns, 305.2886 ns/op
WorkloadResult 5: 2097152 op, 641019000.00 ns, 305.6617 ns/op
WorkloadResult 6: 2097152 op, 639481300.00 ns, 304.9284 ns/op
WorkloadResult 7: 2097152 op, 642037700.00 ns, 306.1474 ns/op
WorkloadResult 8: 2097152 op, 641858700.00 ns, 306.0621 ns/op
WorkloadResult 9: 2097152 op, 640147600.00 ns, 305.2462 ns/op
WorkloadResult 10: 2097152 op, 636193100.00 ns, 303.3605 ns/op
WorkloadResult 11: 2097152 op, 635488300.00 ns, 303.0244 ns/op
WorkloadResult 12: 2097152 op, 639788700.00 ns, 305.0750 ns/op
WorkloadResult 13: 2097152 op, 634424200.00 ns, 302.5170 ns/op
WorkloadResult 14: 2097152 op, 634059900.00 ns, 302.3433 ns/op
WorkloadResult 15: 2097152 op, 635330000.00 ns, 302.9490 ns/op
// AfterAll
// Benchmark Process 21296 has exited with code 0.
Mean = 304.434 ns, StdErr = 0.338 ns (0.11%), N = 15, StdDev = 1.309 ns
Min = 302.343 ns, Q1 = 303.192 ns, Median = 304.973 ns, Q3 = 305.267 ns, Max = 306.147 ns
IQR = 2.075 ns, LowerFence = 300.080 ns, UpperFence = 308.380 ns
ConfidenceInterval = [303.036 ns; 305.833 ns] (CI 99.9%), Margin = 1.399 ns (0.46% of Mean)
Skewness = -0.31, Kurtosis = 1.42, MValue = 2
// ** Remained 1 (50.0%) benchmark(s) to run. Estimated finish 2024-01-31 22:48 (0h 0m from now) **
Setup power plan (GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c FriendlyName: 高性能)
// **************************
// Benchmark: MyClass.isVector4Pinnable: DefaultJob
// *** Execute ***
// Launch: 1 / 1
// Execute: dotnet 299b41c0-79ef-477d-a6cc-a2b18e801381.dll --anonymousPipes 1264 1208 --benchmarkName BenchMark.MyClass.isVector4Pinnable --job Default --benchmarkId 1 in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\299b41c0-79ef-477d-a6cc-a2b18e801381\bin\Release\net6.0
// BeforeAnythingElse
// Benchmark Process Environment Information:
// BenchmarkDotNet v0.13.12
// Runtime=.NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
// GC=Concurrent Workstation
// HardwareIntrinsics=AVX2,AES,BMI1,BMI2,FMA,LZCNT,PCLMUL,POPCNT,AvxVnni VectorSize=256
// Job: DefaultJob
OverheadJitting 1: 1 op, 265300.00 ns, 265.3000 us/op
WorkloadJitting 1: 1 op, 700900.00 ns, 700.9000 us/op
OverheadJitting 2: 16 op, 465200.00 ns, 29.0750 us/op
WorkloadJitting 2: 16 op, 563200.00 ns, 35.2000 us/op
WorkloadPilot 1: 16 op, 26700.00 ns, 1.6687 us/op
WorkloadPilot 2: 32 op, 19900.00 ns, 621.8750 ns/op
WorkloadPilot 3: 64 op, 25700.00 ns, 401.5625 ns/op
WorkloadPilot 4: 128 op, 53300.00 ns, 416.4062 ns/op
WorkloadPilot 5: 256 op, 65600.00 ns, 256.2500 ns/op
WorkloadPilot 6: 512 op, 123300.00 ns, 240.8203 ns/op
WorkloadPilot 7: 1024 op, 236100.00 ns, 230.5664 ns/op
WorkloadPilot 8: 2048 op, 466100.00 ns, 227.5879 ns/op
WorkloadPilot 9: 4096 op, 951200.00 ns, 232.2266 ns/op
WorkloadPilot 10: 8192 op, 1934300.00 ns, 236.1206 ns/op
WorkloadPilot 11: 16384 op, 3844400.00 ns, 234.6436 ns/op
WorkloadPilot 12: 32768 op, 7691900.00 ns, 234.7382 ns/op
WorkloadPilot 13: 65536 op, 15527400.00 ns, 236.9293 ns/op
WorkloadPilot 14: 131072 op, 30712300.00 ns, 234.3163 ns/op
WorkloadPilot 15: 262144 op, 61352000.00 ns, 234.0393 ns/op
WorkloadPilot 16: 524288 op, 105494100.00 ns, 201.2140 ns/op
WorkloadPilot 17: 1048576 op, 132529400.00 ns, 126.3899 ns/op
WorkloadPilot 18: 2097152 op, 261218400.00 ns, 124.5586 ns/op
WorkloadPilot 19: 4194304 op, 525097000.00 ns, 125.1929 ns/op
OverheadWarmup 1: 4194304 op, 10902200.00 ns, 2.5993 ns/op
OverheadWarmup 2: 4194304 op, 11495300.00 ns, 2.7407 ns/op
OverheadWarmup 3: 4194304 op, 11986800.00 ns, 2.8579 ns/op
OverheadWarmup 4: 4194304 op, 11652400.00 ns, 2.7781 ns/op
OverheadWarmup 5: 4194304 op, 10886300.00 ns, 2.5955 ns/op
OverheadWarmup 6: 4194304 op, 11502000.00 ns, 2.7423 ns/op
OverheadWarmup 7: 4194304 op, 11664100.00 ns, 2.7809 ns/op
OverheadWarmup 8: 4194304 op, 11440400.00 ns, 2.7276 ns/op
OverheadActual 1: 4194304 op, 10894600.00 ns, 2.5975 ns/op
OverheadActual 2: 4194304 op, 10833700.00 ns, 2.5830 ns/op
OverheadActual 3: 4194304 op, 10901800.00 ns, 2.5992 ns/op
OverheadActual 4: 4194304 op, 10947300.00 ns, 2.6100 ns/op
OverheadActual 5: 4194304 op, 10871500.00 ns, 2.5920 ns/op
OverheadActual 6: 4194304 op, 11146200.00 ns, 2.6575 ns/op
OverheadActual 7: 4194304 op, 11422500.00 ns, 2.7233 ns/op
OverheadActual 8: 4194304 op, 11787900.00 ns, 2.8105 ns/op
OverheadActual 9: 4194304 op, 11951600.00 ns, 2.8495 ns/op
OverheadActual 10: 4194304 op, 11710100.00 ns, 2.7919 ns/op
OverheadActual 11: 4194304 op, 11868600.00 ns, 2.8297 ns/op
OverheadActual 12: 4194304 op, 11906800.00 ns, 2.8388 ns/op
OverheadActual 13: 4194304 op, 11535500.00 ns, 2.7503 ns/op
OverheadActual 14: 4194304 op, 11544400.00 ns, 2.7524 ns/op
OverheadActual 15: 4194304 op, 12288400.00 ns, 2.9298 ns/op
WorkloadWarmup 1: 4194304 op, 526867100.00 ns, 125.6149 ns/op
WorkloadWarmup 2: 4194304 op, 522857300.00 ns, 124.6589 ns/op
WorkloadWarmup 3: 4194304 op, 523512000.00 ns, 124.8150 ns/op
WorkloadWarmup 4: 4194304 op, 522354100.00 ns, 124.5389 ns/op
WorkloadWarmup 5: 4194304 op, 528180500.00 ns, 125.9280 ns/op
WorkloadWarmup 6: 4194304 op, 524664300.00 ns, 125.0897 ns/op
// BeforeActualRun
WorkloadActual 1: 4194304 op, 527372900.00 ns, 125.7355 ns/op
WorkloadActual 2: 4194304 op, 526715400.00 ns, 125.5787 ns/op
WorkloadActual 3: 4194304 op, 529199400.00 ns, 126.1710 ns/op
WorkloadActual 4: 4194304 op, 536219300.00 ns, 127.8446 ns/op
WorkloadActual 5: 4194304 op, 526723200.00 ns, 125.5806 ns/op
WorkloadActual 6: 4194304 op, 526473900.00 ns, 125.5212 ns/op
WorkloadActual 7: 4194304 op, 526052800.00 ns, 125.4208 ns/op
WorkloadActual 8: 4194304 op, 527061100.00 ns, 125.6612 ns/op
WorkloadActual 9: 4194304 op, 525908600.00 ns, 125.3864 ns/op
WorkloadActual 10: 4194304 op, 526463100.00 ns, 125.5186 ns/op
WorkloadActual 11: 4194304 op, 526369200.00 ns, 125.4962 ns/op
WorkloadActual 12: 4194304 op, 524597800.00 ns, 125.0739 ns/op
WorkloadActual 13: 4194304 op, 524649400.00 ns, 125.0862 ns/op
WorkloadActual 14: 4194304 op, 523322100.00 ns, 124.7697 ns/op
WorkloadActual 15: 4194304 op, 523710700.00 ns, 124.8624 ns/op
// AfterActualRun
WorkloadResult 1: 4194304 op, 515837400.00 ns, 122.9852 ns/op
WorkloadResult 2: 4194304 op, 515179900.00 ns, 122.8285 ns/op
WorkloadResult 3: 4194304 op, 517663900.00 ns, 123.4207 ns/op
WorkloadResult 4: 4194304 op, 515187700.00 ns, 122.8303 ns/op
WorkloadResult 5: 4194304 op, 514938400.00 ns, 122.7709 ns/op
WorkloadResult 6: 4194304 op, 514517300.00 ns, 122.6705 ns/op
WorkloadResult 7: 4194304 op, 515525600.00 ns, 122.9109 ns/op
WorkloadResult 8: 4194304 op, 514373100.00 ns, 122.6361 ns/op
WorkloadResult 9: 4194304 op, 514927600.00 ns, 122.7683 ns/op
WorkloadResult 10: 4194304 op, 514833700.00 ns, 122.7459 ns/op
WorkloadResult 11: 4194304 op, 513062300.00 ns, 122.3236 ns/op
WorkloadResult 12: 4194304 op, 513113900.00 ns, 122.3359 ns/op
WorkloadResult 13: 4194304 op, 511786600.00 ns, 122.0194 ns/op
WorkloadResult 14: 4194304 op, 512175200.00 ns, 122.1121 ns/op
// AfterAll
// Benchmark Process 18824 has exited with code 0.
Mean = 122.668 ns, StdErr = 0.098 ns (0.08%), N = 14, StdDev = 0.368 ns
Min = 122.019 ns, Q1 = 122.411 ns, Median = 122.757 ns, Q3 = 122.830 ns, Max = 123.421 ns
IQR = 0.419 ns, LowerFence = 121.783 ns, UpperFence = 123.458 ns
ConfidenceInterval = [122.253 ns; 123.084 ns] (CI 99.9%), Margin = 0.416 ns (0.34% of Mean)
Skewness = -0.06, Kurtosis = 2.46, MValue = 2
// ** Remained 0 (0.0%) benchmark(s) to run. Estimated finish 2024-01-31 22:48 (0h 0m from now) **
Successfully reverted power plan (GUID: af0ac61f-1554-472d-ba2d-6ed6b3aea947 FriendlyName: 游戏模式)
// ***** BenchmarkRunner: Finish *****
// * Export *
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report.csv
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report-github.md
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report.html
// * Detailed results *
MyClass.isM128Pinnable: DefaultJob
Runtime = .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 304.434 ns, StdErr = 0.338 ns (0.11%), N = 15, StdDev = 1.309 ns
Min = 302.343 ns, Q1 = 303.192 ns, Median = 304.973 ns, Q3 = 305.267 ns, Max = 306.147 ns
IQR = 2.075 ns, LowerFence = 300.080 ns, UpperFence = 308.380 ns
ConfidenceInterval = [303.036 ns; 305.833 ns] (CI 99.9%), Margin = 1.399 ns (0.46% of Mean)
Skewness = -0.31, Kurtosis = 1.42, MValue = 2
-------------------- Histogram --------------------
[301.647 ns ; 306.844 ns) | @@@@@@@@@@@@@@@
---------------------------------------------------
MyClass.isVector4Pinnable: DefaultJob
Runtime = .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 122.668 ns, StdErr = 0.098 ns (0.08%), N = 14, StdDev = 0.368 ns
Min = 122.019 ns, Q1 = 122.411 ns, Median = 122.757 ns, Q3 = 122.830 ns, Max = 123.421 ns
IQR = 0.419 ns, LowerFence = 121.783 ns, UpperFence = 123.458 ns
ConfidenceInterval = [122.253 ns; 123.084 ns] (CI 99.9%), Margin = 0.416 ns (0.34% of Mean)
Skewness = -0.06, Kurtosis = 2.46, MValue = 2
-------------------- Histogram --------------------
[121.819 ns ; 123.621 ns) | @@@@@@@@@@@@@@
---------------------------------------------------
// * Summary *
BenchmarkDotNet v0.13.12, Windows 10 (10.0.19045.3930/22H2/2022Update)
12th Gen Intel Core i7-12700H, 1 CPU, 20 logical and 14 physical cores
.NET SDK 8.0.100
[Host] : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
DefaultJob : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
| Method | Mean | Error | StdDev |
|------------------ |---------:|--------:|--------:|
| isM128Pinnable | 304.4 ns | 1.40 ns | 1.31 ns |
| isVector4Pinnable | 122.7 ns | 0.42 ns | 0.37 ns |
// * Hints *
Outliers
MyClass.isVector4Pinnable: Default -> 1 outlier was removed (127.84 ns)
// * Legends *
Mean : Arithmetic mean of all measurements
Error : Half of 99.9% confidence interval
StdDev : Standard deviation of all measurements
1 ns : 1 Nanosecond (0.000000001 sec)
// ***** BenchmarkRunner: End *****
Run time: 00:00:28 (28.5 sec), executed benchmarks: 2
Global total time: 00:00:48 (48.27 sec), executed benchmarks: 2
// * Artifacts cleanup *
Artifacts cleanup is finished
@@ -0,0 +1,323 @@
// Validating benchmarks:
// ***** BenchmarkRunner: Start *****
// ***** Found 2 benchmark(s) in total *****
// ***** Building 1 exe(s) in Parallel: Start *****
// start dotnet restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\bae530fa-b64e-46f5-88c5-93225ed120c4
// command took 3.89 sec and exited with 0
// start dotnet build -c Release --no-restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\bae530fa-b64e-46f5-88c5-93225ed120c4
// command took 15.13 sec and exited with 1
// start dotnet build -c Release --no-restore --no-dependencies /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\bae530fa-b64e-46f5-88c5-93225ed120c4
// command took 3.47 sec and exited with 0
// ***** Done, took 00:00:22 (22.63 sec) *****
// Found 2 benchmarks:
// MyClass.isM128Pinnable: DefaultJob
// MyClass.isVector4Pinnable: DefaultJob
Setup power plan (GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c FriendlyName: 高性能)
// **************************
// Benchmark: MyClass.isM128Pinnable: DefaultJob
// *** Execute ***
// Launch: 1 / 1
// Execute: dotnet bae530fa-b64e-46f5-88c5-93225ed120c4.dll --anonymousPipes 1456 1280 --benchmarkName BenchMark.MyClass.isM128Pinnable --job Default --benchmarkId 0 in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\bae530fa-b64e-46f5-88c5-93225ed120c4\bin\Release\net6.0
// BeforeAnythingElse
// Benchmark Process Environment Information:
// BenchmarkDotNet v0.13.12
// Runtime=.NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
// GC=Concurrent Workstation
// HardwareIntrinsics=AVX2,AES,BMI1,BMI2,FMA,LZCNT,PCLMUL,POPCNT,AvxVnni VectorSize=256
// Job: DefaultJob
OverheadJitting 1: 1 op, 521400.00 ns, 521.4000 us/op
WorkloadJitting 1: 1 op, 844200.00 ns, 844.2000 us/op
OverheadJitting 2: 16 op, 512700.00 ns, 32.0438 us/op
WorkloadJitting 2: 16 op, 569600.00 ns, 35.6000 us/op
WorkloadPilot 1: 16 op, 38000.00 ns, 2.3750 us/op
WorkloadPilot 2: 32 op, 31600.00 ns, 987.5000 ns/op
WorkloadPilot 3: 64 op, 45600.00 ns, 712.5000 ns/op
WorkloadPilot 4: 128 op, 77900.00 ns, 608.5938 ns/op
WorkloadPilot 5: 256 op, 147700.00 ns, 576.9531 ns/op
WorkloadPilot 6: 512 op, 268300.00 ns, 524.0234 ns/op
WorkloadPilot 7: 1024 op, 529100.00 ns, 516.6992 ns/op
WorkloadPilot 8: 2048 op, 1084500.00 ns, 529.5410 ns/op
WorkloadPilot 9: 4096 op, 2241200.00 ns, 547.1680 ns/op
WorkloadPilot 10: 8192 op, 4470300.00 ns, 545.6909 ns/op
WorkloadPilot 11: 16384 op, 8731600.00 ns, 532.9346 ns/op
WorkloadPilot 12: 32768 op, 17850900.00 ns, 544.7662 ns/op
WorkloadPilot 13: 65536 op, 34885500.00 ns, 532.3105 ns/op
WorkloadPilot 14: 131072 op, 71535200.00 ns, 545.7703 ns/op
WorkloadPilot 15: 262144 op, 89704700.00 ns, 342.1963 ns/op
WorkloadPilot 16: 524288 op, 164561500.00 ns, 313.8762 ns/op
WorkloadPilot 17: 1048576 op, 332195300.00 ns, 316.8061 ns/op
WorkloadPilot 18: 2097152 op, 661465800.00 ns, 315.4115 ns/op
OverheadWarmup 1: 2097152 op, 5607800.00 ns, 2.6740 ns/op
OverheadWarmup 2: 2097152 op, 5497200.00 ns, 2.6213 ns/op
OverheadWarmup 3: 2097152 op, 5602600.00 ns, 2.6715 ns/op
OverheadWarmup 4: 2097152 op, 5562400.00 ns, 2.6524 ns/op
OverheadWarmup 5: 2097152 op, 5563300.00 ns, 2.6528 ns/op
OverheadWarmup 6: 2097152 op, 5779100.00 ns, 2.7557 ns/op
OverheadWarmup 7: 2097152 op, 5908800.00 ns, 2.8175 ns/op
OverheadWarmup 8: 2097152 op, 5946300.00 ns, 2.8354 ns/op
OverheadWarmup 9: 2097152 op, 5961100.00 ns, 2.8425 ns/op
OverheadWarmup 10: 2097152 op, 5903700.00 ns, 2.8151 ns/op
OverheadActual 1: 2097152 op, 5503600.00 ns, 2.6243 ns/op
OverheadActual 2: 2097152 op, 5671600.00 ns, 2.7044 ns/op
OverheadActual 3: 2097152 op, 5855100.00 ns, 2.7919 ns/op
OverheadActual 4: 2097152 op, 5570700.00 ns, 2.6563 ns/op
OverheadActual 5: 2097152 op, 5983400.00 ns, 2.8531 ns/op
OverheadActual 6: 2097152 op, 5932600.00 ns, 2.8289 ns/op
OverheadActual 7: 2097152 op, 5971700.00 ns, 2.8475 ns/op
OverheadActual 8: 2097152 op, 5835100.00 ns, 2.7824 ns/op
OverheadActual 9: 2097152 op, 5496500.00 ns, 2.6209 ns/op
OverheadActual 10: 2097152 op, 5688300.00 ns, 2.7124 ns/op
OverheadActual 11: 2097152 op, 5812400.00 ns, 2.7716 ns/op
OverheadActual 12: 2097152 op, 6185600.00 ns, 2.9495 ns/op
OverheadActual 13: 2097152 op, 6458400.00 ns, 3.0796 ns/op
OverheadActual 14: 2097152 op, 6119900.00 ns, 2.9182 ns/op
OverheadActual 15: 2097152 op, 6487800.00 ns, 3.0936 ns/op
OverheadActual 16: 2097152 op, 6457300.00 ns, 3.0791 ns/op
OverheadActual 17: 2097152 op, 6278800.00 ns, 2.9940 ns/op
OverheadActual 18: 2097152 op, 7975200.00 ns, 3.8029 ns/op
OverheadActual 19: 2097152 op, 5996000.00 ns, 2.8591 ns/op
OverheadActual 20: 2097152 op, 5899500.00 ns, 2.8131 ns/op
WorkloadWarmup 1: 2097152 op, 669075400.00 ns, 319.0400 ns/op
WorkloadWarmup 2: 2097152 op, 671061300.00 ns, 319.9870 ns/op
WorkloadWarmup 3: 2097152 op, 669664200.00 ns, 319.3208 ns/op
WorkloadWarmup 4: 2097152 op, 664352600.00 ns, 316.7880 ns/op
WorkloadWarmup 5: 2097152 op, 660435000.00 ns, 314.9199 ns/op
WorkloadWarmup 6: 2097152 op, 658557400.00 ns, 314.0246 ns/op
WorkloadWarmup 7: 2097152 op, 670597000.00 ns, 319.7656 ns/op
WorkloadWarmup 8: 2097152 op, 663123400.00 ns, 316.2019 ns/op
// BeforeActualRun
WorkloadActual 1: 2097152 op, 664622500.00 ns, 316.9167 ns/op
WorkloadActual 2: 2097152 op, 663590900.00 ns, 316.4248 ns/op
WorkloadActual 3: 2097152 op, 660337400.00 ns, 314.8734 ns/op
WorkloadActual 4: 2097152 op, 665568100.00 ns, 317.3676 ns/op
WorkloadActual 5: 2097152 op, 657957100.00 ns, 313.7384 ns/op
WorkloadActual 6: 2097152 op, 652008600.00 ns, 310.9019 ns/op
WorkloadActual 7: 2097152 op, 661829900.00 ns, 315.5851 ns/op
WorkloadActual 8: 2097152 op, 655838900.00 ns, 312.7284 ns/op
WorkloadActual 9: 2097152 op, 653176600.00 ns, 311.4589 ns/op
WorkloadActual 10: 2097152 op, 657546900.00 ns, 313.5428 ns/op
WorkloadActual 11: 2097152 op, 655259100.00 ns, 312.4519 ns/op
WorkloadActual 12: 2097152 op, 657783300.00 ns, 313.6555 ns/op
WorkloadActual 13: 2097152 op, 654168900.00 ns, 311.9320 ns/op
WorkloadActual 14: 2097152 op, 657440000.00 ns, 313.4918 ns/op
WorkloadActual 15: 2097152 op, 652665900.00 ns, 311.2154 ns/op
// AfterActualRun
WorkloadResult 1: 2097152 op, 658670350.00 ns, 314.0785 ns/op
WorkloadResult 2: 2097152 op, 657638750.00 ns, 313.5866 ns/op
WorkloadResult 3: 2097152 op, 654385250.00 ns, 312.0352 ns/op
WorkloadResult 4: 2097152 op, 659615950.00 ns, 314.5294 ns/op
WorkloadResult 5: 2097152 op, 652004950.00 ns, 310.9002 ns/op
WorkloadResult 6: 2097152 op, 646056450.00 ns, 308.0637 ns/op
WorkloadResult 7: 2097152 op, 655877750.00 ns, 312.7469 ns/op
WorkloadResult 8: 2097152 op, 649886750.00 ns, 309.8902 ns/op
WorkloadResult 9: 2097152 op, 647224450.00 ns, 308.6207 ns/op
WorkloadResult 10: 2097152 op, 651594750.00 ns, 310.7046 ns/op
WorkloadResult 11: 2097152 op, 649306950.00 ns, 309.6137 ns/op
WorkloadResult 12: 2097152 op, 651831150.00 ns, 310.8173 ns/op
WorkloadResult 13: 2097152 op, 648216750.00 ns, 309.0938 ns/op
WorkloadResult 14: 2097152 op, 651487850.00 ns, 310.6536 ns/op
WorkloadResult 15: 2097152 op, 646713750.00 ns, 308.3771 ns/op
// AfterAll
// Benchmark Process 29152 has exited with code 0.
Mean = 310.914 ns, StdErr = 0.538 ns (0.17%), N = 15, StdDev = 2.085 ns
Min = 308.064 ns, Q1 = 309.354 ns, Median = 310.705 ns, Q3 = 312.391 ns, Max = 314.529 ns
IQR = 3.037 ns, LowerFence = 304.798 ns, UpperFence = 316.947 ns
ConfidenceInterval = [308.686 ns; 313.143 ns] (CI 99.9%), Margin = 2.229 ns (0.72% of Mean)
Skewness = 0.33, Kurtosis = 1.71, MValue = 2
// ** Remained 1 (50.0%) benchmark(s) to run. Estimated finish 2024-02-01 10:07 (0h 0m from now) **
Setup power plan (GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c FriendlyName: 高性能)
// **************************
// Benchmark: MyClass.isVector4Pinnable: DefaultJob
// *** Execute ***
// Launch: 1 / 1
// Execute: dotnet bae530fa-b64e-46f5-88c5-93225ed120c4.dll --anonymousPipes 1476 1372 --benchmarkName BenchMark.MyClass.isVector4Pinnable --job Default --benchmarkId 1 in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\bae530fa-b64e-46f5-88c5-93225ed120c4\bin\Release\net6.0
// BeforeAnythingElse
// Benchmark Process Environment Information:
// BenchmarkDotNet v0.13.12
// Runtime=.NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
// GC=Concurrent Workstation
// HardwareIntrinsics=AVX2,AES,BMI1,BMI2,FMA,LZCNT,PCLMUL,POPCNT,AvxVnni VectorSize=256
// Job: DefaultJob
OverheadJitting 1: 1 op, 287500.00 ns, 287.5000 us/op
WorkloadJitting 1: 1 op, 1094800.00 ns, 1.0948 ms/op
OverheadJitting 2: 16 op, 470100.00 ns, 29.3813 us/op
WorkloadJitting 2: 16 op, 466700.00 ns, 29.1687 us/op
WorkloadPilot 1: 16 op, 32600.00 ns, 2.0375 us/op
WorkloadPilot 2: 32 op, 15400.00 ns, 481.2500 ns/op
WorkloadPilot 3: 64 op, 14300.00 ns, 223.4375 ns/op
WorkloadPilot 4: 128 op, 17900.00 ns, 139.8438 ns/op
WorkloadPilot 5: 256 op, 30500.00 ns, 119.1406 ns/op
WorkloadPilot 6: 512 op, 44000.00 ns, 85.9375 ns/op
WorkloadPilot 7: 1024 op, 79200.00 ns, 77.3438 ns/op
WorkloadPilot 8: 2048 op, 149300.00 ns, 72.9004 ns/op
WorkloadPilot 9: 4096 op, 277900.00 ns, 67.8467 ns/op
WorkloadPilot 10: 8192 op, 624400.00 ns, 76.2207 ns/op
WorkloadPilot 11: 16384 op, 1205200.00 ns, 73.5596 ns/op
WorkloadPilot 12: 32768 op, 2431100.00 ns, 74.1913 ns/op
WorkloadPilot 13: 65536 op, 4877400.00 ns, 74.4232 ns/op
WorkloadPilot 14: 131072 op, 9567200.00 ns, 72.9919 ns/op
WorkloadPilot 15: 262144 op, 20114000.00 ns, 76.7288 ns/op
WorkloadPilot 16: 524288 op, 37236700.00 ns, 71.0234 ns/op
WorkloadPilot 17: 1048576 op, 72950400.00 ns, 69.5709 ns/op
WorkloadPilot 18: 2097152 op, 99817800.00 ns, 47.5968 ns/op
WorkloadPilot 19: 4194304 op, 188756700.00 ns, 45.0031 ns/op
WorkloadPilot 20: 8388608 op, 373362400.00 ns, 44.5083 ns/op
WorkloadPilot 21: 16777216 op, 746374000.00 ns, 44.4874 ns/op
OverheadWarmup 1: 16777216 op, 43736700.00 ns, 2.6069 ns/op
OverheadWarmup 2: 16777216 op, 43741200.00 ns, 2.6072 ns/op
OverheadWarmup 3: 16777216 op, 45034300.00 ns, 2.6843 ns/op
OverheadWarmup 4: 16777216 op, 44683200.00 ns, 2.6633 ns/op
OverheadWarmup 5: 16777216 op, 49756200.00 ns, 2.9657 ns/op
OverheadWarmup 6: 16777216 op, 43920100.00 ns, 2.6178 ns/op
OverheadActual 1: 16777216 op, 44588800.00 ns, 2.6577 ns/op
OverheadActual 2: 16777216 op, 43859700.00 ns, 2.6142 ns/op
OverheadActual 3: 16777216 op, 44514000.00 ns, 2.6532 ns/op
OverheadActual 4: 16777216 op, 47944700.00 ns, 2.8577 ns/op
OverheadActual 5: 16777216 op, 43787200.00 ns, 2.6099 ns/op
OverheadActual 6: 16777216 op, 45030800.00 ns, 2.6840 ns/op
OverheadActual 7: 16777216 op, 41481900.00 ns, 2.4725 ns/op
OverheadActual 8: 16777216 op, 34376000.00 ns, 2.0490 ns/op
OverheadActual 9: 16777216 op, 34512600.00 ns, 2.0571 ns/op
OverheadActual 10: 16777216 op, 33249200.00 ns, 1.9818 ns/op
OverheadActual 11: 16777216 op, 33467200.00 ns, 1.9948 ns/op
OverheadActual 12: 16777216 op, 33318100.00 ns, 1.9859 ns/op
OverheadActual 13: 16777216 op, 48265300.00 ns, 2.8768 ns/op
OverheadActual 14: 16777216 op, 33244000.00 ns, 1.9815 ns/op
OverheadActual 15: 16777216 op, 33287400.00 ns, 1.9841 ns/op
OverheadActual 16: 16777216 op, 34020600.00 ns, 2.0278 ns/op
OverheadActual 17: 16777216 op, 33139100.00 ns, 1.9752 ns/op
OverheadActual 18: 16777216 op, 33278400.00 ns, 1.9835 ns/op
OverheadActual 19: 16777216 op, 34313300.00 ns, 2.0452 ns/op
OverheadActual 20: 16777216 op, 35375100.00 ns, 2.1085 ns/op
WorkloadWarmup 1: 16777216 op, 757775100.00 ns, 45.1669 ns/op
WorkloadWarmup 2: 16777216 op, 744082900.00 ns, 44.3508 ns/op
WorkloadWarmup 3: 16777216 op, 746645800.00 ns, 44.5036 ns/op
WorkloadWarmup 4: 16777216 op, 746393100.00 ns, 44.4885 ns/op
WorkloadWarmup 5: 16777216 op, 746463700.00 ns, 44.4927 ns/op
WorkloadWarmup 6: 16777216 op, 756245400.00 ns, 45.0757 ns/op
WorkloadWarmup 7: 16777216 op, 744485500.00 ns, 44.3748 ns/op
// BeforeActualRun
WorkloadActual 1: 16777216 op, 748247400.00 ns, 44.5990 ns/op
WorkloadActual 2: 16777216 op, 751727300.00 ns, 44.8064 ns/op
WorkloadActual 3: 16777216 op, 752266100.00 ns, 44.8386 ns/op
WorkloadActual 4: 16777216 op, 754183200.00 ns, 44.9528 ns/op
WorkloadActual 5: 16777216 op, 765277400.00 ns, 45.6141 ns/op
WorkloadActual 6: 16777216 op, 749000100.00 ns, 44.6439 ns/op
WorkloadActual 7: 16777216 op, 751232400.00 ns, 44.7769 ns/op
WorkloadActual 8: 16777216 op, 754723800.00 ns, 44.9850 ns/op
WorkloadActual 9: 16777216 op, 754586300.00 ns, 44.9768 ns/op
WorkloadActual 10: 16777216 op, 748041500.00 ns, 44.5867 ns/op
WorkloadActual 11: 16777216 op, 755775000.00 ns, 45.0477 ns/op
WorkloadActual 12: 16777216 op, 753483100.00 ns, 44.9111 ns/op
WorkloadActual 13: 16777216 op, 757345000.00 ns, 45.1413 ns/op
WorkloadActual 14: 16777216 op, 757124600.00 ns, 45.1281 ns/op
WorkloadActual 15: 16777216 op, 757069000.00 ns, 45.1248 ns/op
// AfterActualRun
WorkloadResult 1: 16777216 op, 713803100.00 ns, 42.5460 ns/op
WorkloadResult 2: 16777216 op, 717283000.00 ns, 42.7534 ns/op
WorkloadResult 3: 16777216 op, 717821800.00 ns, 42.7855 ns/op
WorkloadResult 4: 16777216 op, 719738900.00 ns, 42.8998 ns/op
WorkloadResult 5: 16777216 op, 714555800.00 ns, 42.5908 ns/op
WorkloadResult 6: 16777216 op, 716788100.00 ns, 42.7239 ns/op
WorkloadResult 7: 16777216 op, 720279500.00 ns, 42.9320 ns/op
WorkloadResult 8: 16777216 op, 720142000.00 ns, 42.9238 ns/op
WorkloadResult 9: 16777216 op, 713597200.00 ns, 42.5337 ns/op
WorkloadResult 10: 16777216 op, 721330700.00 ns, 42.9947 ns/op
WorkloadResult 11: 16777216 op, 719038800.00 ns, 42.8581 ns/op
WorkloadResult 12: 16777216 op, 722900700.00 ns, 43.0882 ns/op
WorkloadResult 13: 16777216 op, 722680300.00 ns, 43.0751 ns/op
WorkloadResult 14: 16777216 op, 722624700.00 ns, 43.0718 ns/op
// AfterAll
// Benchmark Process 21496 has exited with code 0.
Mean = 42.841 ns, StdErr = 0.051 ns (0.12%), N = 14, StdDev = 0.192 ns
Min = 42.534 ns, Q1 = 42.731 ns, Median = 42.879 ns, Q3 = 42.979 ns, Max = 43.088 ns
IQR = 0.248 ns, LowerFence = 42.360 ns, UpperFence = 43.351 ns
ConfidenceInterval = [42.624 ns; 43.058 ns] (CI 99.9%), Margin = 0.217 ns (0.51% of Mean)
Skewness = -0.28, Kurtosis = 1.62, MValue = 2
// ** Remained 0 (0.0%) benchmark(s) to run. Estimated finish 2024-02-01 10:07 (0h 0m from now) **
Successfully reverted power plan (GUID: af0ac61f-1554-472d-ba2d-6ed6b3aea947 FriendlyName: 游戏模式)
// ***** BenchmarkRunner: Finish *****
// * Export *
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report.csv
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report-github.md
BenchmarkDotNet.Artifacts\results\BenchMark.MyClass-report.html
// * Detailed results *
MyClass.isM128Pinnable: DefaultJob
Runtime = .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 310.914 ns, StdErr = 0.538 ns (0.17%), N = 15, StdDev = 2.085 ns
Min = 308.064 ns, Q1 = 309.354 ns, Median = 310.705 ns, Q3 = 312.391 ns, Max = 314.529 ns
IQR = 3.037 ns, LowerFence = 304.798 ns, UpperFence = 316.947 ns
ConfidenceInterval = [308.686 ns; 313.143 ns] (CI 99.9%), Margin = 2.229 ns (0.72% of Mean)
Skewness = 0.33, Kurtosis = 1.71, MValue = 2
-------------------- Histogram --------------------
[306.954 ns ; 315.639 ns) | @@@@@@@@@@@@@@@
---------------------------------------------------
MyClass.isVector4Pinnable: DefaultJob
Runtime = .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2; GC = Concurrent Workstation
Mean = 42.841 ns, StdErr = 0.051 ns (0.12%), N = 14, StdDev = 0.192 ns
Min = 42.534 ns, Q1 = 42.731 ns, Median = 42.879 ns, Q3 = 42.979 ns, Max = 43.088 ns
IQR = 0.248 ns, LowerFence = 42.360 ns, UpperFence = 43.351 ns
ConfidenceInterval = [42.624 ns; 43.058 ns] (CI 99.9%), Margin = 0.217 ns (0.51% of Mean)
Skewness = -0.28, Kurtosis = 1.62, MValue = 2
-------------------- Histogram --------------------
[42.429 ns ; 43.193 ns) | @@@@@@@@@@@@@@
---------------------------------------------------
// * Summary *
BenchmarkDotNet v0.13.12, Windows 10 (10.0.19045.3930/22H2/2022Update)
12th Gen Intel Core i7-12700H, 1 CPU, 20 logical and 14 physical cores
.NET SDK 8.0.100
[Host] : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
DefaultJob : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
| Method | Mean | Error | StdDev |
|------------------ |----------:|---------:|---------:|
| isM128Pinnable | 310.91 ns | 2.229 ns | 2.085 ns |
| isVector4Pinnable | 42.84 ns | 0.217 ns | 0.192 ns |
// * Hints *
Outliers
MyClass.isVector4Pinnable: Default -> 1 outlier was removed (45.61 ns)
// * Legends *
Mean : Arithmetic mean of all measurements
Error : Half of 99.9% confidence interval
StdDev : Standard deviation of all measurements
1 ns : 1 Nanosecond (0.000000001 sec)
// ***** BenchmarkRunner: End *****
Run time: 00:00:36 (36.91 sec), executed benchmarks: 2
Global total time: 00:01:00 (60.21 sec), executed benchmarks: 2
// * Artifacts cleanup *
Artifacts cleanup is finished
@@ -0,0 +1,7 @@
// Validating benchmarks:
// ***** BenchmarkRunner: Start *****
// ***** Found 2 benchmark(s) in total *****
// ***** Building 1 exe(s) in Parallel: Start *****
// start dotnet restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\cb7619fd-e1e9-41a2-a025-33495a9b2dbb
// command took 3.84 sec and exited with 0
// start dotnet build -c Release --no-restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\bin\Release\net6.0\cb7619fd-e1e9-41a2-a025-33495a9b2dbb
@@ -0,0 +1 @@
// Validating benchmarks:
@@ -0,0 +1 @@
// Validating benchmarks:
@@ -0,0 +1 @@
// Validating benchmarks:
@@ -0,0 +1 @@
// Validating benchmarks:
@@ -0,0 +1 @@
// Validating benchmarks:
@@ -0,0 +1,14 @@
```
BenchmarkDotNet v0.13.12, Windows 10 (10.0.19045.3930/22H2/2022Update)
12th Gen Intel Core i7-12700H, 1 CPU, 20 logical and 14 physical cores
.NET SDK 8.0.100
[Host] : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
DefaultJob : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
```
| Method | Mean | Error | StdDev |
|------------------ |----------:|---------:|---------:|
| isM128Pinnable | 310.91 ns | 2.229 ns | 2.085 ns |
| isVector4Pinnable | 42.84 ns | 0.217 ns | 0.192 ns |
@@ -0,0 +1,3 @@
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,LargeAddressAware,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,Mean,Error,StdDev
isM128Pinnable,DefaultJob,False,Default,Default,Default,Default,Default,Default,11111111000000000000,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 6.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,310.91 ns,2.229 ns,2.085 ns
isVector4Pinnable,DefaultJob,False,Default,Default,Default,Default,Default,Default,11111111000000000000,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 6.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,42.84 ns,0.217 ns,0.192 ns
1 Method Job AnalyzeLaunchVariance EvaluateOverhead MaxAbsoluteError MaxRelativeError MinInvokeCount MinIterationTime OutlierMode Affinity EnvironmentVariables Jit LargeAddressAware 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 Mean Error StdDev
2 isM128Pinnable DefaultJob False Default Default Default Default Default Default 11111111000000000000 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 6.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 310.91 ns 2.229 ns 2.085 ns
3 isVector4Pinnable DefaultJob False Default Default Default Default Default Default 11111111000000000000 Empty RyuJit Default X64 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c .NET 6.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 42.84 ns 0.217 ns 0.192 ns
@@ -0,0 +1,31 @@
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='utf-8' />
<title>BenchMark.MyClass-20240201-100706</title>
<style type="text/css">
table { border-collapse: collapse; display: block; width: 100%; overflow: auto; }
td, th { padding: 6px 13px; border: 1px solid #ddd; text-align: right; }
tr { background-color: #fff; border-top: 1px solid #ccc; }
tr:nth-child(even) { background: #f8f8f8; }
</style>
</head>
<body>
<pre><code>
BenchmarkDotNet v0.13.12, Windows 10 (10.0.19045.3930/22H2/2022Update)
12th Gen Intel Core i7-12700H, 1 CPU, 20 logical and 14 physical cores
.NET SDK 8.0.100
[Host] : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
DefaultJob : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2
</code></pre>
<pre><code></code></pre>
<table>
<thead><tr><th>Method </th><th>Mean</th><th>Error</th><th>StdDev</th>
</tr>
</thead><tbody><tr><td>isM128Pinnable</td><td>310.91 ns</td><td>2.229 ns</td><td>2.085 ns</td>
</tr><tr><td>isVector4Pinnable</td><td>42.84 ns</td><td>0.217 ns</td><td>0.192 ns</td>
</tr></tbody></table>
</body>
</html>
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,50 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<ImportDirectoryBuildProps>false</ImportDirectoryBuildProps>
<ImportDirectoryBuildTargets>false</ImportDirectoryBuildTargets>
<AssemblyTitle>cb7619fd-e1e9-41a2-a025-33495a9b2dbb</AssemblyTitle>
<TargetFramework>net6.0</TargetFramework>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<PlatformTarget>x64</PlatformTarget>
<AssemblyName>cb7619fd-e1e9-41a2-a025-33495a9b2dbb</AssemblyName>
<OutputType>Exe</OutputType>
<OutputPath>bin\Release</OutputPath>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
<!-- Usage of System.Random can cause compilation errors if Code Analysis warnings are treated as Errors -->
<CodeAnalysisTreatWarningsAsErrors>false</CodeAnalysisTreatWarningsAsErrors>
<!-- disabled due to https://github.com/dotnet/roslyn/issues/59421 -->
<DebugSymbols>false</DebugSymbols>
<UseSharedCompilation>false</UseSharedCompilation>
<CodeAnalysisRuleSet></CodeAnalysisRuleSet>
<RunAnalyzers>false</RunAnalyzers>
<Deterministic>true</Deterministic>
<!-- needed for custom build configurations (only "Release" builds are optimized by default) -->
<Optimize Condition=" '$(Configuration)' != 'Debug' ">true</Optimize>
<!-- we set LangVersion after any copied settings which might contain LangVersion copied from the benchmarks project -->
<LangVersion Condition="'$(LangVersion)' == '' Or ($([System.Char]::IsDigit('$(LangVersion)', 0)) And '$(LangVersion)' &lt; '7.3')">latest</LangVersion>
<AppendTargetFrameworkToOutputPath>true</AppendTargetFrameworkToOutputPath>
<!-- fix for NETSDK1150: https://docs.microsoft.com/en-us/dotnet/core/compatibility/sdk/5.0/referencing-executable-generates-error -->
<ValidateExecutableReferencesMatchSelfContained>false</ValidateExecutableReferencesMatchSelfContained>
<StartupObject>BenchmarkDotNet.Autogenerated.UniqueProgramName</StartupObject>
</PropertyGroup>
<ItemGroup>
<Compile Include="cb7619fd-e1e9-41a2-a025-33495a9b2dbb.notcs" Exclude="bin\**;obj\**;**\*.xproj;packages\**" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\BenchMark\BenchMark.csproj" />
</ItemGroup>
<!-- Begin copied settings from benchmarks project -->
<!-- End copied settings -->
<PropertyGroup>
<ServerGarbageCollection>false</ServerGarbageCollection>
<ConcurrentGarbageCollection>true</ConcurrentGarbageCollection>
</PropertyGroup>
</Project>
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<gcConcurrent enabled="true" />
<gcServer enabled="false" />
</runtime>
</configuration>
@@ -0,0 +1,2 @@
call dotnet restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true
call dotnet build -c Release /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 /p:Deterministic=true /p:Optimize=true
@@ -0,0 +1,527 @@
// <auto-generated />
// this file must not be importing any namespaces
// we should use full names everywhere to avoid any potential naming conflicts, example: #1007, #778
// the namespace name must be in sync with WindowsDisassembler.BuildArguments
namespace BenchmarkDotNet.Autogenerated
{
public class UniqueProgramName // we need different name than typical "Program" to avoid problems with referencing "Program" types from benchmarked code, #691
{
public static System.Int32 Main(System.String[] args)
{
// this method MUST NOT have any dependencies to BenchmarkDotNet and any other external dlls! (CoreRT is exception from this rule)
// otherwise if LINQPad's shadow copy is enabled, we will not register for AssemblyLoading event
// before .NET Framework tries to load it for this method
#if NETFRAMEWORK
using(new DirtyAssemblyResolveHelper())
#endif
return AfterAssemblyLoadingAttached(args);
}
private static System.Int32 AfterAssemblyLoadingAttached(System.String[] args)
{
BenchmarkDotNet.Engines.IHost host; // this variable name is used by CodeGenerator.GetCoreRtSwitch, do NOT change it
if (BenchmarkDotNet.Engines.AnonymousPipesHost.TryGetFileHandles(args, out System.String writeHandle, out System.String readHandle))
host = new BenchmarkDotNet.Engines.AnonymousPipesHost(writeHandle, readHandle);
else
host = new BenchmarkDotNet.Engines.NoAcknowledgementConsoleHost();
// the first thing to do is to let diagnosers hook in before anything happens
// so all jit-related diagnosers can catch first jit compilation!
BenchmarkDotNet.Engines.HostExtensions.BeforeAnythingElse(host);
try
{
// we are not using Runnable here in any direct way in order to avoid strong dependency Main<=>Runnable
// which could cause the jitting/assembly loading to happen before we do anything
// we have some jitting diagnosers and we want them to catch all the informations!!
// this variable name is used by CodeGenerator.GetCoreRtSwitch, do NOT change it
System.String benchmarkName = System.Linq.Enumerable.FirstOrDefault(System.Linq.Enumerable.Skip(System.Linq.Enumerable.SkipWhile(args, arg => arg != "--benchmarkName"), 1)) ?? "not provided";
System.Int32 id = args.Length > 0
? System.Int32.Parse(args[args.Length - 1]) // this variable name is used by CodeGenerator.GetCoreRtSwitch, do NOT change it
: 0; // used when re-using generated exe without BDN (typically to repro a bug)
if (args.Length == 0)
{
host.WriteLine("You have not specified benchmark id (an integer) so the first benchmark will be executed.");
}
#if NATIVEAOT
#else
System.Type type = typeof(BenchmarkDotNet.Autogenerated.UniqueProgramName).Assembly.GetType($"BenchmarkDotNet.Autogenerated.Runnable_{id}");
type.GetMethod("Run", System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static).Invoke(null, new System.Object[] { host, benchmarkName });
#endif
return 0;
}
catch (System.Exception oom) when (oom is System.OutOfMemoryException || oom is System.Reflection.TargetInvocationException reflection && reflection.InnerException is System.OutOfMemoryException)
{
host.WriteLine();
host.WriteLine("OutOfMemoryException!");
host.WriteLine("BenchmarkDotNet continues to run additional iterations until desired accuracy level is achieved. It's possible only if the benchmark method doesn't have any side-effects.");
host.WriteLine("If your benchmark allocates memory and keeps it alive, you are creating a memory leak.");
host.WriteLine("You should redesign your benchmark and remove the side-effects. You can use `OperationsPerInvoke`, `IterationSetup` and `IterationCleanup` to do that.");
host.WriteLine();
host.WriteLine(oom.ToString());
return -1;
}
catch(System.Exception ex)
{
host.WriteLine();
host.WriteLine(ex.ToString());
return -1;
}
finally
{
BenchmarkDotNet.Engines.HostExtensions.AfterAll(host);
host.Dispose();
}
}
}
#if NETFRAMEWORK
internal class DirtyAssemblyResolveHelper : System.IDisposable
{
internal DirtyAssemblyResolveHelper() => System.AppDomain.CurrentDomain.AssemblyResolve += HelpTheFrameworkToResolveTheAssembly;
public void Dispose() => System.AppDomain.CurrentDomain.AssemblyResolve -= HelpTheFrameworkToResolveTheAssembly;
/// <summary>
/// according to https://msdn.microsoft.com/en-us/library/ff527268(v=vs.110).aspx
/// "the handler is invoked whenever the runtime fails to bind to an assembly by name."
/// </summary>
/// <returns>not null when we find it manually, null when can't help</returns>
private System.Reflection.Assembly HelpTheFrameworkToResolveTheAssembly(System.Object sender, System.ResolveEventArgs args)
{
#if SHADOWCOPY // used for LINQPad
const System.String shadowCopyFolderPath = @"";
System.String guessedPath = System.IO.Path.Combine(shadowCopyFolderPath, $"{new System.Reflection.AssemblyName(args.Name).Name}.dll");
return System.IO.File.Exists(guessedPath) ? System.Reflection.Assembly.LoadFrom(guessedPath) : null;
#else
System.Reflection.AssemblyName fullName = new System.Reflection.AssemblyName(args.Name);
System.String simpleName = fullName.Name;
System.String guessedPath = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, $"{simpleName}.dll");
if (!System.IO.File.Exists(guessedPath))
{
System.Console.WriteLine($"// Wrong assembly binding redirects for {args.Name}.");
return null; // we can't help, and we also don't call Assembly.Load which if fails comes back here, creates endless loop and causes StackOverflow
}
// the file is right there, but has most probably different version and there is no assembly binding redirect or there is a wrong one...
// so we just load it and ignore the version mismatch
// we warn the user about that, in case some Super User want to be aware of that
System.Console.WriteLine($"// Wrong assembly binding redirects for {simpleName}, loading it from disk anyway.");
return System.Reflection.Assembly.LoadFrom(guessedPath);
#endif // SHADOWCOPY
}
}
#endif // NETFRAMEWORK
// the type name must be in sync with WindowsDisassembler.BuildArguments
public unsafe class Runnable_0 : global::BenchMark.MyClass
{
public static void Run(BenchmarkDotNet.Engines.IHost host, System.String benchmarkName)
{
BenchmarkDotNet.Autogenerated.Runnable_0 instance = new BenchmarkDotNet.Autogenerated.Runnable_0(); // do NOT change name "instance" (used in SmartParamameter)
host.WriteLine();
foreach (System.String infoLine in BenchmarkDotNet.Environments.BenchmarkEnvironmentInfo.GetCurrent().ToFormattedString())
{
host.WriteLine($"// {infoLine}");
}
BenchmarkDotNet.Jobs.Job job = new BenchmarkDotNet.Jobs.Job(); // use full name to avoid naming conflicts, #778
;
job.Freeze();
host.WriteLine($"// Job: {job.DisplayInfo}");
host.WriteLine();
System.Collections.Generic.IEnumerable<BenchmarkDotNet.Validators.ValidationError> errors = BenchmarkDotNet.Environments.BenchmarkEnvironmentInfo.Validate(job);
if (BenchmarkDotNet.Validators.ValidationErrorReporter.ReportIfAny(errors, host))
return;
BenchmarkDotNet.Engines.EngineParameters engineParameters = new BenchmarkDotNet.Engines.EngineParameters()
{
Host = host,
WorkloadActionUnroll = instance.WorkloadActionUnroll,
WorkloadActionNoUnroll = instance.WorkloadActionNoUnroll,
Dummy1Action = instance.Dummy1,
Dummy2Action = instance.Dummy2,
Dummy3Action = instance.Dummy3,
OverheadActionNoUnroll = instance.OverheadActionNoUnroll,
OverheadActionUnroll = instance.OverheadActionUnroll,
GlobalSetupAction = instance.globalSetupAction,
GlobalCleanupAction = instance.globalCleanupAction,
IterationSetupAction = instance.iterationSetupAction,
IterationCleanupAction = instance.iterationCleanupAction,
TargetJob = job,
OperationsPerInvoke = 1,
MeasureExtraStats = false,
BenchmarkName = benchmarkName
};
using (BenchmarkDotNet.Engines.IEngine engine = new BenchmarkDotNet.Engines.EngineFactory().CreateReadyToRun(engineParameters))
{
BenchmarkDotNet.Engines.RunResults results = engine.Run();
host.ReportResults(results); // printing costs memory, do this after runs
instance.__TrickTheJIT__(); // compile the method for disassembler, but without actual run of the benchmark ;)
}
}
public delegate System.Boolean OverheadDelegate();
public delegate System.Boolean WorkloadDelegate();
public Runnable_0()
{
globalSetupAction = () => { };
globalCleanupAction = () => { };
iterationSetupAction = () => { };
iterationCleanupAction = () => { };
overheadDelegate = __Overhead;
workloadDelegate = isM128Pinnable;
}
private System.Action globalSetupAction;
private System.Action globalCleanupAction;
private System.Action iterationSetupAction;
private System.Action iterationCleanupAction;
private BenchmarkDotNet.Autogenerated.Runnable_0.OverheadDelegate overheadDelegate;
private BenchmarkDotNet.Autogenerated.Runnable_0.WorkloadDelegate workloadDelegate;
// this method is used only for the disassembly diagnoser purposes
// the goal is to get this and the benchmarked method jitted, but without executing the benchmarked method itself
public System.Int32 NotEleven;
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoOptimization | System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
public void __TrickTheJIT__()
{
NotEleven = new System.Random(123).Next(0, 10);
__ForDisassemblyDiagnoser__();
}
private System.Int32 dummyVar;
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
private void Dummy1()
{
dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;
}
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
private void Dummy2()
{
dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;
}
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
private void Dummy3()
{
dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;
}
private System.Boolean __Overhead() // __ is to avoid possible name conflict
{
return default(System.Boolean);
}
private BenchmarkDotNet.Engines.Consumer consumer = new BenchmarkDotNet.Engines.Consumer();
[System.Runtime.CompilerServices.MethodImpl(BenchmarkDotNet.Portability.CodeGenHelper.AggressiveOptimizationOption)]
private void OverheadActionUnroll(System.Int64 invokeCount)
{
for (System.Int64 i = 0; i < invokeCount; i++)
{
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
}
}
[System.Runtime.CompilerServices.MethodImpl(BenchmarkDotNet.Portability.CodeGenHelper.AggressiveOptimizationOption)]
private void OverheadActionNoUnroll(System.Int64 invokeCount)
{
for (System.Int64 i = 0; i < invokeCount; i++)
{
consumer.Consume(overheadDelegate());
}
}
[System.Runtime.CompilerServices.MethodImpl(BenchmarkDotNet.Portability.CodeGenHelper.AggressiveOptimizationOption)]
private void WorkloadActionUnroll(System.Int64 invokeCount)
{
for (System.Int64 i = 0; i < invokeCount; i++)
{
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
}
}
[System.Runtime.CompilerServices.MethodImpl(BenchmarkDotNet.Portability.CodeGenHelper.AggressiveOptimizationOption)]
private void WorkloadActionNoUnroll(System.Int64 invokeCount)
{
for (System.Int64 i = 0; i < invokeCount; i++)
{
consumer.Consume(workloadDelegate());
}
}
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoOptimization | System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
public System.Boolean __ForDisassemblyDiagnoser__()
{
if (NotEleven == 11)
{
return isM128Pinnable();
}
return default(System.Boolean);
}
}
// the type name must be in sync with WindowsDisassembler.BuildArguments
public unsafe class Runnable_1 : global::BenchMark.MyClass
{
public static void Run(BenchmarkDotNet.Engines.IHost host, System.String benchmarkName)
{
BenchmarkDotNet.Autogenerated.Runnable_1 instance = new BenchmarkDotNet.Autogenerated.Runnable_1(); // do NOT change name "instance" (used in SmartParamameter)
host.WriteLine();
foreach (System.String infoLine in BenchmarkDotNet.Environments.BenchmarkEnvironmentInfo.GetCurrent().ToFormattedString())
{
host.WriteLine($"// {infoLine}");
}
BenchmarkDotNet.Jobs.Job job = new BenchmarkDotNet.Jobs.Job(); // use full name to avoid naming conflicts, #778
;
job.Freeze();
host.WriteLine($"// Job: {job.DisplayInfo}");
host.WriteLine();
System.Collections.Generic.IEnumerable<BenchmarkDotNet.Validators.ValidationError> errors = BenchmarkDotNet.Environments.BenchmarkEnvironmentInfo.Validate(job);
if (BenchmarkDotNet.Validators.ValidationErrorReporter.ReportIfAny(errors, host))
return;
BenchmarkDotNet.Engines.EngineParameters engineParameters = new BenchmarkDotNet.Engines.EngineParameters()
{
Host = host,
WorkloadActionUnroll = instance.WorkloadActionUnroll,
WorkloadActionNoUnroll = instance.WorkloadActionNoUnroll,
Dummy1Action = instance.Dummy1,
Dummy2Action = instance.Dummy2,
Dummy3Action = instance.Dummy3,
OverheadActionNoUnroll = instance.OverheadActionNoUnroll,
OverheadActionUnroll = instance.OverheadActionUnroll,
GlobalSetupAction = instance.globalSetupAction,
GlobalCleanupAction = instance.globalCleanupAction,
IterationSetupAction = instance.iterationSetupAction,
IterationCleanupAction = instance.iterationCleanupAction,
TargetJob = job,
OperationsPerInvoke = 1,
MeasureExtraStats = false,
BenchmarkName = benchmarkName
};
using (BenchmarkDotNet.Engines.IEngine engine = new BenchmarkDotNet.Engines.EngineFactory().CreateReadyToRun(engineParameters))
{
BenchmarkDotNet.Engines.RunResults results = engine.Run();
host.ReportResults(results); // printing costs memory, do this after runs
instance.__TrickTheJIT__(); // compile the method for disassembler, but without actual run of the benchmark ;)
}
}
public delegate System.Boolean OverheadDelegate();
public delegate System.Boolean WorkloadDelegate();
public Runnable_1()
{
globalSetupAction = () => { };
globalCleanupAction = () => { };
iterationSetupAction = () => { };
iterationCleanupAction = () => { };
overheadDelegate = __Overhead;
workloadDelegate = isVector4Pinnable;
}
private System.Action globalSetupAction;
private System.Action globalCleanupAction;
private System.Action iterationSetupAction;
private System.Action iterationCleanupAction;
private BenchmarkDotNet.Autogenerated.Runnable_1.OverheadDelegate overheadDelegate;
private BenchmarkDotNet.Autogenerated.Runnable_1.WorkloadDelegate workloadDelegate;
// this method is used only for the disassembly diagnoser purposes
// the goal is to get this and the benchmarked method jitted, but without executing the benchmarked method itself
public System.Int32 NotEleven;
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoOptimization | System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
public void __TrickTheJIT__()
{
NotEleven = new System.Random(123).Next(0, 10);
__ForDisassemblyDiagnoser__();
}
private System.Int32 dummyVar;
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
private void Dummy1()
{
dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;
}
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
private void Dummy2()
{
dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;
}
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
private void Dummy3()
{
dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;dummyVar++;
}
private System.Boolean __Overhead() // __ is to avoid possible name conflict
{
return default(System.Boolean);
}
private BenchmarkDotNet.Engines.Consumer consumer = new BenchmarkDotNet.Engines.Consumer();
[System.Runtime.CompilerServices.MethodImpl(BenchmarkDotNet.Portability.CodeGenHelper.AggressiveOptimizationOption)]
private void OverheadActionUnroll(System.Int64 invokeCount)
{
for (System.Int64 i = 0; i < invokeCount; i++)
{
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
consumer.Consume(overheadDelegate());
}
}
[System.Runtime.CompilerServices.MethodImpl(BenchmarkDotNet.Portability.CodeGenHelper.AggressiveOptimizationOption)]
private void OverheadActionNoUnroll(System.Int64 invokeCount)
{
for (System.Int64 i = 0; i < invokeCount; i++)
{
consumer.Consume(overheadDelegate());
}
}
[System.Runtime.CompilerServices.MethodImpl(BenchmarkDotNet.Portability.CodeGenHelper.AggressiveOptimizationOption)]
private void WorkloadActionUnroll(System.Int64 invokeCount)
{
for (System.Int64 i = 0; i < invokeCount; i++)
{
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
consumer.Consume(workloadDelegate());
}
}
[System.Runtime.CompilerServices.MethodImpl(BenchmarkDotNet.Portability.CodeGenHelper.AggressiveOptimizationOption)]
private void WorkloadActionNoUnroll(System.Int64 invokeCount)
{
for (System.Int64 i = 0; i < invokeCount; i++)
{
consumer.Consume(workloadDelegate());
}
}
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoOptimization | System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
public System.Boolean __ForDisassemblyDiagnoser__()
{
if (NotEleven == 11)
{
return isVector4Pinnable();
}
return default(System.Boolean);
}
}
}
@@ -0,0 +1,138 @@
{
"format": 1,
"restore": {
"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\bin\\Release\\net6.0\\cb7619fd-e1e9-41a2-a025-33495a9b2dbb\\BenchmarkDotNet.Autogenerated.csproj": {}
},
"projects": {
"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\BenchMark.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\BenchMark.csproj",
"projectName": "BenchMark",
"projectPath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\BenchMark.csproj",
"packagesPath": "C:\\Users\\Nitlo\\.nuget\\packages\\",
"outputPath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Nitlo\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"dependencies": {
"BenchmarkDotNet": {
"target": "Package",
"version": "[0.13.12, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.100\\RuntimeIdentifierGraph.json"
}
}
},
"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\bin\\Release\\net6.0\\cb7619fd-e1e9-41a2-a025-33495a9b2dbb\\BenchmarkDotNet.Autogenerated.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\bin\\Release\\net6.0\\cb7619fd-e1e9-41a2-a025-33495a9b2dbb\\BenchmarkDotNet.Autogenerated.csproj",
"projectName": "cb7619fd-e1e9-41a2-a025-33495a9b2dbb",
"projectPath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\bin\\Release\\net6.0\\cb7619fd-e1e9-41a2-a025-33495a9b2dbb\\BenchmarkDotNet.Autogenerated.csproj",
"packagesPath": "C:\\Users\\Nitlo\\.nuget\\packages\\",
"outputPath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\bin\\Release\\net6.0\\cb7619fd-e1e9-41a2-a025-33495a9b2dbb\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Nitlo\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {
"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\BenchMark.csproj": {
"projectPath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\BenchMark.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.100\\RuntimeIdentifierGraph.json"
}
}
}
}
}
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Nitlo\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.8.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\Nitlo\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)microsoft.diagnostics.tracing.traceevent\3.0.2\buildTransitive\Microsoft.Diagnostics.Tracing.TraceEvent.props" Condition="Exists('$(NuGetPackageRoot)microsoft.diagnostics.tracing.traceevent\3.0.2\buildTransitive\Microsoft.Diagnostics.Tracing.TraceEvent.props')" />
</ImportGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_CodeAnalysis_Analyzers Condition=" '$(PkgMicrosoft_CodeAnalysis_Analyzers)' == '' ">C:\Users\Nitlo\.nuget\packages\microsoft.codeanalysis.analyzers\3.3.3</PkgMicrosoft_CodeAnalysis_Analyzers>
</PropertyGroup>
</Project>
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
@@ -0,0 +1,43 @@
{
"version": 2,
"dgSpecHash": "jiNf7qf5ivJRw2H0aZcItIlXPq6fXzUrzvpeKwiMoaqG0T4KINoXJac3FdY43h3ZYvrqBhOFcO3094/WPzN1XQ==",
"success": true,
"projectFilePath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\BenchMark\\bin\\Release\\net6.0\\cb7619fd-e1e9-41a2-a025-33495a9b2dbb\\BenchmarkDotNet.Autogenerated.csproj",
"expectedPackageFiles": [
"C:\\Users\\Nitlo\\.nuget\\packages\\benchmarkdotnet\\0.13.12\\benchmarkdotnet.0.13.12.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\benchmarkdotnet.annotations\\0.13.12\\benchmarkdotnet.annotations.0.13.12.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\commandlineparser\\2.9.1\\commandlineparser.2.9.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\gee.external.capstone\\2.3.0\\gee.external.capstone.2.3.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\iced\\1.17.0\\iced.1.17.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\1.1.0\\microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.codeanalysis.analyzers\\3.3.3\\microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.codeanalysis.common\\4.1.0\\microsoft.codeanalysis.common.4.1.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.codeanalysis.csharp\\4.1.0\\microsoft.codeanalysis.csharp.4.1.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.diagnostics.netcore.client\\0.2.251802\\microsoft.diagnostics.netcore.client.0.2.251802.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.diagnostics.runtime\\2.2.332302\\microsoft.diagnostics.runtime.2.2.332302.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.diagnostics.tracing.traceevent\\3.0.2\\microsoft.diagnostics.tracing.traceevent.3.0.2.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.dotnet.platformabstractions\\3.1.6\\microsoft.dotnet.platformabstractions.3.1.6.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.extensions.configuration\\2.1.1\\microsoft.extensions.configuration.2.1.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\2.1.1\\microsoft.extensions.configuration.abstractions.2.1.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.extensions.configuration.binder\\2.1.1\\microsoft.extensions.configuration.binder.2.1.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\2.1.1\\microsoft.extensions.dependencyinjection.abstractions.2.1.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.extensions.logging\\2.1.1\\microsoft.extensions.logging.2.1.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\2.1.1\\microsoft.extensions.logging.abstractions.2.1.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.extensions.options\\2.1.1\\microsoft.extensions.options.2.1.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.extensions.primitives\\2.1.1\\microsoft.extensions.primitives.2.1.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.netcore.platforms\\5.0.0\\microsoft.netcore.platforms.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\microsoft.win32.registry\\5.0.0\\microsoft.win32.registry.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\perfolizer\\0.2.1\\perfolizer.0.2.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.codedom\\5.0.0\\system.codedom.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.collections.immutable\\5.0.0\\system.collections.immutable.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.management\\5.0.0\\system.management.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.memory\\4.5.4\\system.memory.4.5.4.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.reflection.metadata\\5.0.0\\system.reflection.metadata.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\5.0.0\\system.runtime.compilerservices.unsafe.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.security.accesscontrol\\5.0.0\\system.security.accesscontrol.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.security.principal.windows\\5.0.0\\system.security.principal.windows.5.0.0.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.text.encoding.codepages\\4.5.1\\system.text.encoding.codepages.4.5.1.nupkg.sha512",
"C:\\Users\\Nitlo\\.nuget\\packages\\system.threading.tasks.extensions\\4.5.4\\system.threading.tasks.extensions.4.5.4.nupkg.sha512"
],
"logs": []
}

Some files were not shown because too many files have changed in this diff Show More