• Miguel Casas's avatar
    media/gpu/vaapi: batch submitting VABufferIDs for H264 decoding · 4579d553
    Miguel Casas authored
    This CL follows crrev.com/c/2393629 by batching up SubmitBuffer
    calls in the H264 decode accelerator.
    
    This is verified via chrome:tracing and codepen.io/miguelao/full/MMxGJw
    that plays 4 1280x546 H.264 videos at the same time. Tracing is captured
    for a few seconds, basically with this patch we have 2 SubmitBuffers()
    calls adding up to ~0.461ms/frame versus ToT individual SubmitBuffer()
    calls (4 of them) ~0.504ms in  total -- which gives an aggregate of
    about ~40us improvement, or savings of about ~10%. Since decoding itself
    takes about the 0.390ms/frame, savings are OKish, so let's take them.
    This is all on my BSW device (reks),
    
    Improvements are of course extremely small, the advantages of this CL
    are in reducing lock/unlock churn and associated contention. This
    benefit grows with the amount of decodes (e.g. Meet grid scenarios).
    
    Bug: b/166646505
    Change-Id: Id51bb6db39e4f7b9d67760f86b8f8963f20c2b2b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2405586Reviewed-by: default avatarJeffrey Kardatzke <jkardatzke@google.com>
    Commit-Queue: Miguel Casas <mcasas@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#806264}
    4579d553
h264_vaapi_video_decoder_delegate.cc 12.6 KB