Skip to content
71 changes: 35 additions & 36 deletions Assets/Tests/InputSystem/CorePerformanceTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public void Performance_MakeCircles()
{
SpriteUtilities.CreateCircleSprite(16, new Color32(255, 255, 255, 255));
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -62,7 +62,7 @@ public void Performance_Update10Gamepads()
InputSystem.QueueStateEvent(gamepads[i], default(GamepadState));
InputSystem.Update();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -79,7 +79,7 @@ public void Performance_UpdateMouse100TimesInFrame()
InputSystem.QueueStateEvent(mouse, default(MouseState));
InputSystem.Update();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -110,7 +110,7 @@ public void Performance_TwoTouchesOverThreeFrames(bool enableEnhancedTouch)
EndTouch(2, new Vector2(111, 222), queueEventOnly: true);
InputSystem.Update();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -131,7 +131,7 @@ public void Performance_ReadEveryKey()
key.ReadValue();
}
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -155,7 +155,7 @@ public void Performance_ReadControl(string deviceLayout, string controlPath)
throw new NotImplementedException();

Measure.Method(method)
.MeasurementCount(200)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -172,7 +172,7 @@ public void Performance_CreateDevice(string layoutName)
InputControlLayout.s_Layouts.precompiledLayouts.Clear();

Measure.Method(() => InputDevice.Build<InputDevice>(layoutName))
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -186,7 +186,7 @@ public void Performance_CreateDevice(string layoutName)
public void Performance_CreatePrecompiledDevice(string layoutName)
{
Measure.Method(() => InputDevice.Build<InputDevice>(layoutName))
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -200,7 +200,7 @@ public void Performance_TriggerAction()
action.Enable();

Measure.Method(() => PressAndRelease(gamepad.buttonSouth))
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -216,7 +216,7 @@ public void Performance_ReadActionValue_InCallback()
action.performed += ctx => ctx.ReadValue<float>();

Measure.Method(() => PressAndRelease(gamepad.buttonSouth))
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -232,7 +232,7 @@ public void Performance_ReadActionValue()
Press(gamepad.buttonSouth);

Measure.Method(() => action.ReadValue<float>())
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -252,7 +252,7 @@ public void Performance_ListenForUnpairedDeviceActivity()
BeginTouch(1, new Vector2(123, 234));
EndTouch(1, new Vector2(234, 345));
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -293,7 +293,7 @@ public unsafe void Performance_SearchForChangedButtonInEvent_Manually()
}
Assert.That(foundIt, Is.True);
})
.MeasurementCount(500)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -327,7 +327,7 @@ public void Performance_SearchForChangedButtonInEvent_UsingEnumerateChangedContr
}
Assert.That(foundIt, Is.True);
})
.MeasurementCount(500)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -367,7 +367,7 @@ public void Performance_AutoSwitchingOfControlSchemesInPlayerInput_UnrelatedDevi
InputSystem.QueueStateEvent(mouse, new MouseState { position = new Vector2(678, 789)});
InputSystem.Update();
})
.MeasurementCount(500)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -405,7 +405,7 @@ public void Performance_AutoSwitchingOfControlSchemesInPlayerInput_SwitchBackAnd
PressAndRelease(gamepad.buttonSouth);
PressAndRelease(keyboard.spaceKey);
})
.MeasurementCount(500)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -427,7 +427,7 @@ public void Performance_Rebinding_OneSuccessfulCycle()
Assert.That(action.controls[0], Is.SameAs(gamepad.buttonNorth));
}
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -455,7 +455,7 @@ public void Performance_LookupActionByName(LookupByName lookup)
{
var _ = asset[(lookup == LookupByName.CaseDoesNotMatch ? "ACTION" : "action") + (int)(kActionCount * 0.75f)];
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -483,7 +483,7 @@ public void Performance_LookupActionByGuid()
{
Assert.That(asset[actionToFind.id.ToString()], Is.SameAs(actionToFind));
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand All @@ -507,7 +507,7 @@ public void Performance_MatchControlPathPrefix()
Assert.That(result3, Is.True);
Assert.That(result4, Is.False);
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -538,7 +538,7 @@ public void Performance_FindControlScheme(string device1, string device2 = null,
match.Dispose();
Assert.That(result, Is.EqualTo(success));
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -599,7 +599,7 @@ public void Performance_OptimizedControls_ReadingMousePosition100kTimes(Optimiza
for (var i = 0; i < 100000; ++i)
pos += mouse.position.ReadValue();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -642,7 +642,7 @@ public void Performance_OptimizedControls_ReadAndUpdateMousePosition1kTimes(Opti
}
}
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -685,7 +685,7 @@ public void Performance_OptimizedControls_ReadAndUpdateGamepad1kTimes(Optimizati
}
}
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(10)
.Run();
}
Expand Down Expand Up @@ -722,7 +722,7 @@ public void Performance_OptimizedControls_ReadAndUpdateGamepadNewValuesEveryFram
InputSystem.QueueStateEvent(gamepad, new GamepadState { leftStick = new Vector2(i / 1000f, i / 1000f) });
}
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(10)
.Run();
}
Expand Down Expand Up @@ -768,7 +768,7 @@ public void Performance_OptimizedControls_ReadAndUpdateKeyboard1kTimes(Optimizat
}
}
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(10)
.Run();
}
Expand Down Expand Up @@ -810,7 +810,7 @@ public void Performance_OptimizedControls_ReadAndUpdateKeyboardNewValuesEveryFra
InputSystem.QueueStateEvent(keyboard, new KeyboardState(Key.F));
}
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(10)
.Run();
}
Expand All @@ -836,7 +836,7 @@ public void Performance_OptimizedControls_UpdateOnly1kTimes(OptimizationTestType
{
CallUpdate();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.SampleGroup("Mouse Only")
.WarmupCount(10)
.Run();
Expand All @@ -849,7 +849,7 @@ public void Performance_OptimizedControls_UpdateOnly1kTimes(OptimizationTestType
{
CallUpdate();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.SampleGroup("Gamepad Only")
.WarmupCount(10)
.Run();
Expand Down Expand Up @@ -912,7 +912,7 @@ public void Performance_OptimizedControls_Gamepad_250PressAndUpdate_WasPressedTh
{
CallUpdate();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.SampleGroup("Gamepad Only")
.WarmupCount(10)
.Run();
Expand Down Expand Up @@ -975,7 +975,7 @@ public void Performance_OptimizedControls_Keyboard_250PressAndUpdate_WasPressedT
{
CallUpdate();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.SampleGroup("Keyboard Only")
.WarmupCount(10)
.Run();
Expand Down Expand Up @@ -1011,7 +1011,7 @@ public void Performance_OptimizedControls_EvaluateStaleControlReadsWhenGamepadSt
{
MethodToMeasure(gamepad);
}).SampleGroup("ReadValueCaching Expected With WORSE Performance")
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();

Expand Down Expand Up @@ -1039,7 +1039,7 @@ public void Performance_OptimizedControls_EvaluateStaleControlReadsWhenGamepadSt
{
MethodToMeasure(gamepad);
}).SampleGroup("ReadValueCaching Expected With BETTER Performance")
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();

Expand Down Expand Up @@ -1100,7 +1100,7 @@ public void Performance_OptimizedControls_ReadingPose4kTimes(OptimizationTestTyp
for (var i = 0; i < 4000; ++i)
poseControl.ReadValue();
})
.MeasurementCount(100)
.DynamicMeasurementCount()
.WarmupCount(5)
.Run();
}
Expand Down Expand Up @@ -1202,10 +1202,9 @@ public IEnumerator Performance_MeasureInputSystemFrameTimeWithProfilerMarkers_FP
public IEnumerator Performance_MeasureInputSystemFrameTimeWithProfilerMarkers_DoingNothing()
{
yield return Measure.Frames()
.WarmupCount(30)
.DontRecordFrametime()
.MeasurementCount(500)
.ProfilerMarkers(allInputSystemProfilerMarkers)
.WarmupCount(5)
.Run();
}

Expand Down