Skip to content
Snippets Groups Projects
Forked from Dhina17 / platform_frameworks_base
Source project has a limited visibility.
  • Siarhei Vishniakou's avatar
    d11f38f6
    Send input event id to SurfaceFlinger · d11f38f6
    Siarhei Vishniakou authored
    The application receives input events and produces graphic buffers in
    response. We are interested in measuring the total time that the input
    event takes to process, from the moment it's received on the device, to
    the moment that the image is displayed on the screen.
    
    To do this, we need to understand which input event produced a specific
    buffer. In this CL, we are sending the input event id from FrameInfo to
    SurfaceFlinger. This event id will later be used to identify a specific
    frame, and provide the frame timing information to inputflinger.
    
    Inputflinger will be able to use this information to reconstruct the
    complete event timeline, and record metrics on the duration of each
    input / graphics processing stage. This will allow us to optimize
    end-to-end touch latency.
    
    In the current CL, we are using 'NewestInputEvent' as the inputEventId.
    That's not quite correct. Today, this field contains the timestamp of
    the input event. Therefore, we will simply pass the truncated
    timestamp instead of proper input event id. We will fix this in a
    separate CL by providing input event id to FrameInfo.
    
    Design doc: https://docs.google.com/document/d/1G3bLaZYSmbe6AKcL-6ZChvrw_B_LXEz29Z6Ed9QoYXY/edit#
    Bug: 169866723
    Test: printed input event id at the site of SurfaceFrame creation in
    FrameTimeline.cpp
    
    Change-Id: Ia90337bb2f000e9c93a4db04d9dd6ea9ea153520
    d11f38f6
    History
    Send input event id to SurfaceFlinger
    Siarhei Vishniakou authored
    The application receives input events and produces graphic buffers in
    response. We are interested in measuring the total time that the input
    event takes to process, from the moment it's received on the device, to
    the moment that the image is displayed on the screen.
    
    To do this, we need to understand which input event produced a specific
    buffer. In this CL, we are sending the input event id from FrameInfo to
    SurfaceFlinger. This event id will later be used to identify a specific
    frame, and provide the frame timing information to inputflinger.
    
    Inputflinger will be able to use this information to reconstruct the
    complete event timeline, and record metrics on the duration of each
    input / graphics processing stage. This will allow us to optimize
    end-to-end touch latency.
    
    In the current CL, we are using 'NewestInputEvent' as the inputEventId.
    That's not quite correct. Today, this field contains the timestamp of
    the input event. Therefore, we will simply pass the truncated
    timestamp instead of proper input event id. We will fix this in a
    separate CL by providing input event id to FrameInfo.
    
    Design doc: https://docs.google.com/document/d/1G3bLaZYSmbe6AKcL-6ZChvrw_B_LXEz29Z6Ed9QoYXY/edit#
    Bug: 169866723
    Test: printed input event id at the site of SurfaceFrame creation in
    FrameTimeline.cpp
    
    Change-Id: Ia90337bb2f000e9c93a4db04d9dd6ea9ea153520
Code owners
Assign users and groups as approvers for specific file changes. Learn more.