docs.unity3d.com
    Show / Hide Table of Contents

    Struct PerformanceDataRecord

    The performance data record stores all information about the thermal and performance status and delivers it from the provider subsystem to Adaptive Performance for further processing.

    Inherited Members
    ValueType.Equals(Object)
    ValueType.GetHashCode()
    ValueType.ToString()
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Namespace: UnityEngine.AdaptivePerformance.Provider
    Syntax
    public struct PerformanceDataRecord

    Properties

    ChangeFlags

    A bitset of features which indicate if their value changed in the last frame or at startup. Unsupported features will never change. Fields not changing always have valid data as long as its capability is supported.

    Declaration
    public Feature ChangeFlags { readonly get; set; }
    Property Value
    Type Description
    Feature

    Bitset

    ClusterInfo

    Current CPU cluster information information. Includes number of big, medium and small cores use at the application startup.

    Declaration
    public ClusterInfo ClusterInfo { readonly get; set; }
    Property Value
    Type Description
    ClusterInfo

    CpuFrameTime

    The time in seconds spent by the CPU for rendering the last complete frame. Has changed when CpuFrameTime bit is set in ChangeFlags.

    Declaration
    public float CpuFrameTime { readonly get; set; }
    Property Value
    Type Description
    Single

    CpuPerformanceBoost

    The currently active CPU boost state. This is typically true if previously enabled with EnableCpuBoost() once the boost is successfully applied. Adaptive Performance might also change this level on its own. This typically happens when the device is thermal throttling or when EnableCpuBoost() fails. Once the CPU boost is enabled it is active until you receive a callback that it is disabled. CPU boost level has changed when CpuPerformanceBoost bit is set in ChangeFlags.

    Declaration
    public bool CpuPerformanceBoost { readonly get; set; }
    Property Value
    Type Description
    Boolean

    CpuPerformanceLevel

    The currently active CPU performance level. This is typically the value previously set with SetPerformanceLevel(ref Int32, ref Int32) once the levels are successfully applied. Adaptive Performance might also change this level on its own. This typically happens when the device is thermal throttling or when SetPerformanceLevel(ref Int32, ref Int32) failed. CPU performance level has a value in the range of [MinCpuPerformanceLevel, MaxCpuPerformanceLevel], or UnknownPerformanceLevel. A value of UnknownPerformanceLevel means that Adaptive Performance took control of performance levels. CPU performance level has changed when CpuPerformanceLevel bit is set in ChangeFlags.

    Declaration
    public int CpuPerformanceLevel { readonly get; set; }
    Property Value
    Type Description
    Int32

    GpuFrameTime

    The time in seconds spent by the GPU for rendering the last complete frame. Has changed when GpuFrameTime bit is set in ChangeFlags.

    Declaration
    public float GpuFrameTime { readonly get; set; }
    Property Value
    Type Description
    Single

    GpuPerformanceBoost

    The currently active GPU boost state. This is typically true if previously enabled with EnableGpuBoost() once the boost is successfully applied. Adaptive Performance might also change this level on its own. This typically happens when the device is thermal throttling or when EnableGpuBoost() fails. Once the GPU boost is enabled it is active until you receive a callback that it is disabled. GPU boost level has changed when GpuPerformanceBoost bit is set in ChangeFlags.

    Declaration
    public bool GpuPerformanceBoost { readonly get; set; }
    Property Value
    Type Description
    Boolean

    GpuPerformanceLevel

    The currently active GPU performance level. This is typically the value previously set with SetPerformanceLevel(ref Int32, ref Int32) once the levels are successfully applied. Adaptive Performance might also change this level on its own. This typically happens when the device is thermal throttling or when SetPerformanceLevel(ref Int32, ref Int32) failed. GPU performance level has a value in the range of [MinCpuPerformanceLevel, MaxGpuPerformanceLevel], or UnknownPerformanceLevel. A value of UnknownPerformanceLevel means that Adaptive Performance took control of performance levels. GPU performance level has changed when GpuPerformanceLevel bit is set in ChangeFlags.

    Declaration
    public int GpuPerformanceLevel { readonly get; set; }
    Property Value
    Type Description
    Int32

    OverallFrameTime

    The total time in seconds spent for the frame. Has changed when OverallFrameTime bit is set in ChangeFlags.

    Declaration
    public float OverallFrameTime { readonly get; set; }
    Property Value
    Type Description
    Single

    PerformanceLevelControlAvailable

    True if =performance levels can currently be controlled manually and aren't controlled by Adaptive Performance or the operating system. Has changed when PerformanceLevelControl bit is set in ChangeFlags.

    Declaration
    public bool PerformanceLevelControlAvailable { readonly get; set; }
    Property Value
    Type Description
    Boolean

    PerformanceMode

    Current Performance mode information.

    Declaration
    public PerformanceMode PerformanceMode { readonly get; set; }
    Property Value
    Type Description
    PerformanceMode

    TemperatureLevel

    The current normalized temperature level in the range of [0.0, 1.0], or -1.0 when not supported or not available right now. A level of 1.0 means that the device is thermal throttling. The temperature level has changed when the TemperatureLevel bit is set in ChangeFlags.

    Declaration
    public float TemperatureLevel { readonly get; set; }
    Property Value
    Type Description
    Single

    Temperature level in the range of [0.0, 1.0] or -1.0

    TemperatureTrend

    The current temperature trend in the range of [-1.0, 1.0] that is a metric of temperature change over time. The temperature trend is constant at 0.0 in case the feature is not supported. The temperature trend has changed when TemperatureTrend bit is set in ChangeFlags.

    Declaration
    public float TemperatureTrend { readonly get; set; }
    Property Value
    Type Description
    Single

    Temperature trend in the range of [-1.0, 1.0]

    WarningLevel

    The current warning level as documented in WarningLevel. The warning level has changed when WarningLevel bit is set in ChangeFlags.

    Declaration
    public WarningLevel WarningLevel { readonly get; set; }
    Property Value
    Type Description
    WarningLevel

    The current warning level

    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023