Vulkan API specifications 1.0.4 released

Started by JeGX, February 26, 2016, 01:51:30 PM

Previous topic - Next topic

0 Members and 6 Guests are viewing this topic.

Stefan

#240
QuoteChange log for March 1, 2024 Vulkan 1.3.279 spec update:
Public Issues
  * Add a NOTE to the VK_IMG_format_pvrtc extension appendix specifying that
    PVRTC1 images must have power of two dimensions, and a corresponding VU
    to VkImageCreateInfo (public issue 1991).
  * Remove BETA ifdefs from video enums (public issue 2314).
Internal Issues
  * Clarify using multiple dynamic state to set vertex stride in the
    <<fxvertex-input-address-calculation, Vertex Input Address Calculation>>
    section (internal issue 3381).
  * Specify that reinterpreting images with unused format bits returns
    undefined values in the <<textures-operation-validation,
    Instruction/Sampler/Image View Validation>> and
    <<textures-output-format-conversion, Texel Output Format Conversion>>
    sections (internal issue 3591).
  * Remove redundant VkGraphicsPipelineCreateInfo multiView VUs (internal
    issue 3662).
  * Ensure that created descriptor set layouts are supported in
    vkCreateDescriptorSetLayout (internal issue 3676).
  * Clarify vkGetRenderingAreaGranularityKHR recommendations for optimal
    renderArea (internal issue 3702).
  * Fix link typo in vkRenderingFragmentDensityMapAttachmentInfoEXT
    multiview VU 07908 (internal issue 3714).
  * Tighten <<formats-without-shader-storage-format, Formats Without Shader
    Storage Format>> language regarding storage format support (internal
    issue 3777).
  * Clarify that VkPhysicalDeviceDriverProperties::conformanceVersion
    identifies the most recent version of CTS successfully passed (as
    opposed to requiring the driver to have passed a one-month review period
    and have been officially labelled conformant by the Vulkan working
    group) (internal issue 3780).
  * Provide more detailed description for VK_FORMAT_R16G16_S10_5_NV
    (internal issue 3788).
  * Fix swapped FeatureEnabled indices in the <<decode-av1-picture-info, Std
    Picture Information>> section (internal issue 3793).
  * Improve proposal template and style guide to clarify that the
    specification custom asciidoctor macros are not available in proposal
    documents (internal issue 3808).
  * Improvements and fixes for VK_NV_device_generated_commands_compute
    (internal MR 6410).
  * Fix parameter name typo in vkCmdControlVideoCodingKHR VU 08243 (internal
    MR 6426).
  * Clarify the default values of render pass mappings for
    vkCmdSetRenderingAttachmentLocationsKHR and
    VkRenderingInputAttachmentIndexInfoKHR (internal MR 6469).
  * Fix param name typo in VkRenderingFragmentDensityMapAttachmentInfoEXT VU
    06157 (internal MR 6483).
  * Fix VkMutableDescriptorTypeCreateInfoEXT ->
    VkMutableDescriptorTypeListEXT typo in the <<descriptorsets-mutable,
    Mutable>> introduction (internal MR 6484).
  * Fix VkGraphicsPipelineCreateInfo VU 08899 to refer to vertex input,
    rather than pre-rasterization state (internal MR 6501).
  * Add missing `type` attribute to some AV1 `<enum>` tags in `video.xml`
    (internal MR 6506).
  * Fix styleguide example markup that did not escape ifdef and endif macros
    (internal MR 6506).
  * Add a missing common pipeline barrier VU, and move the "`Explicit Render
    Pass Tile Image Access Synchronization`" section to the
    VK_EXT_shader_tile_image proposal document (internal MR 6510).
New Extensions
  * VK_NV_raw_access_chains


source: https://github.com/KhronosGroup/Vulkan-Docs/commit/b8d528e16a5380fc1ffb8e94297d311fe81a6791

New extension:
- VK_NV_raw_access_chains
QuoteThis extension allows the use of the SPV_NV_raw_access_chains extension in SPIR-V shader modules. This enables SPIR-V producers to efficiently implement interfaces similar to Direct3D structured buffers and byte address buffers, allowing shaders compiled from an HLSL source to generate more efficient code.

Stefan

#241
QuoteChange log for March 8, 2024 Vulkan 1.3.280 spec update:
Public Issues
  * Use full "`queue family ownership transfer`" terminology consistently
    (public PR 2320).
Internal Issues
  * Add a NOTE to the <<pipelines-dynamic-state, Dynamic State>> section
    warning of setting dynamic state on a static pipeline in older drivers
    (internal issue 3675).
  * Fix VkGraphicsPipelineCreateInfo VU 09037 related to pColorBlendState
    with dynamic rendering (internal issue 3748).
  * Add additional vkCmdBeginRendering and common draw dispatch VUs for
    image layouts (internal issue 3758).
  * Add missing common draw shader compatibility VUs for
    VK_KHR_dynamic_rendering_local_read (internal issue 3787).
  * Update sampling restrictions for min/max filtering in common draw
    dispatch VUs (internal issue 3800).
  * Add VkGraphicsPipelineCreateInfo VU requiring stageCount to be zero when
    not needed (internal issue 3804).
  * Clarify submission order for multiple subpasses in the
    <<synchronization-implicit, Implicit Synchronization Guarantees>>
    section (internal issue 3811).
  * Fix miscellaneous minor language and example code issues in the video
    extension proposal and specification language (internal MR 6492).
  * Properly define <<fundamentals-queueoperation-command-types, terms for
    command types>> in the fundamentals chapter (internal MR 6508).
  * Add missing VUs for subresource aspectMask to common image layout
    transition, VkImageViewCreateInfo, and VkSparseImageMemoryBindInfo
    (internal MR 6522).
  * fix shader object interaction with dynamic blend states in the
    <<shaders-objects-state]] Setting State>> section and common draw VUs
    (internal MR 6523).
New Extensions
  * VK_NV_ray_tracing_validation


source: https://github.com/KhronosGroup/Vulkan-Docs/commit/69ba4fefbafa045d0fd1b07060b768b3b1c115cc

New extension:
- VK_NV_ray_tracing_validation
QuoteThis extension adds support for performing ray tracing validation at an implementation level.

Stefan

#242
QuoteChange log for March 22, 2024 Vulkan 1.3.281 spec update:
Public Issues
  * Add matching stride VUs for MultiDraw (public issue 2323).
  * Always generate a failure code section, even for commands with no
    errorcodes specified in the XML (public PR 2325).
Internal Issues
  * Correct issues describing NT handle usage in the
    VK_KHR_external_memory_win32 and VK_KHR_external_semaphore_win32
    extension appendices (internal issue 1291).
  * Fix refpage layout for Vk*Feature* structures so member descriptions
    appear in the right section (internal issue 3314).
  * Add vkCmdBeginTransformFeedbackEXT VU statement for max counter buffers
    (internal issue 3654).
  * Clarify packing of data returned by vkGetRayTracingShaderGroupHandles
    (internal issue 3791).
  * Fix `depends` attribute for many promoted extensions (internal issue
    3810).
  * Clarify OpKill behavior with shader termination (internal issue 3815).
  * Require customBorderColors feature support if the
    VK_EXT_custom_border_color extension is supported (internal issue 3819).
  * Remove explicit VK_ERROR_UNKNOWN errorcodes from XML and add a NOTE not
    to do this in the registry schema document (internal issue 3824).
  * Clarify AV1 loop restoration size values in the
    <<decode-av1-picture-info, Std Picture Information>> description
    (internal MR 6499).
  * Fix VkGraphicsPipelineCreateInfo VU 07609 (internal MR 6535).
  * Add helper script to run the Khronos Docker image used to build
    specifications using podman, instead of docker (internal MR 6538).
  * Mark recently ratified EXT extensions in XML (internal MR 6548).
  * Relocate a NOTE in the "`WSI Swapchain`" section following the normative
    language it refers to (internal MR 6549).
  * Clarify and fix sparse memory bind size requirements in the
    <<sparsememory-memory-requirements, Sparse Resource Memory
    Requirements>>, <<sparsememory-memory-partially-resident, Partially
    Resident Images>>, and VkSparseMemoryBind language (internal MR 6555).




source: https://github.com/KhronosGroup/Vulkan-Docs/commit/d6029cc2b7499faf2e7857420ec4996fc5cb0a50

Bug in headers:
On 32-bit builds VkDebugUtilsMessengerEXT and other non-dispatchable handle types map to unsigned long long.

Bugfix:
https://github.com/KhronosGroup/Vulkan-Hpp/pull/1836

Stefan

QuoteChange log for April 13, 2024 Vulkan 1.3.282 spec update:

Public Issues
  * Fix typo and move vkCmdCopyAccelerationStructureNV VU 07792 from the
    common copy acceleration structures VUs (based on issues from public
    pull request 2144).
  * Relax video format image usage flags requirement in the
    <<resources-image-creation-limits, Image Creation Limits>> section when
    VK_IMAGE_CREATE_EXTENDED_USAGE_BIT is specified (public issue 2329).
  * Resolve some duplicate consecutive word typos (public PR 2333) and add a
    CI / `allchecks` built target to detect them in the future (public issue
    2338).
  * Adjust proposal links to point to the docs site from the Antora build
    (Vulkan-Site issue 65).
  * Minor fixes to proposal markup and navigation for the Antora build.
Internal Issues
  * Add unnormalizedCoordinates draw-time ImageView VUs (internal issue
    3632).
  * Alias VK_FORMAT_R16G16_S10_5_NV to the more informative
    VK_FORMAT_R16G16_SFIXED5_NV, and add a `SFIXED5` `numericFormat` XML
    attribute to describe the component format (internal issue 3802).
  * Add <<spirvenv-module-validation-standalone, Standalone SPIR-V
    Validation>> VU to ban use of SPIR-V dimension `Rect` (internal issue
    3812).
  * Clarify in the <<queries-pipestats, Pipeline Statistics Queries>>
    section that queries are undefined for stages not present in pipelines
    (internal issue 3816).
  * Add VkGraphicsPipelineCreateInfo and vkCreateShadersEXT VUs for
    DrawIndex BuiltIn decorations with Task and Mesh shader stages (internal
    issue 3833).
  * Add CI check to prevent VK_ERROR_UNKNOWN and VK_ERROR_VALIDATION_FAILED
    in XML `errorcodes` attributes (internal issue 3836).
  * Add the robustBufferAccess feature to common draw vertex binding VU
    02721 (internal issue 3838).
  * Enforce American English spelling conventions in CI (as required by the
    style guide) using the codespell British->American English dictionary,
    fix inconsistencies that discovered, and update some external repository
    deep links to include their updated default branch name (internal issue
    3848).
  * Add missing VU for using HOST_BIT with vkCmdPipelineBarrier (internal MR
    6217).
  * Clarify descriptor set layout support in vkCreateDescriptorSetLayout VU
    09582 (internal MR 6567).
  * Add `%unbreakable` asciidoc option to generated API interface blocks,
    preventing long structure and enumerant definitions from being split
    across PDF page boundaries (internal MR 6571).
  * Improve error message from xml_consistency.py (internal MR 6572).
  * Fixes to sampleShadingEnable for VkGraphicsPipelineCreateInfo VU 06637
    and VkGraphicsPipelineCreateInfo VU 09567 (internal MR 6575).
  * Clarify that subpassLoad does not take a "`layer`" argument in
    <<spirvenv-module-validation-standalone, Standalone SPIR-V Validation>>
    VU 04660 (internal MR 6581).
  * Update VK_EXT_metal_objects by adding an `__unsafe_unretained ownership`
    qualifier to all Metal object declarations, to support Automatic
    Reference Counting (ARC) (internal MR 6582).
  * Add a NOTE to the <<textures-operation-validation,
    Instruction/Sampler/Image View Validation>> section about conditions
    requiring a CTS waiver on some implementations (internal MR 6589).
  * Add a common draw vertex binding VU for primitiveRestartEnable list
    topology, corresponding to VkPipelinInputAssemblyStateCreateInfo VU
    06252 (public Vulkan-ValidationLayers issue 4413).
source: https://github.com/KhronosGroup/Vulkan-Docs/commit/315493e7b2ed31e3d33f124f95a4b1c0cdbfaf84

Stefan

QuoteChange log for April 19, 2024 Vulkan 1.3.283 spec update:

Public Issues
  * Add a NOTE to the <<synchronization-queue-transfers-acquire>> section
    explaining how release barrier should be used (public issue 2319).
  * Add VkGraphicsPipelineCreateInfo VU to fix partial dynamic state for
    VK_EXT_conservative_rasterization (public issue 2344).
  * Update Github Actions from @V3 to @v4 (public PR 2352).
Internal Issues
  * Limit protected VkBuffer creation to Vulkan 1.0 usages in
    VkBufferCreateInfo VUs and <<spirvenv-module-validation-runtime, Runtime
    SPIR-V Validation>> (internal issue 3596).
  * Clarify meaning of
    VkAccelerationStructureGeometryTrianglesDataKHR::maxVertex (internal
    issue 3796).
  * Require InputAttachmentIndx for arrayed SubpassData variables in
    <<spirvenv-module-validation-runtime, Runtime SPIR-V Validation>>
    (internal issue 3837).
  * Allow external host memory to <<host-memory-import-non-visible-type,
    back non-host visible types>> (internal issue 3841).
  * Add pipeline create flag to VK_EXT_legacy_dithering to enable use with
    dynamic rendering (internal MR 6491).
  * Add missing vkCmdBeginRenderPass VU for VK_EXT_nested_command_buffer
    (internal MR 6595).
  * Remove redundant common draw vertex binding VU 04912 (internal MR 6604).


source: https://github.com/KhronosGroup/Vulkan-Docs/commit/dedb71a7edc6d5af3f9bfd5e2ef53814de999ef7

Stefan

#245
QuoteChange log for May 5, 2024 Vulkan 1.3.284 spec update:

Public Issues
  * Refactor "`proposals`" into a separate Antora component "`features`" and
    refer to published proposals more consistently as "`feature
    descriptions`" (public PR 2361).
Internal Issues
  * Partial synchronization with OpenXR scripts (internal MR 6419).
  * Refactor extensionmetadocgenerator.py to simplify adding new sections
    (internal MR 6624).
  * Restore structextends="VkPhysicalDeviceProperties2" back for
    VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT (internal MR 6631).
New Extensions
  * VK_EXT_legacy_vertex_attributes



source: https://github.com/KhronosGroup/Vulkan-Docs/commit/ff188a8ffa950a010422c4c4b277f06db10d0dce

New Extension:

- VK_EXT_legacy_vertex_attributes
QuoteThis extension adds support for legacy features of (non-64-bit) vertex attributes as found in OpenGL:
- Vertex attributes loaded from arbitrary buffer alignments
- Vertex attributes using arbitrary strides
- Vertex attributes where the component data type of the binding does not match the component numeric type of the shader input

These features are only usable with dynamic vertex input. Unaligned loads of vertex attributes may incur performance penalties, indicated with a property.

Stefan

QuoteChange log for May 10, 2024 Vulkan 1.3.285 spec update:

Public Issues
  * Update VkMemoryMapInfoKHR VUs to not require VK_WHOLE_SIZE with
    VK_MEMORY_MAP_PLACED_BIT (public issue 2350).
  * Add a <<fundamentals-strings, String Representation>> section and
    clarify that fixed-length string buffers in API structures always
    include the null terminator (public issue 2351).
  * Update refpage short descriptions of VkAttachmentLoad/StoreOp to be
    consistent with spec language (public issue 2353).
  * Clarify that the KHR and EXT load_store_op_none extensions were not
    promoted to Vulkan 1.3 (public PR 2357).
Internal Issues
  * Add a VkGraphicsPipelineCreateInfo VU banning "`read-only`" input
    attachments without VkRenderingInputAttachmentIndexInfoKHR (internal
    issue 3862).
  * Add explicit reference to RayQueryPositionFetchKHR SPIR-V capability in
    the VK_KHR_ray_tracing_position_fetch extension appendix and XML
    spirvcapability tags (internal MR 6617).
  * Remove MaximallyReconvergesKHR capability (which is not a capability,
    but an execution mode) from XML (internal MR 6618).
  * Add alias and enum value-> type maps in `reg.py` (internal MR 6620).
  * Add missing shader object VU for vkCmdDispatchBase (internal MR 6623).
  * Make build tests less sensitive to asciidoctor versions and CSS changes
    by just comparing HTML body content (internal MR 6637).
  * Do not allow overlapping builtin decorations for an entry point in the
    <<interfaces-builtin-variables, Built-In Variables>> section, and add
    some related <<spirvenv-module-validation-standalone, Standalone SPIR-V
    Validation>> VUs (KhronosGroup/SPIRV-Cross issue 2313).
New Extensions
  * VK_MESA_image_alignment_control


source: https://github.com/KhronosGroup/Vulkan-Docs/commit/8fc686b6321f035dc4a589e5ec1dc67208a71ac2

Stefan

QuoteChange log for May 31, 2024 Vulkan 1.3.286 spec update:

Public Issues
  * Clarify dynamic state lifetime VU statements for pipelines and shader
    objects (public issue 2276).
  * Add the `depends` attribute to XML feature tags, deprecating the
    `number` attribute, which will eventually be retired (public issue
    2327).
  * Add a `type="constants"` attribute to `enums` XML tags so all of them
    have a `type` attribute (public issue 2359).
  * Clarify behavior of VK_PRESENT_MODE_FIFO_RELAXED_KHR in the "`Display
    Timing Queries`" portion of the VK_GOOGLE_display_timing extension
    (public pull request 2363).
Internal Issues
  * Clarify that host-image-copy functions work on the host for
    vkCopyMemoryToImageEXT, vkCopyImageToMemoryEXT, and
    vkCopyImageToImageEXT (internal issue 3857).
  * Clarify that stage masks are ignored for acquire/release in sync2
    vkCmdPipelineBarrier2 and <<synchronization-queue-transfers-acquire>>
    (internal issue 3865).
  * Explain why mapping state is duplicated in the
    VK_KHR_dynamic_rendering_local_read proposal document (internal issue
    3881).
  * Add description of VK_ERROR_NOT_PERMITTED_KHR to the
    <<fundamentals-errorcodes, Error codes>> section (internal issue 3888).
  * Remove redundant near-duplicate markup for the "`Precision of core
    SPIR-V Instructions`" table (internal MR 6645).
  * Remove UnpackDouble2x32 from the list of instructions affected by
    DenormFlushToZero in the <<spirvenv-precision-operation, Precision and
    Operation of SPIR-V Instructions>> section (internal MR 6648).
  * Add `returnedonly="true"` attributes to VkSurface*Capabilities*
    structures (internal MR 6657).
  * Add a note about an AV1 decode reference info type bug in the
    <<decode-av1-reference-info, Std Reference Information>> section
    (internal MR 6662).
  * Fix incorrect use of "`forward prediction`" vs. "`backward prediction`"
    in the video extensions and glossary (internal MR 6663).
  * Do not print checker script warning headers when no warnings are printed
    (internal MR 6670).
  * Add VU statements tying features to queue types (internal MR 6672).
  * Fix VkGraphicsPipelineCreateInfo VU 06601 to correspond to the description
    of pRasterizationState when EDS3 is enabled
    (internal MR 6674).
New Extensions
  * VK_EXT_shader_replicated_composites


source: https://github.com/KhronosGroup/Vulkan-Docs/commit/ed4ba0242beb89a1795d6084709fa9e713559c94

Stefan

QuoteChange log for June 7, 2024 Vulkan 1.3.287 spec update:

Public Issues
  * Fix subpass content validation rule by replacing vkCmdExecuteCommands VU
    06018 with two new VUs (public issue 2372).
  * Clarify how <<clears-values, clear values>> are converted to 64-bit
    integer types (public issue 2375, internal issue 2947).
Internal Issues
  * Tag extensions in the list of deprecated extensions as "`promoted to
    core`", if they are (internal issue 3839).
  * Unify markup for corresponding, but differently named subgroup property
    members of VkPhysicalDeviceVulkan11Properties and
    VkPhysicalDeviceSubgroupProperties (internal issue 3886).
  * Fix <<spirvenv-module-validation-runtime Runtime SPIR-V Validation>> VU
    09644 for SubpassData variables declared as arrays (internal issue
    3887).
  * Clarify when VkDescriptorSetLayout objects can be freed in the
    <<fundamentals-objectmodel-lifetime, Object Lifetime>> section (internal
    MR 5019).
  * Fix VkValidationFeaturesEXT pNext VU 06904 and add corresponding
    structures to its `structextends` XML attribute (internal MR 6681).
  * Add links from VkGraphicsPipelineCreateInfo VUs back to the
    corresponding structure members, to avoid duplicating lists of relevant
    dynamic state (internal MR 6681).
  * Fix typo in Vk_KHR_dynamic_rendering_local_read proposal document
    (internal MR 6686).
  * Make the <<ray-tracing-shader-call, Shader Call Instructions>> list into
    a table (internal MR 6687).
  * Change the formal parameter name of
    vkCmdSetRenderingInputAttachmentIndicesKHR::pInputAttachmentIndexInfo
    from pLocationInfo, to match specification language. While this does
    affect the header, it does not constitute an API break for C99 or the
    other language bindings we're aware of (internal MR 6689).
  * Replace use of "`entry point`" with "`command`" globally (except when
    referring to shader entry points, as that terminology is defined by
    SPIR-V) and add this rule to the style guide (internal MR 6686).
  * Add CI checks, and replace uses of misspelled "`closest hit`" and
    "`any-hit`" terms (internal MR 6693).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/ae3e824136b336fe99025eaf0cd55d073c6e6a0a

Stefan

QuoteChange log for June 14, 2024 Vulkan 1.3.288 spec update:

Public Issues
  * Update language describing
    <<introduction, extending physical device core functionality>>
    (internal MR 6667, replacing public PR 2355).
Internal Issues
  * Clarify that it is the implementation that sets the fragment shading
    rate to (1, 1) in the <<primsrast-fragment-shading-rate-combining,
    Combining the Fragment Shading Rates>> section (internal issue 3893).
  * Add validation tying renderpasses and framebuffers to graphics queue
    (internal issue 3895).
  * Replace "`user`" with "`application`" where possible, following the
    style guide. Remaining uses relate to callback user data, user-defined
    shader variables, and external API terminology (internal issue 3898).
  * Use VK_FILTER_CUBIC_IMG instead of the EXT alias in the
    VkSamplerCreateInfo IMG-specific VU 07911 (internal MR 6697).
  * All VK_IMAGE_CREATE_PROTECTED_BIT to report different memoryTypes in the
    implementiation guarantees of properties about memory requirements in
    the <<resources-association, Resource Memory Association>> section
    (internal MR 6698).
  * Fix markup in vkCmdExecuteCommands VU 09681 (internal MR 6713).
  * Fix markup in vkCmdDraw VU 09000 so nested conditionals render correctly
    (internal MR 6714).
New Extensions
  * VK_KHR_shader_relaxed_extended_instruction
source: https://github.com/KhronosGroup/Vulkan-Docs/commit/bf457079af2a599bbcb018cf5d032429a7121d97

Stefan

#250
QuoteChange log for June 28, 2024 Vulkan 1.3.289 spec update:

Internal Issues
  * Add missing zero binding vkUpdateDescriptorSets VU (internal issue
    3890).
  * Remove vkCmdBuildAccelerationStructuresKHR VU 03770 (and variants),
    which are not needed by implementations (internal issue 3896).
  * Fix extensionmetadocgenerator so missing APIs from some extension
    interactions are shown in the generated interfaces section (internal
    issue 3907).
  * Fix typo in VkVideoEncodeH265RateControlInfoKHR (temporalLayerCount ->
    subLayerCount) (internal MR 6712).
  * Fix typo in VK_QCOM_fragment_density_map_offset regarding
    fragmentDensityMapOffset feature (internal MR 6727).
  * Improve and combine many vkCmdDraw VUs to properly test in the presence
    of dynamic state that must have been set, and not subsequently
    invalidated. This batch of changes primarily affects dynamic state with
    graphics pipelines (internal MRs 6345, 6653, 6654, 6683, 6721, 6722,
    6723, 6724).
  * Add vkCmdSetDepthBoundsTestEnable VU for depthBounds feature (internal
    MR 6715).
  * Mark VK_KHR_shader_relaxed_extended_instruction as ratified, which was
    overlooked when initially released (internal MR 6717).
  * Clarify interactions between the VK_ARM_render_pass_striped extension
    and render pass suspend resume (internal MR 6734).
  * Allow VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT to be used with
    VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT,
    reserving a descriptor set slot when using DebugPrintF in the validation
    layers (internal MR 6744).
  * Update the bundled KaTeX distribution to 0.16.10 (internal MR 6746).
New Extensions
  * VK_KHR_maintenance7


source: https://github.com/KhronosGroup/Vulkan-Docs/commit/7bb606eb87cde1d34f65f36f4d4c6f2c78f072c8

New Extensions:
- VK_KHR_maintenance7
QuoteVK_KHR_maintenance7 adds a collection of minor features, none of which would warrant an entire extension of their own.

The proposed new features are as follows:

Add a property query to determine if a framebuffer writes to depth or stencil aspect does not trigger a write access in the sibling aspect. For example, this allows sampling stencil aspect as a texture while rendering to the sibling depth attachment and vice-versa given appropriate image layouts.

Add a way to query information regarding the underlying devices in environments where the Vulkan implementation is provided through layered implementations. For example, running on Mesa/Venus, driver ID is returned as ename:VK_DRIVER_ID_MESA_VENUS, but it can be necessary to know what the real driver under the hood is. The new slink:VkPhysicalDeviceLayeredApiPropertiesKHR structure can be used to gather information regarding layers underneath the top-level physical device.

Promote ename:VK_RENDERING_CONTENTS_INLINE_BIT_EXT and ename:VK_SUBPASS_CONTENTS_INLINE_AND_SECONDARY_COMMAND_BUFFERS_EXT to KHR

Add a limit to report the maximum total count of dynamic uniform buffers and dynamic storage buffers that can be included in a pipeline layout.

Require that for an unsigned integer query, the 32-bit result value must: be equal to the 32 least significant bits of the equivalent 64-bit result value.

Add query for robust access support when using fragment shading rate attachments

Stefan

QuoteChange log for July 12, 2024 Vulkan 1.3.290 spec update:

  * Explicitly state that PackHalf2x16 rounding is implementation-dependent
    <<spirvenv-op-prec, Precision of Individual Operations>> section (public
    issue 1825).
  * Update `asciidoctor-spec` Docker build image to one based on ruby:3.3.3
    to reduce the number of reported CVEs on the image and update toolchain
    components (public MR 2073, internal MR 6754).
  * Fix display/encoding statements and interchanged concepts of EOTF and
    OETF for the VK_EXT_swapchain_colorspace extension (partially addresses
    public issue 2312).
  * Fix <<copies-buffers-images-addressing, copy buffer <-> image
    equations>> and corresponding common validity statements for block image
    formats (public issues 2377 and 2378).
  * Clarify that the query LOD is relative to the base level in the
    <<textures-queries, Image Query Instructions>> section (public issues
    2383).
Internal Issues
  * Improve cross-referencing links in refpages, primarily by adding
    crosslinks for all corresponding VkFlags* / VkFlagBits* types (internal
    issue 861).
  * Clarify VUs for OpCooperativeMatrixMulAdd (internal issue 3708).
  * Add CI check for consistency of Vk*Flags and corresponding Vk*FlagBits
    type names and sizes (internal issue 3716).
  * Add CI check to prevent custom macro use in proposal documents (internal
    issue 3919).
  * Remove references to "`reference monitor`" in the VK_EXT_hdr_metadata
    extension and replace with "`display used to optimize the content`"
    (internal MR 6566).
  * Add new <<fundamentals-commandsyntax-array-results, Array Results>>
    section summarizing behavior of commands which query arrays (internal MR
    6685).
  * Fix incorrect description of
    VkDisplaySurfaceCreateInfoKHR::VkDisplayPlaneAlphaFlagBitsKHR in
    `vk.xml` (internal MR 6704).
  * Add additional terminology checks to CI (internal MR 6747).
  * Fix VkFramebufferCreateInfo VU 04587 (internal MR 6756).
  * Remove redundant VU 08921 (internal MR 6766).
  * Fix a/an typos (internal MR 6773).
source: https://github.com/KhronosGroup/Vulkan-Docs/commit/043260d06e96c8586492be41cc109945e92a69ff

Stefan

QuoteChange log for July 19, 2024 Vulkan 1.3.291 spec update:

GitHub Issues
  * Remove stale dangling video Std* type references from vk.xml (public
    issue 2388).
  * Update NOTE block markup so asciidoctor outputs match Antora outputs
    (public issue 2392).
  * Fix incorrect registry schema doc information regarding XML type tags
    (public issue 2394).
Internal Issues
  * Add comments in generated headers and interface includes for APIs with
    XML 'deprecated' attributes, describing why they're deprecated (internal
    issue 2897).
  * Clarify language about OpFDiv(x,0) generating infinity and relocate to
    the <<spirvenv-precision-core-table>> Precision of core SPIR-V
    Instructions>> table (internal issue 3902).
  * Update the <<memory-external-android-hardware-buffer-external-formats,
    Android Hardware Buffer External Formats>> section to address confusion
    about content preservation and input attachments with external format
    resolves (internal issue 3931).
  * Fix dynamic state interaction in common draw dispatch VU 08608 (internal
    issue 3935).
  * Refactor SPIR-V precisions to reduce duplication by introducing the term
    _bit-preserving operations_. Add additional bit-preserving operations in
    <<spirvenv-precision-operation, Precision and Operation of SPIR-V
    Instructions>>, and move OpTranspose into the bit-preserving operations
    section of that list (internal issue 3902).
  * Update test build expectations, and add a spec-toolchain step to CI
    invoking the test build (internal MR 6632).
  * Correct use of normative must: in several places that had accumulated
    (internal MR 6750).
  * Update VkImageCreateInfo VU 06722 and add new VU to fix mutable image
    creation for planar images to match up with imageview VUs (internal MR
    6774).
  * Remove unhelpful (because unobserveable) additional notes about float
    precision in <<spirvenv-precision-operation, Precision and Operation of
    SPIR-V Instructions>> (internal MR 6778).
  * Add video codec and capabilities metadata to the XML (internal MR 6787).
  * Refactor the VK_AMD_anti_lag and VK_NV_low_latency2 extensions from very
    short standalone chapters into the WSI chapter (internal MR 6792)

New Extensions
 
* VK_AMD_anti_lag

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/4b01c384d9fc4ffff9bb7dc18a1b76d57c6d7d4f

Stefan

QuoteChange log for July 26, 2024 Vulkan 1.3.292 spec update:

Internal Issues
  * Add missing <<spirvenv-precision-operation, bit-preserving operations>>
    (internal issue 3902).
  * Add <<spirvenv-precision-core-table, precision of some SPIR-V
    operations>> (internal issue 3902).
  * Require OpIsNan and OpIsInf to allow <<spirvenv-precision-operation,
    preserving Nan and Inf>> (internal issue 3902).
  * Remove 'requires="VkVideoEncodeFlagBitsKHR"' from VkVideoEncodeFlagsKHR
    (internal issue 3934).
  * Add common pipeline create info VU and add VkShaderCreateInfoEXT VUs to
    match pipeline VUs (internal MR 6684).
  * Add common draw dispatch VU to validate sampler/image array access
    (internal MR 6793).
  * Split vkAcquireNextImage fence state VUs into separate VUs for
    independently testable clauses (internal MR 6802).
  * Remove "`either`" typo from vkCmdWaitEvents2 VU 03842 (internal MR
    6803).
  * Make pNext pointers in VkDescriptorBufferBindingInfoEXT and
    VkDescriptorBufferBindingPushDescriptorBufferHandleEXT `const` (internal
    MR 6804).
  * Update generated "`Extension and Version Dependencies`" link to API
    version language to include the API name (Vulkan or Vulkan SC) (internal
    MR 6805).
  * Fix bug in video codec test generator script (internal MR 6807).
source: https://github.com/KhronosGroup/Vulkan-Docs/commit/e090b1020fb9636b752e73adfc82a3c595fb6615

Stefan

QuoteChange log for August 16, 2024 Vulkan 1.3.293 spec update:

Public Issues
  * Fix reference to VkPhysicalDeviceLimits::maxMemoryAllocationCount in
    VkMemoryAllocateInfo (public issue 2398).
  * Improve vkWriteMicromapsPropertiesEXT VUs 07573 and 07574, and remove
    incomplete VU 07575 (public issue 2399).
  * Fix markup in vkGetPhysicalDeviceDisplayPropertiesKHR so
    VkDisplayPropertiesKHR is formatted as a link (public issue 2401).
  * Merge multiple equivalent require blocks in XML and add a script to
    detect them (public pull request 2404).
Internal Issues
  * Refactor and clarify a NOTE in VkSparseMemoryBind (internal issue 3938).
  * Require VK_EXT_sample_locations for vkCmdSetSampleLocationsEXT in common
    draw VU 06666 (internal issue 3944).
  * Update `scripts/extdependency.py` to compute version dependencies, and
    use this in the `makeSpec` script instead of a hardcoded list of version
    tokens required for the requested API version (internal MR 6823).
  * Add glossary entries for basic video coding block types (internal merge
    request 6765).
  * Add depthBoundsTestEnable language to the <<features-depthBounds,
    depthBounds>> feature description (internal merge request 6806).
  * Clarify VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT to better explain
    exactly what it is disabling (internal merge request 6812).
  * Fix VkLayerSettingEXT spec language and VU for VK_EXT_layer_settings
    (internal merge request 6817).
  * Use consistent wording to describe features including removal of
    un-needed "`set to`" when referring to a value that is not being set
    (internal merge request 6831).
New Extensions
  * VK_NV_command_buffer_inheritance
source: https://github.com/KhronosGroup/Vulkan-Docs/commit/59dc3a34d2c3a6704cc569a82a2798fae337367c

JeGX

QuoteChange log for August 23, 2024 Vulkan 1.3.294 spec update:
Public Issues

  * Update registry schema document to describe that XML processing
    frameworks are responsible for all defined tags and attributes, whether
    used or not, and refer to that from two rarely used attributes (public
    issue 2395).

Internal Issues

  * Initial support for generating feature requirements from XML metadata
    (internal issue 1694).
  * Allow resource access to be dynamically uniform within a subgroup via
    minor language changes in many places within the specification (internal
    issue 3745).
  * Update common draw dispatch VU 07752 to refer to the new
    <<spirvenv-image-dimensions, Compatibility Between SPIR-V Image
    Dimensions and Vulkan ImageView Types>> section for sampler-descriptor
    compatibility, and simplify related language in the
    <<textures-operation-validation, Instruction/Sampler/Image View
    Validation>> section (internal issue 3812).
  * Remove common draw indexed VU 07825, replaced by comparable VU 08798
    (internal issue 3961).
  * Fix typos in video codec XML metadata, and add more consistency check to
    the corresponding generator script (internal MR 6840).
  * Clarify VkBuildAccelerationStructureFlagBitsKHR and common build
    acceleration structure VUs to clarify that compact + update is
    explicitly allowed (internal MR 6819).
  * Update VK_NV_low_latency2 specification language to match use the same
    capitalization as the `presentID` formal parameter name in the XML and
    headers (internal MR 6837).
  * Add gitlab CI build test for new extension branches, to verify a
    ratification candidate with just that extension included can be built
    (internal issue 3955).

New Extensions

  * VK_KHR_pipeline_binary

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/fb9f45c5ee8f4e8cd6f2b19eeb751fd305773a67

New Extension:

-VK_KHR_pipeline_binary
QuoteThis extension provides a method to obtain binary data associated with individual pipelines such that applications can manage caching themselves instead of using VkPipelineCache objects.

Stefan

QuoteChange log for August 30, 2024 Vulkan 1.3.295 spec update:

Public Issues
  * Add explicit <require> tag to XML for
    VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR in VK_KHR_pipeline_binary (public
    pull request 2423).
  * Minor wording change to avoid ambiguity of
    <<synchronization-semaphores-waiting, "`the act of waiting`">> (public
    pull request 2418).
Internal Issues
  * Deprecate VK_COLOR_SPACE_DOLBYVISION_EXT from
    VK_EXT_swapchain_colorspace and add a NOTE to VkColorSpaceKHR explaining
    why (internal issue 3884).
  * Fix markup in registry schema document to move video tag descriptions to
    the proper place and avoid mis-grouping of other tag descriptions
    (internal issue 3978).
  * Remove structextends="VkPipelineCreateInfoKHR" XML attributes from
    VkCreate*PipelineCreateInfo structs that were erroneously added with
    VK_KHR_pipeline_binaries (internal issue 3979).
  * Add vkCreateRayTracingPipelinesKHR VU and update VkPipelineCreateInfoKHR
    VU 09604 to disallow pipeline binaries with VK_NV_ray_tracing (internal
    merge request 6849).
New Extensions
  * VK_KHR_compute_shader_derivatives
source: https://github.com/KhronosGroup/Vulkan-Docs/commit/8e435deb15124bbf9a7e3340e6cc7975999ed5c5

JeGX

QuoteChange log for September 26, 2024 Vulkan 1.3.296 spec update:
Public Issues

  * Fix spelling of StdVideoH264SpsVuiFlags::color_description_present_flag
    member in video.xml (public issue 2428).
  * Fix copy-paste typo in vkAcquireNextImageKHR VU 07783 (public issue
    2433).
  * Document support for the `stride` XML attribute for array pointers in
    both command `<param>` and structure `<member>` tags (public issue
    2435).

Internal Issues

  * Add accuracy and denorm specifications for SPIR-V OpSubgroupAllEqualKHR
    and OpGroupNonUniformAllEqual to the <<spirvenv-precision-operation,
    Precision and Operation of SPIR-V Instructions>> section (internal issue
    3902).
  * Clean up markup and description of the Cube Map Derivative
    Transformation equations (internal issue 4010).
  * Add new `Required_Limits` refpage containing the tables from the
    <<limits-minmax, Limit Requirements>> section (internal issue 4014).
  * Move the description of VkResult code VK_ERROR_NOT_ENOUGH_SPACE_KHR to
    the <<fundamentals-errorcodes, Error Codes>> list instead of the Success
    Codes list (internal issue 4017).
  * Fix some VUs for VK_EXT_swapchain_maintenance1 (internal MR 6199).
  * Reword the first synchronization scope description for
    <<synchronization-semaphores-waiting, Semaphore Waiting>> to be more
    clear and explicit (internal MR 6835).
  * Coalesce decode output variants in XML `<videoformat>` tags (internal MR
    6850).
  * Fix some structure names in new 'require' / 'feature' tags (internal MR
    6852).
  * Move VK_KHR_compute_shader_derivatives feature requirement to vk.xml
    (internal MR 6854).
  * Remove redundant VkDrawIndirectCommand VU 00500 and
    VkDrawIndexedIndirectCommand VU 00552 (internal MR 6856).
  * Add SPIR-V definition for "`<<spirvenv-correct-result, Correct
    Result>>`" and use it to not imply rounding for exact operations in the
    <<spirvenv-precision-core-table, Precision of core SPIR-V Instructions>>
    table (internal MR 6859).
  * Remove asciidoctor-generated footer text from spec outputs (internal MR
    6860).
  * Require OpFDiv to respect SignedZeroInfNanPreserve in the
    <<spirvenv-precision-operation, Precision and Operation of SPIR-V
    Instructions>> section (internal MR 6862).
  * Add feature tags to vk.xml that were tested in CTS already but not
    mentioned in the specification (internal MR 6864).
  * Improve API code version refpages by including the
    automatically-generated API interface content from the version appendix
    of the specification that was previously omitted (internal MR 6865).
  * Merge common draw VUs for shader object and pipeline viewport scaling
    when VK_NV_clip_space_w_scaling is enabled (internal MR 6871).
  * Merge common draw VUs for shader object and pipeline viewport rate
    palette when VK_NV_shading_rate_image is enabled (internal MR 6872).
  * Merge common draw vertex binding VUs for shader object and pipeline
    patch control and update corresponding language in the shader object
    <<shaders-objects-state Setting State>> section (internal MR 6876).
  * Fix definition of the built-in variable
    <<interfaces-builtin-variables-viewindex, ViewIndex>> to specify it
    returns bit indexes, not bit values (internal MR 6877).
  * Add pipeline coarse sample order to shader object common draw VU 09233
    when VK_NV_shading_rate_image is enabled (internal MR 6882).
  * Add missing XML `feature` tags for AMD vendor extensions (internal MR
    6889).
  * Fix common draw VU interactions with dynamic rasterization samples state
    from VK_EXT_sample_locations (internal MR 6896).

New Extensions

  * VK_EXT_depth_clamp_control
  * VK_EXT_device_generated_commands

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/486e4b289053a7d64784e7ce791711843c60c235

new extensions:

- VK_EXT_depth_clamp_control
QuoteThis extension allows the application to control the viewport depth clamp range separately from the viewport pname:minDepth and pname:maxDepth. This gives the ability for the application to restrict depth values to an application-defined range rather than the viewport depth range.

It can be used to set a smaller or larger clamping range than the viewport depth range without affecting the depth mapping of the viewport transform.

- VK_EXT_device_generated_commands
QuoteThis extension allows the device to generate a number of commands for command buffers. It provides a subset of functionality from both VK_NV_device_generated_commands and VK_NV_device_generated_commands_compute as well as some new features.

Stefan

#258
QuoteChange log for October 4, 2024 Vulkan 1.3.297 spec update:

Public Issues
* Fix references to images in proposal documents (public issue 2441). Internal Issues * Add new <<acceleration-structure-degenerate-prims, Degenerate Primitives and Instances>> section for acceleration structures (internal issue 3932). * Rewrite language to clarify behavior with out-of-AABB intersections in the <<ray-intersection-confirmation, Ray Intersection Confirmation>> section (internal issue 3973).

New Extensions
* VK_EXT_present_mode_fifo_latest_ready

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/74d7efc182c8e91002221c68f321c05fd596cc70

New Extension:
- VK_EXT_present_mode_fifo_latest_ready
QuoteThis device extension adds a new present mode, ename:VK_PRESENT_MODE_FIFO_LATEST_READY_EXT.

This tear-free present mode behaves much like ename:VK_PRESENT_MODE_FIFO_KHR, except that each vertical blanking period dequeues consecutive present requests until the latest ready is found to update the current image.

While this seems similar in concept to ename:VK_PRESENT_MODE_MAILBOX_KHR, the fundamental difference is that the processing of the present requests is done during vblank. From the application perspective, this means for example, that in a flip-based model, a single vblank may: cause multiple swapchain images to be released at once, while ename:VK_PRESENT_MODE_MAILBOX_KHR may: continuously be releasing images as new requests become ready.

This additional present mode is useful when using a time-based present API.


Stefan

#259
QuoteChange log for October 11, 2024 Vulkan 1.3.298 spec update:

Public Issues
* Add location order to the definition of from-reads in the <<memory-model-acyclicity, Acyclicity>> section (public PR 2402). Internal Issues
* Add VK_KHR_cooperative_matrix to the <<memory-model-cooperative-matrix, Cooperative Matrix Memory Access>> section and allow multiple invocations to do the load (internal MR 6833).
* Fix VkIndirectCommandsPushConstantTokenEXT::pPushConstant XML for all relevant union `selection` values (internal MR 6906).
* Add missing limittypes to VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT in XML (internal MR 6907).
* Fix missing exception for VK_IMAGE_CREATE_EXTENDED_USAGE_BIT in the <<video-profile-compatibility, Video Profile Compatibility>> section (internal MR 6908).
* Add missing `const` to VkGeneratedCommandsMemoryRequirementsInfoEXT::pNext in XML (internal MR 6912).

New Extensions
* VK_AMDX_shader_enqueue (provisional extension updated to V2 API) (public PR 2442).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/05d5444cce55e340e07ead87d552407da5ea8771

New extension:
- VK_AMDX_shader_enqueue
QuoteThis extension adds the ability for developers to enqueue mesh and compute shader workgroups from other compute shaders.