public AutoPerformanceLevelController(IDevicePerformanceControl perfControl, IPerformanceStatus perfStat, IThermalStatus thermalStat) { UpdateInterval = 5.0f; TargetFrameTime = -1.0f; AllowedCpuActiveTimeRatio = 0.8f; AllowedGpuActiveTimeRatio = 0.8f; GpuLevelBounceAvoidanceThreshold = 10.0f; CpuLevelBounceAvoidanceThreshold = 10.0f; MinTargetFrameRateHitTime = 10.0f; MaxTemperatureLevel = 0.9f; m_PerfStats = perfStat; m_PerfControl = perfControl; m_ThermalStats = thermalStat; perfStat.PerformanceBottleneckChangeEvent += (PerformanceBottleneckChangeEventArgs ev) => OnBottleneckChange(ev); }
public AutoPerformanceLevelController(IDevicePerformanceControl perfControl, IPerformanceStatus perfStat, IThermalStatus thermalStat, Provider.AdaptivePerformanceSubsystem subsystem) { UpdateInterval = 5.0f; TargetFrameTime = -1.0f; AllowedCpuActiveTimeRatio = 0.8f; AllowedGpuActiveTimeRatio = 0.9f; GpuLevelBounceAvoidanceThreshold = 10.0f; CpuLevelBounceAvoidanceThreshold = 10.0f; MinTargetFrameRateHitTime = 10.0f; MaxTemperatureLevel = 0.9f; m_PerfStats = perfStat; m_PerfControl = perfControl; m_ThermalStats = thermalStat; if (subsystem.Version == m_Version) { m_MinCPULevel = 1; } perfStat.PerformanceBottleneckChangeEvent += (PerformanceBottleneckChangeEventArgs ev) => OnBottleneckChange(ev); AdaptivePerformanceAnalytics.RegisterFeature(m_featureName, m_Enabled); }