Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b7039c6a authored by John Reck's avatar John Reck
Browse files

Reduce number of weakrefs per frame

Disable end-to-end input latency metric to reduce the
number of JNI WeakGlobalRef acquires per-frame.

Bug: 189738006
Test: Observe trace section no longer appears in calculator
Change-Id: I062dad8e7cec93cca5599e51d2b0b1a1b6e39a07
parent 315a2678
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -252,6 +252,13 @@ public final class ViewRootImpl implements ViewParent,
     */
    private static final boolean MT_RENDERER_AVAILABLE = true;

    /**
     * Whether or not to report end-to-end input latency. Disabled temporarily as a
     * risk mitigation against potential jank caused by acquiring a weak reference
     * per frame
     */
    private static final boolean ENABLE_INPUT_LATENCY_TRACKING = false;

    /**
     * Set this system property to true to force the view hierarchy to render
     * at 60 Hz. This can be used to measure the potential framerate.
@@ -1207,7 +1214,7 @@ public final class ViewRootImpl implements ViewParent,
                    mInputEventReceiver = new WindowInputEventReceiver(inputChannel,
                            Looper.myLooper());

                    if (mAttachInfo.mThreadedRenderer != null) {
                    if (ENABLE_INPUT_LATENCY_TRACKING && mAttachInfo.mThreadedRenderer != null) {
                        InputMetricsListener listener = new InputMetricsListener();
                        mHardwareRendererObserver = new HardwareRendererObserver(
                                listener, listener.data, mHandler, true /*waitForPresentTime*/);
+1 −0
Original line number Diff line number Diff line
@@ -644,6 +644,7 @@ void CanvasContext::reportMetricsWithPresentTime() {
    if (mNativeSurface == nullptr) {
        return;
    }
    ATRACE_CALL();
    FrameInfo* forthBehind;
    int64_t frameNumber;
    {  // acquire lock