• Show log

    Commit

  • Hash : 77d19e39
    Author : Charlie Lao
    Date : 2023-01-11T14:03:18

    Vulkan: Add ThreadSafeCommandQueue class
    
    This is preparation CL for the next few CLs. Instead of having
    RendererVk owns mCommandQueueMutex and takes lock before calling
    CommandQueue APIs, this CL creates a ThreadSafeCommandQueue wrapper
    class that wraps CommandQueue class' public APIs with a mMutex. Right
    now this is purely a mechanical change, expecting no real functional or
    behavior differences. But in the future CLs, we are going to implement
    some APIs without holding lock while doing the wait. This also
    conceptually cleaner that a mutex lock should protect data not methods.
    Because of this, this CL also adds OneOffCommandPool class to wrap
    around all oneoff command buffers with its own lock. The same change
    also applied to CommandProcessor class by adding a
    ThreadSafeCommandProcessor class (this will be removed in later CLs).
    
    This CL also removes CommandQueueInterface base class and made all these
    virtual functions no longer virtual, thus reduces the overhead associate
    with calling virtual functions.
    
    Bug: b/261106868
    Change-Id: Ifdc0085cef7f00d840b4ef3fa602172fed3c0fb1
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4156637
    Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
    Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
    Commit-Queue: Charlie Lao <cclao@google.com>
    

  • 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