This reverts commit 2219b18c. Reason for revert: Failing to compile on ASAN builders: https://ci.chromium.org/p/chromium/builders/try/linux-libfuzzer-asan-rel/134782 Currently blocking roll. Original change's description: > Vulkan:Optimize SecondaryCommandBuffers > > Optimize performance of SecondaryCommandBuffers and enable them as the > default build option. > To disable this set angle_enable_custom_vulkan_cmd_buffers=false in > your build args. > > This CL enhances the PoolAllocator to have a "fast" mode that can > be enabled at class creation. This mode uses an alignment of 1 byte and > enables a fastAllocation() call that avoids some bookkeeping overhead. > The SecondaryCommandBuffer uses this fastAllocation() function. > Furthermore the fast path of fast allocate, using the current page, > is inlined for maximum speed. > Jamie Madill also updated the SecondaryCommandBuffers to pre-allocate > blocks so that the commands occur linearly in memory. This speeds up > processing with improved cache coherency and minimizes overhead when > recording commands. > Also the core Draw functions and their state updates are all inlined > as well as the common functions to initialize commands and to copy > command pointer data. > > This change also includes some new, custom commands. One is > imageBarrier that is a specialized version of pipelineBarrier that only > performs a single image layout transition. > There are customized versions of various Draw commands to minimize > copying of parameters. > There are also specialized commands to bind[Graphics|Compute]Pipeline > that have the pipeline type built in to the command. > More custom commands and command data size optimizations will be made > in follow-on commits. > > Bug: angleproject:3136 > Change-Id: I35453cc2656bc8c51f0d84d1adef106900aca9a5 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1497418 > Commit-Queue: Tobin Ehlis <tobine@google.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> TBR=tobine@google.com,syoussefi@chromium.org,jmadill@chromium.org Change-Id: I1c0bfe864ff343eb8ea6c88556523f8715c981d5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:3136 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1535998Reviewed-by:Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| fuchsia_egl | Loading commit data... | |
| third_party | Loading commit data... | |
| Color.h | Loading commit data... | |
| Color.inl | Loading commit data... | |
| FastVector.h | Loading commit data... | |
| FastVector_unittest.cpp | Loading commit data... | |
| FixedVector.h | Loading commit data... | |
| FixedVector_unittest.cpp | Loading commit data... | |
| Float16ToFloat32.cpp | Loading commit data... | |
| Float16ToFloat32.py | Loading commit data... | |
| MemoryBuffer.cpp | Loading commit data... | |
| MemoryBuffer.h | Loading commit data... | |
| Optional.h | Loading commit data... | |
| Optional_unittest.cpp | Loading commit data... | |
| PackedEGLEnums_autogen.cpp | Loading commit data... | |
| PackedEGLEnums_autogen.h | Loading commit data... | |
| PackedEnums.cpp | Loading commit data... | |
| PackedEnums.h | Loading commit data... | |
| PackedGLEnums_autogen.cpp | Loading commit data... | |
| PackedGLEnums_autogen.h | Loading commit data... | |
| PoolAlloc.cpp | Loading commit data... | |
| PoolAlloc.h | Loading commit data... | |
| PoolAlloc_unittest.cpp | Loading commit data... | |
| aligned_memory.cpp | Loading commit data... | |
| aligned_memory.h | Loading commit data... | |
| aligned_memory_unittest.cpp | Loading commit data... | |
| android_util.cpp | Loading commit data... | |
| android_util.h | Loading commit data... | |
| angleutils.cpp | Loading commit data... | |
| angleutils.h | Loading commit data... | |
| angleutils_unittest.cpp | Loading commit data... | |
| bitset_utils.h | Loading commit data... | |
| bitset_utils_unittest.cpp | Loading commit data... | |
| debug.cpp | Loading commit data... | |
| debug.h | Loading commit data... | |
| event_tracer.cpp | Loading commit data... | |
| event_tracer.h | Loading commit data... | |
| gen_packed_gl_enums.py | Loading commit data... | |
| gen_uniform_type_table.py | Loading commit data... | |
| hash_utils.h | Loading commit data... | |
| hash_utils_unittest.cpp | Loading commit data... | |
| mathutil.cpp | Loading commit data... | |
| mathutil.h | Loading commit data... | |
| mathutil_unittest.cpp | Loading commit data... | |
| matrix_utils.cpp | Loading commit data... | |
| matrix_utils.h | Loading commit data... | |
| matrix_utils_unittest.cpp | Loading commit data... | |
| packed_egl_enums.json | Loading commit data... | |
| packed_gl_enums.json | Loading commit data... | |
| platform.h | Loading commit data... | |
| string_utils.cpp | Loading commit data... | |
| string_utils.h | Loading commit data... | |
| string_utils_unittest.cpp | Loading commit data... | |
| system_utils.cpp | Loading commit data... | |
| system_utils.h | Loading commit data... | |
| system_utils_linux.cpp | Loading commit data... | |
| system_utils_mac.cpp | Loading commit data... | |
| system_utils_posix.cpp | Loading commit data... | |
| system_utils_unittest.cpp | Loading commit data... | |
| system_utils_unittest_helper.cpp | Loading commit data... | |
| system_utils_unittest_helper.h | Loading commit data... | |
| system_utils_win.cpp | Loading commit data... | |
| tls.cpp | Loading commit data... | |
| tls.h | Loading commit data... | |
| uniform_type_info_autogen.cpp | Loading commit data... | |
| utilities.cpp | Loading commit data... | |
| utilities.h | Loading commit data... | |
| utilities_unittest.cpp | Loading commit data... | |
| vector_utils.h | Loading commit data... | |
| vector_utils_unittest.cpp | Loading commit data... | |
| version.h | Loading commit data... |