• Show log

    Commit

  • Hash : 5ab2fa96
    Author : Jason Macnak
    Date : 2023-05-12T08:38:19

    Vulkan: Move texture QFOTs to syncState()
    
    ... (and getAttachmentRenderTarget() which is syncState()-like
    for deferred clear) so that QFOTs are not actually scheduled until
    first use. SurfaceFlinger optimistically creates EGL images and
    textures for AHBs in case it does need them in the future.
    However, the images and textures may go unused. Prior to this
    change, ANGLE would create pending QFOT barriers while importing
    AHBs into EGL images and GL textures. However, SurfaceFlinger may
    not be doing any "real work" (other than repeatedly creating and
    destroying EGL images and GL textures) which would result in the
    command buffers containing the QFOTs being flushed. This can
    result in a large build up of unreleased memory (as the
    VkDeviceMemory would still be kept alive by the reference from
    the unflushed QFOT command buffer) and lead to the low memory
    killer nuking processes.
    
    Bug: b/282075554
    Test: cts -m CtsOpenGLTestCases
              -t android.opengl.cts.GLSurfaceViewTest
    Test: adb shell dumpsys SurfaceFlinger
    Test: angle_end2end_tests
              --gtest_filter=ImageTestES3.AHBImportReleaseStress/ES3_Vulkan
    Change-Id: I7776abb2c6f834e96aa3926c26e77c53352ee561
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4527437
    Commit-Queue: Jason Macnak <natsu@google.com>
    Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/angle.git
    Git SSH git@git.kmx.io:kc3-lang/angle.git
    Public access ? public
    Description

    A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.

    Homepage

    Github

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg thodg_l
    Tags