diff options
Diffstat (limited to 'Ryujinx.HLE/PerformanceStatistics.cs')
| -rw-r--r-- | Ryujinx.HLE/PerformanceStatistics.cs | 34 |
1 files changed, 12 insertions, 22 deletions
diff --git a/Ryujinx.HLE/PerformanceStatistics.cs b/Ryujinx.HLE/PerformanceStatistics.cs index fdc1e99f..b254356c 100644 --- a/Ryujinx.HLE/PerformanceStatistics.cs +++ b/Ryujinx.HLE/PerformanceStatistics.cs @@ -1,5 +1,4 @@ using Ryujinx.Common; -using System.Diagnostics; using System.Timers; namespace Ryujinx.HLE @@ -7,9 +6,8 @@ namespace Ryujinx.HLE public class PerformanceStatistics { private const double FrameRateWeight = 0.5; - - private const int FrameTypeGame = 0; - private const int PercentTypeFifo = 0; + private const int FrameTypeGame = 0; + private const int PercentTypeFifo = 0; private double[] _averageFrameRate; private double[] _accumulatedFrameTime; @@ -50,7 +48,6 @@ namespace Ryujinx.HLE _resetTimer = new Timer(1000); _resetTimer.Elapsed += ResetTimerElapsed; - _resetTimer.AutoReset = true; _resetTimer.Start(); @@ -75,10 +72,8 @@ namespace Ryujinx.HLE frameRate = _framesRendered[frameType] / _accumulatedFrameTime[frameType]; } - _averageFrameRate[frameType] = LinearInterpolate(_averageFrameRate[frameType], frameRate); - - _framesRendered[frameType] = 0; - + _averageFrameRate[frameType] = LinearInterpolate(_averageFrameRate[frameType], frameRate); + _framesRendered[frameType] = 0; _accumulatedFrameTime[frameType] = 0; } } @@ -96,15 +91,13 @@ namespace Ryujinx.HLE percent = (_accumulatedActiveTime[percentType] / _percentTime[percentType]) * 100; } - _averagePercent[percentType] = percent; - - _percentTime[percentType] = 0; - + _averagePercent[percentType] = percent; + _percentTime[percentType] = 0; _accumulatedActiveTime[percentType] = 0; } } - private double LinearInterpolate(double lhs, double rhs) + private static double LinearInterpolate(double lhs, double rhs) { return lhs * (1.0 - FrameRateWeight) + rhs * FrameRateWeight; } @@ -133,26 +126,23 @@ namespace Ryujinx.HLE private void EndPercentTime(int percentType) { - double currentTime = PerformanceCounter.ElapsedTicks * _ticksToSeconds; - - double elapsedTime = currentTime - _percentLastEndTime[percentType]; + double currentTime = PerformanceCounter.ElapsedTicks * _ticksToSeconds; + double elapsedTime = currentTime - _percentLastEndTime[percentType]; double elapsedActiveTime = currentTime - _percentStartTime[percentType]; lock (_percentLock[percentType]) { _accumulatedActiveTime[percentType] += elapsedActiveTime; - - _percentTime[percentType] += elapsedTime; + _percentTime[percentType] += elapsedTime; } _percentLastEndTime[percentType] = currentTime; - _percentStartTime[percentType] = 0; + _percentStartTime[percentType] = 0; } private void RecordFrameTime(int frameType) { double currentFrameTime = PerformanceCounter.ElapsedTicks * _ticksToSeconds; - double elapsedFrameTime = currentFrameTime - _previousFrameTime[frameType]; _previousFrameTime[frameType] = currentFrameTime; @@ -175,4 +165,4 @@ namespace Ryujinx.HLE return _averagePercent[PercentTypeFifo]; } } -} +}
\ No newline at end of file |
