Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3rd Party: Bump MoltenVK to 1.2.11 (Vulkan SDK 1.3.296) #16190

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

shinra-electric
Copy link
Contributor

Testing:

  • Ensure CI passes for both Arm and x64 builds
  • Ensure games still work

Changelog for 1.2.11:

  • Support dynamically allocating descriptors when pool is exhausted.
  • Deprecate MVKConfiguration::preallocateDescriptors and MVK_CONFIG_PREALLOCATE_DESCRIPTORS environment variable.
  • vkAllocateDescriptorSets(): Per Vulkan spec, if any descriptor set allocation fails, populate all descriptor set pointers with VK_NULL_HANDLE. In addition, return VK_ERROR_FRAGMENTED_POOL if failure was due to pool fragmentation.
  • vkUpdateDescriptorSets(): Per Vulkan spec, allow write or copy beyond the end of a descriptor binding count, including inline uniform block descriptors.
  • Update VkFormat capabilities based on latest Metal docs.
  • Ensure all MoltenVK config info set by VK_EXT_layer_settings is used.
  • Advertise VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT and VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT for storage texel buffers.
  • Support storage images in Metal argument buffers on iOS.
  • vkUpdateDescriptorSets(): Support writing beyond descriptor binding size if subsequent bindings are of same type.
  • Fix rendering issue with render pass that immediately follows a kernel dispatch.
  • Fix occasional GPU crash when a smaller descriptor set replaces a larger one.
  • Fix race condition when VkImage destroyed while used by descriptor.
  • Fix crash in vkCmdPushDescriptorSetWithTemplateKHR() when entries in VkDescriptorUpdateTemplateCreateInfo are not sorted by offset.
  • Fix issue where vkQueueWaitIdle() and vkDeviceWaitIdle() were not waiting for all commands to be enqueued before enqueuing wait operation.
  • Fix occasional incorrect detection of available descriptor sets during vkAllocateDescriptorSets().
  • Fix shader conversion failure when using storage images on iOS & tvOS with Tier 1 argument buffer support.
  • Fix occasional memory leak where spurious texel buffer was accidentally created during image-memory unbinding.
  • Fix memory leak in debug utils messenger.
  • Fix crash when VkDescriptorSetLayout is destroyed while descriptor set is in use.
  • Fix build failure on VisionOS 2.0 platform.
  • Support VK_FORMAT_A2B10G10R10_UNORM_PACK32 and VK_FORMAT_A2R10G10B10_UNORM_PACK32 formats as surface formats on all platforms.
  • Add MTLStoreAction mapping for VK_ATTACHMENT_STORE_OP_NONE.
  • Add estimate of presentMargin in returned data from vkGetPastPresentationTimingGOOGLE().
  • Update value of minSubgroupSize on AMD RX6600 to 32.
  • Fix support for running on tvOS 13.
  • Only add present handler if VK_GOOGLE_display_timing info is available during presentation.
  • Move primitive-restart-disabled warning from renderpass to pipeline creation, to reduce voluminous log noise.
  • iOS: Support storage images in Metal argument buffers.
  • Add MVKConfiguration::shaderLogEstimatedGLSL, and environment variable MVK_CONFIG_SHADER_LOG_ESTIMATED_GLSL, to enable or disable the logging of estimated GLSL code, and disable it by default
  • Fix endless loop in fetchDependencies when -- is missing on platform names.
  • Update dependency libraries to match Vulkan SDK 1.3.296.
  • Update MVK_PRIVATE_API_VERSION to version 43.
  • Update to latest SPIRV-Cross:
    • Various non-feature maintenance updates.

@shinra-electric
Copy link
Contributor Author

The build failure is unrelated to this PR.

Merging should be held until the issue is fixed and this PR can be properly tested.

@shinra-electric shinra-electric changed the title Bump MoltenVK to 1.2.11 (Vulkan SDK 1.3.296) 3rd Party: Bump MoltenVK to 1.2.11 (Vulkan SDK 1.3.296) Oct 9, 2024
@Megamouse Megamouse added Build and CI Anything related to the build process and continuous integration Driver: MoltenVK Open-source macOS Vulkan driver labels Oct 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Build and CI Anything related to the build process and continuous integration Driver: MoltenVK Open-source macOS Vulkan driver
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants