• Show log

    Commit

  • Hash : 7dafe3eb
    Author : Shahbaz Youssefi
    Date : 2019-01-28T11:39:15

    Vulkan: optimize image memory barriers
    
    Each image was tracking its current layout, but not the pipeline stage
    it was used.  Additionally, the barrier access masks were inferred from
    the layout.  This incurred two inefficiencies:
    
    - The src pipeline stage mask often included all stages, causing
      unnecessarily heavy barriers.
    - The access masks included all possible accesses by a layout, which in
      some cases was overkill, like VK_ACCESS_MEMORY_WRITE_BIT for
      VK_IMAGE_LAYOUT_GENERAL (which will eventually used for compute shader
      output).
    
    This change instead creates an enum where each element represents the
    layout, the stage and access masks when transitioning into the layout
    and the stage and access masks when transitioning out of that layout.
    The image will instead track a value of this enum (instead of
    VkImageLayout), which allows it to create the layout transition barriers
    as tight as possible, since it includes all the necessary information.
    
    Bug: angleproject:2999
    Change-Id: I91535ce06d10530a6fc217ad3b94b7e288521e25
    Reviewed-on: https://chromium-review.googlesource.com/c/1440074
    Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
    Reviewed-by: Jamie Madill <jmadill@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
    kc3_lang_org thodg_w www_kmx_io thodg_l thodg thodg_m
    Tags