Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some tests have warning about the test being indistinguishable from empty #3411

Open
LoopedBard3 opened this issue Oct 12, 2023 · 0 comments
Labels
impact test coverage test maybe disabled due to this issue

Comments

@LoopedBard3
Copy link
Member

Some microbenchmarks are causing bdn to through a ZeroMeasurement error, such as:

[2023/10/12 13:12:54][INFO] // * Warnings *
[2023/10/12 13:12:54][INFO] ZeroMeasurement
[2023/10/12 13:12:54][INFO]   MemoryMarshal<Int32>.AsBytes: PowerPlanMode=00000000-0000-0000-0000-000000000000, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=CoreRun, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1 -> The method duration is indistinguishable from the empty method duration

This is mostly Perf_Vector* tests, but the full list from one job was as follows:

``` All Zero Measurement tests:

Boxing.InterfaceTypeCheckAndCall
CastingPerf.CheckArrayIsVariantGenericInterfaceReflection
Constructors.ArrayAsSpanStartLength
Constructors.MemoryMarshalCreateReadOnlySpan
Constructors.MemoryMarshalCreateSpan
Constructors.ReadOnlySpanFromArray
Constructors.ReadOnlySpanFromArrayStartLength
Constructors.ReadOnlySpanImplicitCastFromSpan
Constructors_ValueTypesOnly.ReadOnlyFromPointerLength
Constructors_ValueTypesOnly.ReadOnlyFromPointerLength
Constructors_ValueTypesOnly.SpanFromPointerLength
Constructors_ValueTypesOnly.ReadOnlyFromPointerLength
Constructors_ValueTypesOnly.SpanFromPointerLength
IsEmpty.Stack
IsEmpty.Stack
IsEmpty.Stack
IsEmpty.Stack
MemoryMarshal.AsBytes
MemoryMarshal.CastToInt
MemoryMarshal.AsBytes
MemoryMarshal.CastToInt
MemoryMarshal.GetReference
MemoryMarshal.GetReference
Perf_DateTime.op_Subtraction
Perf_Enum.Compare
Perf_Enum.HasFlag
Perf_Guid.EqualsNotSame
Perf_Guid.EqualsOperator
Perf_Guid.EqualsSame
Perf_Guid.NotEqualsOperator
Perf_Lazy.ValueFromAlreadyInitialized
Perf_Plane.CreateFromScalarXYZDBenchmark
Perf_Plane.CreateFromVector3WithScalarDBenchmark
Perf_Plane.CreateFromVector4Benchmark
Perf_Plane.DotNormalBenchmark
Perf_Plane.TransformByQuaternionBenchmark
Perf_Quaternion.AddBenchmark
Perf_Quaternion.AddOperatorBenchmark
Perf_Quaternion.CreateFromScalarXYZWBenchmark
Perf_Quaternion.CreateFromVector3WithScalarBenchmark
Perf_Quaternion.DotBenchmark
Perf_Quaternion.EqualityOperatorBenchmark
Perf_Quaternion.IdentityBenchmark
Perf_Quaternion.InequalityOperatorBenchmark
Perf_Quaternion.IsIdentityBenchmark
Perf_Quaternion.MultiplyByScalarBenchmark
Perf_Quaternion.MultiplyByScalarOperatorBenchmark
Perf_Quaternion.NegateBenchmark
Perf_Quaternion.NegationOperatorBenchmark
Perf_Quaternion.SubtractionOperatorBenchmark
Perf_TimeSpan.FromSeconds
Perf_Volatile.Read_double
Perf_Volatile.Write_double
StringValuesBenchmark.Ctor_Array
StringValuesBenchmark.Ctor_String

Perf_Vector2.DivideByVector2OperatorBenchmark
Perf_VectorOf.AddBenchmark
Perf_VectorOf.CountBenchmark
Perf_VectorOf.MaxBenchmark
Perf_VectorOf.DivideBenchmark
Perf_VectorOf.AddOperatorBenchmark
Perf_VectorOf.AndNotBenchmark
Perf_VectorOf.OneBenchmark
Perf_Vector128Of.LessThanOrEqualBenchmark
Perf_Vector128Of.CountBenchmark
Perf_Vector128Of.NegateBenchmark
Perf_Vector128Of.LessThanOrEqualBenchmark
Perf_Vector128Of.CountBenchmark
Perf_Vector128Of.NegateBenchmark
Perf_Vector2.DivideByScalarOperatorBenchmark
Perf_VectorOf.AddOperatorBenchmark
Perf_VectorOf.AndNotBenchmark
Perf_VectorOf.SubtractionOperatorBenchmark
Perf_VectorOf.GreaterThanBenchmark
Perf_VectorOf.ExclusiveOrOperatorBenchmark
Perf_VectorOf.BitwiseAndOperatorBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_Vector128Float.OnesComplementOperatorBenchmark
Perf_Vector128Int.EqualsAllBenchmark
Perf_Vector128Of.BitwiseAndBenchmark
Perf_Vector128Of.OnesComplementOperatorBenchmark
Perf_Vector128Of.OnesComplementOperatorBenchmark
Perf_Vector3.UnitZBenchmark
Perf_VectorOf.SubtractionOperatorBenchmark
Perf_VectorOf.GreaterThanBenchmark
Perf_VectorOf.ExclusiveOrOperatorBenchmark
Perf_VectorOf.BitwiseAndOperatorBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_Vector128.ConvertLongToDoubleBenchmark
Perf_Vector128Of.AbsBenchmark
Perf_Vector128Of.AbsBenchmark
Perf_Vector2.DistanceBenchmark
Perf_Vector3.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_VectorOf.MultiplyBenchmark
Perf_VectorOf.EqualsStaticBenchmark
Perf_VectorOf.BitwiseOrOperatorBenchmark
Perf_VectorOf.BitwiseOrBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_VectorOf.AbsBenchmark
Perf_Vector128.ConvertULongToDoubleBenchmark
Perf_Vector128Int.LessThanAnyBenchmark
Perf_Vector128Of.GreaterThanAnyBenchmark
Perf_Vector128Of.InequalityOperatorBenchmark
Perf_Vector128Of.GreaterThanAnyBenchmark
Perf_Vector128Of.InequalityOperatorBenchmark
Perf_Vector2.DistanceSquaredBenchmark
Perf_Vector3.AddOperatorBenchmark
Perf_Vector4.DivideBenchmark
Perf_VectorOf.AbsBenchmark
Perf_VectorOf.MultiplyOperatorBenchmark
Perf_VectorOf.ConditionalSelectBenchmark
Perf_VectorOf.AddBenchmark
Perf_VectorOf.CountBenchmark
Perf_Vector128.ConvertFloatToIntBenchmark
Perf_Vector128Int.LessThanOrEqualBenchmark
Perf_Vector128Of.CountBenchmark
Perf_Vector128Of.NegateBenchmark
Perf_Vector128Of.LessThanOrEqualBenchmark
Perf_Vector128Of.CountBenchmark
Perf_Vector128Of.NegateBenchmark
Perf_Vector2.DivideByVector2Benchmark
Perf_Vector3.DivideByVector3OperatorBenchmark
Perf_Vector4.DivideByScalarBenchmark
Perf_VectorOf.AddBenchmark
Perf_VectorOf.CountBenchmark
Perf_VectorOf.AddOperatorBenchmark
Perf_VectorOf.AndNotBenchmark
Perf_VectorOf.OneBenchmark
Perf_VectorOf.SubtractionOperatorBenchmark
Perf_Vector128Float.EqualsAllBenchmark
Perf_Vector128Of.OnesComplementOperatorBenchmark
Perf_Vector128Of.EqualsAllBenchmark
Perf_Vector128Of.OnesComplementOperatorBenchmark
Perf_Vector128Of.EqualsAllBenchmark
Perf_Vector2.DivideByScalarBenchmark
Perf_Vector3.DivideByScalarOperatorBenchmark
Perf_VectorOf.AndNotBenchmark
Perf_VectorOf.OneBenchmark
Perf_VectorOf.SubtractionOperatorBenchmark
Perf_VectorOf.GreaterThanBenchmark
Perf_VectorOf.ExclusiveOrOperatorBenchmark
Perf_VectorOf.BitwiseAndOperatorBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_Vector128.ConvertIntToFloatBenchmark
Perf_Vector128Float.EqualsAnyBenchmark
Perf_Vector128Of.GreaterThanOrEqualAnyBenchmark
Perf_Vector128Of.EqualsAnyBenchmark
Perf_Vector128Of.GreaterThanOrEqualAnyBenchmark
Perf_Vector128Of.EqualsAnyBenchmark
Perf_Vector3.TransformByQuaternionBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_VectorOf.EqualsStaticBenchmark
Perf_VectorOf.BitwiseOrOperatorBenchmark
Perf_VectorOf.BitwiseOrBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_VectorOf.AbsBenchmark
Perf_Vector128.ConvertUIntToFloatBenchmark
Perf_Vector128Int.EqualityOperatorBenchmark
Perf_Vector128Of.UnaryNegateOperatorBenchmark
Perf_Vector128Of.MaxBenchmark
Perf_Vector128Of.UnaryNegateOperatorBenchmark
Perf_Vector128Of.MaxBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_VectorOf.AbsBenchmark
Perf_VectorOf.DivisionOperatorBenchmark
Perf_VectorOf.ConditionalSelectBenchmark
Perf_VectorOf.AddBenchmark
Perf_Vector128Of.AbsBenchmark
Perf_Vector128Of.MinBenchmark
Perf_Vector128Of.AbsBenchmark
Perf_Vector128Of.MinBenchmark
Perf_Vector3.MultiplyOperatorBenchmark
Perf_Vector4.CreateFromScalar
Perf_VectorOf.ConditionalSelectBenchmark
Perf_VectorOf.AddBenchmark
Perf_VectorOf.CountBenchmark
Perf_VectorOf.MaxBenchmark
Perf_VectorOf.AddOperatorBenchmark
Perf_VectorOf.AndNotBenchmark
Perf_Vector128Float.GreaterThanAnyBenchmark
Perf_Vector128Int.InequalityOperatorBenchmark
Perf_Vector128Of.LessThanAnyBenchmark
Perf_Vector128Of.LessThanAnyBenchmark
Perf_Vector128Of.GreaterThanAnyBenchmark
Perf_Vector3.MultiplyByScalarOperatorBenchmark
Perf_Vector4.CreateFromVector3WithScalarBenchmark
Perf_VectorOf.AddOperatorBenchmark
Perf_VectorOf.AndNotBenchmark
Perf_VectorOf.SubtractionOperatorBenchmark
Perf_VectorOf.GreaterThanBenchmark
Perf_VectorOf.ExclusiveOrOperatorBenchmark
Perf_VectorOf.BitwiseAndOperatorBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_Vector128Float.CountBenchmark
Perf_Vector128Int.NegateBenchmark
Perf_Vector128Of.CountBenchmark
Perf_Vector128Of.NegateBenchmark
Perf_Vector128Of.CountBenchmark
Perf_Vector128Of.NegateBenchmark
Perf_Vector3.SubtractOperatorBenchmark
Perf_Vector4.CreateFromVector2WithScalarBenchmark
Perf_VectorOf.BitwiseAndOperatorBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_VectorOf.MultiplyBenchmark
Perf_VectorOf.EqualsStaticBenchmark
Perf_VectorOf.BitwiseOrBenchmark
Perf_Vector128Int.OnesComplementOperatorBenchmark
Perf_Vector128Of.EqualsAllBenchmark
Perf_Vector128Of.OnesComplementOperatorBenchmark
Perf_Vector128Of.EqualsAllBenchmark
Perf_Vector128Of.OnesComplementOperatorBenchmark
Perf_Vector4.MultiplyOperatorBenchmark
Perf_VectorOf.BitwiseAndOperatorBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_VectorOf.EqualsStaticBenchmark
Perf_VectorOf.BitwiseOrOperatorBenchmark
Perf_VectorOf.BitwiseOrBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_Vector128Float.SquareRootBenchmark
Perf_Vector128Int.EqualsAnyBenchmark
Perf_Vector128Of.EqualsAnyBenchmark
Perf_Vector128Of.EqualsAnyBenchmark
Perf_Vector2.LerpBenchmark
Perf_Vector3.NegateOperatorBenchmark
Perf_Vector4.CreateFromScalarXYZWBenchmark
Perf_VectorOf.EqualsStaticBenchmark
Perf_VectorOf.BitwiseOrOperatorBenchmark
Perf_VectorOf.BitwiseOrBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_VectorOf.XorBenchmark
Perf_VectorOf.MultiplyOperatorBenchmark
Perf_VectorOf.ConditionalSelectBenchmark
Perf_Vector128Float.GreaterThanOrEqualAnyBenchmark
Perf_Vector128Of.EqualsAnyBenchmark
Perf_Vector128Of.LessThanOrEqualAnyBenchmark
Perf_Vector128Of.EqualsAnyBenchmark
Perf_Vector128Of.LessThanOrEqualAnyBenchmark
Perf_Vector3.AbsBenchmark
Perf_Vector4.OneBenchmark
Perf_VectorOf.ConditionalSelectBenchmark
Perf_VectorOf.AddBenchmark
Perf_VectorOf.CountBenchmark
Perf_VectorOf.MaxBenchmark
Perf_Vector128Int.UnaryNegateOperatorBenchmark
Perf_Vector128Of.EqualityOperatorBenchmark
Perf_Vector128Of.EqualsBenchmark
Perf_Vector128Of.UnaryNegateOperatorBenchmark
Perf_Vector128Of.EqualityOperatorBenchmark
Perf_Vector128Of.EqualsBenchmark
Perf_Vector128Of.UnaryNegateOperatorBenchmark
Perf_Vector3.AddFunctionBenchmark
Perf_Vector4.UnitXBenchmark
Perf_VectorOf.AddOperatorBenchmark
Perf_VectorOf.AndNotBenchmark
Perf_VectorOf.OneBenchmark
Perf_VectorOf.SquareRootBenchmark
Perf_VectorOf.GreaterThanBenchmark
Perf_VectorOf.ExclusiveOrOperatorBenchmark
Perf_Vector128Int.AbsBenchmark
Perf_Vector128Of.AbsBenchmark
Perf_Vector2.CreateFromScalar
Perf_Vector4.UnitYBenchmark
Perf_VectorOf.ExclusiveOrOperatorBenchmark
Perf_VectorOf.BitwiseAndOperatorBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_VectorOf.MultiplyBenchmark
Perf_VectorOf.EqualsStaticBenchmark
Perf_Vector128Float.LessThanAnyBenchmark
Perf_Vector128Of.GreaterThanAnyBenchmark
Perf_Vector128Of.InequalityOperatorBenchmark
Perf_Vector128Of.InequalityOperatorBenchmark
Perf_Vector128Of.LessThanAnyBenchmark
Perf_Vector2.CreateFromScalarXYBenchmark
Perf_Vector3.CrossBenchmark
Perf_Vector4.UnitZBenchma
Perf_VectorOf.MultiplyBenchmark
Perf_VectorOf.EqualsStaticBenchmark
Perf_VectorOf.BitwiseOrOperatorBenchmark
Perf_VectorOf.BitwiseOrBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_VectorOf.XorBenchmark
Perf_VectorOf.MultiplyOperatorBenchmark
Perf_Vector128Of.CountBenchmark
Perf_Vector128Of.LessThanOrEqualBenchmark
Perf_Vector128Of.CountBenchmark
Perf_Vector128Of.LessThanOrEqualBenchmark
Perf_Vector2.OneBenchmark
Perf_Vector4.UnitWBenchmark
Perf_VectorOf.MultiplyOperatorBenchmark
Perf_VectorOf.ConditionalSelectBenchmark
Perf_VectorOf.AddBenchmark
Perf_VectorOf.CountBenchmark
Perf_Vector128Of.OnesComplementOperatorBenchmark
Perf_Vector128Of.EqualsAllBenchmark
Perf_Vector128Of.OnesComplementOperatorBenchmark
Perf_Vector128Of.EqualsAllBenchmark
Perf_Vector2.UnitXBenchmark
Perf_Vector3.DistanceSquaredBenchmark
Perf_Vector4.ZeroBenchmark
Perf_VectorOf.CountBenchmark
Perf_VectorOf.MaxBenchmark
Perf_VectorOf.AndNotBenchmark
Perf_VectorOf.OneBenchmark
Perf_VectorOf.SubtractionOperatorBenchmark
Perf_VectorOf.GreaterThanBenchmark
Perf_Vector128Float.LessThanOrEqualAnyBenchmark
Perf_Vector128Of.SquareRootBenchmark
Perf_Vector128Of.EqualsAnyBenchmark
Perf_Vector128Of.SquareRootBenchmark
Perf_Vector128Of.EqualsAnyBenchmark
Perf_Vector2.UnitYBenchmark
Perf_Vector3.DivideByVector3Benchmark
Perf_Vector4.AddOperatorBenchmark
Perf_VectorOf.OneBenchmark
Perf_VectorOf.SubtractionOperatorBenchmark
Perf_VectorOf.GreaterThanBenchmark
Perf_VectorOf.ExclusiveOrOperatorBenchmark
Perf_VectorOf.BitwiseAndOperatorBenchmark
Perf_VectorOf.BitwiseAndBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_Vector128Float.EqualityOperatorBenchmark
Perf_Vector128Int.ConditionalSelectBenchmark
Perf_Vector128Of.EqualsBenchmark
Perf_Vector128Of.EqualityOperatorBenchmark
Perf_Vector128Of.EqualsBenchmark
Perf_Vector128Of.EqualityOperatorBenchmark
Perf_Vector2.ZeroBenchmark
Perf_Vector3.DivideByScalarBenchmark
Perf_Vector4.DivideOperatorBenchmark
Perf_VectorOf.ZeroBenchmark
Perf_VectorOf.SubtractBenchmark
Perf_VectorOf.MultiplyBenchmark
Perf_VectorOf.EqualsStaticBenchmark
Perf_VectorOf.BitwiseOrOperatorBenchmark
Perf_VectorOf.BitwiseOrBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_VectorOf.AbsBenchmark
Perf_Vector2.AddOperatorBenchmark
Perf_Vector3.DotBenchmark
Perf_Vector4.DivideByScalarOperatorBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_VectorOf.XorBenchmark
Perf_VectorOf.MultiplyOperatorBenchmark
Perf_VectorOf.ConditionalSelectBenchmark
Perf_VectorOf.AddBenchmark
Perf_VectorOf.CountBenchmark
Perf_Vector128Float.InequalityOperatorBenchmark
Perf_Vector128Of.LessThanAnyBenchmark
Perf_Vector128Of.GreaterThanAnyBenchmark
Perf_Vector128Of.InequalityOperatorBenchmark
Perf_Vector128Of.LessThanAnyBenchmark
Perf_Vector128Of.GreaterThanAnyBenchmark
Perf_Vector128Of.InequalityOperatorBenchmark
Perf_Vector2.TransformNormalByMatrix4x4Benchmark
Perf_Vector4.MultiplyByScalarOperatorBenchmark
Perf_VectorOf.BitwiseOrOperatorBenchmark
Perf_VectorOf.BitwiseOrBenchmark
Perf_VectorOf.LessThanBenchmark
Perf_VectorOf.AbsBenchmark
Perf_VectorOf.ConditionalSelectBenchmark
Perf_Vector128Of.EqualityOperatorBenchmark
Perf_Vector128Of.EqualsBenchmark
Perf_Vector128Of.UnaryNegateOperatorBenchmark
Perf_Vector128Of.EqualityOperatorBenchmark
Perf_Vector128Of.EqualsBenchmark
Perf_Vector128Of.UnaryNegateOperatorBenchmark
Perf_Vector2.MultiplyOperatorBenchmark
Perf_Vector3.CreateFromScalar
Perf_Vector4.SubtractOperatorBenchmark
Perf_VectorOf.ConditionalSelectBenchmark
Perf_VectorOf.AddBenchmark
Perf_VectorOf.CountBenchmark
Perf_VectorOf

@LoopedBard3 LoopedBard3 added the impact test coverage test maybe disabled due to this issue label Oct 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
impact test coverage test maybe disabled due to this issue
Projects
None yet
Development

No branches or pull requests

1 participant