The first 3 patches and "anv: Bump the advertised patch version to 84" should be safe to land at any time, right?
On 09/10/2018 11:04 AM, Jason Ekstrand wrote: > This patch series adds support to the Intel Vulkan driver for the > (currently provisional) VK_KHR_vulkan_memory_model extension. The > extension provides a few extra SPIR-V decorations along with some > additional guarantees about memory transaction ordering that aim to make > better analysis and use of concurrency possible in Vulkan. In particular, > it provides sufficient guarantees to allow for the creation and use of > basic lock-free data structures in Vulkan shaders. > > The current implementation does little more than rework the barrier code in > the SPIR-V to NIR pass. This is mostly because NIR currently does little > to no optimization on external memory access. As we begin to add more > optimizations in this area, we will need to be careful to think about the > Vulkan memory model to ensure that we continue to provide the right > guarantees. It also points out just how awkward our current handling of > barriers is in NIR. > > This series is sent out as an RFC at this point to make people aware of the > extension and to get the discussion going on how we want to do things "for > real". Also, as can be seen from patch 6, there's still a little work > needed in the Intel back-end compiler to properly support this. :-) > > The series can be found on my gitlab: > > https://gitlab.freedesktop.org/jekstrand/mesa/commits/wip/VK_KHR_vulkan_memory_model > > Cc: Kenneth Graunke <kenn...@whitecape.org> > Cc: Matt Turner <matts...@gmail.com> > Cc: Francisco Jerez <curroje...@riseup.net> > Cc: Timothy Arceri <tarc...@itsqueeze.com> > Cc: Caio Marcelo de Oliveira Filho <caio.olive...@intel.com> > Cc: Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl> > > Jason Ekstrand (7): > vulkan: Update the XML and headers to 1.1.84 > spirv: Update Json and headers from Khronos GitHub master > spirv/info: Add a memorymodel_to_string helper > spirv: Insert barriers to follow the Vulkan memory model > spirv: Add support for the Vulkan memory model > HACK: Disable the instruction scheduler > anv: Advertise support for VK_KHR_vulkan_memory_model > > include/vulkan/vulkan_core.h | 139 +++++++++- > src/compiler/shader_info.h | 1 + > src/compiler/spirv/spirv.core.grammar.json | 95 ++++++- > src/compiler/spirv/spirv.h | 24 ++ > src/compiler/spirv/spirv_info.h | 1 + > src/compiler/spirv/spirv_info_c.py | 1 + > src/compiler/spirv/spirv_to_nir.c | 190 +++++++++----- > src/intel/compiler/brw_fs.cpp | 4 +- > src/intel/vulkan/anv_device.c | 7 + > src/intel/vulkan/anv_extensions.py | 1 + > src/intel/vulkan/anv_pipeline.c | 1 + > src/vulkan/registry/vk.xml | 280 ++++++++++++++++----- > 12 files changed, 594 insertions(+), 150 deletions(-) > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev