Releases: KhronosGroup/MoltenVK
Releases · KhronosGroup/MoltenVK
v1.2.10-rc2
Merge pull request #2276 from billhollings/sdk-testing-fixes Fixes from Vulkan SDK 1.3.290 testing.
v1.2.10-rc1
Merge pull request #2274 from billhollings/sdk-1.3.290 Update dependency libraries to match Vulkan SDK 1.3.290.
v1.2.9-rc1
Merge pull request #2231 from billhollings/fix-arg-buff-padding Fix shader argument buffer padding and atomics.
Release for Vulkan SDK 1.3.283
- Add support for extensions:
VK_EXT_host_image_copy
- To support legacy apps, restore
MoltenVK/dylibdirectory via symlink toMoltenVK/dynamic/dylib. - Enhancements to
MVKPerformanceStatistics. AddMVKPerformanceTracker::previous,
MVKQueuePerformance::waitSubmitCommandBuffers, andMVKQueuePerformance::waitPresentSwapchains. - Add
MVK_CONFIG_SHADER_DUMP_DIRconfiguration parameter to optionally dump shaders to files. - Return MoltenVK log level string in
pMessageIdNamefield of debug utils callback data. - Fix crash when using
VK_EXT_metal_objectsunder ARC. - Fix deadlock when creating a swapchain on a thread other than the main thread.
- Fix potential memory leak in
vkQueueWaitIdle(). - Fix argument buffer padding on shader conversion.
- Avoid atomic image usage if native atomics are not supported on the platform.
- Ensure buffer bindings are actually used to avoid potential overrun on Metal buffer indexes.
- Update dependency libraries to match Vulkan SDK 1.3.283.
- Update
MVK_PRIVATE_API_VERSIONto41. - Update to latest SPIRV-Cross:
- MSL: Add support for overlapping bindings.
- MSL: Use recursive template for
spvArrayCopy(). - MSL: Improve argument buffer descriptor aliasing implementation.
- MSL: Workaround compiler issue with image fence when used as reference.
- MSL: Fix SUMulExtended for 64-bit inputs.
- MSL: Handle Atomic{S,U}{Min,Max} with mismatched image sign.
- MSL: Handle missing FP16 trancendental overloads.
- MSL: Remove pointer wrapper stored in
spvDescriptorArray()to avoid potential Metal compiler bug. - MSL: Fix argument buffer padding.
v1.2.8-rc1
Merge pull request #2181 from billhollings/vulkan-sdk-1.3.280 Update dependency libraries to match Vulkan SDK 1.3.280.
Release for Vulkan SDK 1.3.280
- Add support for extensions:
VK_KHR_shader_integer_dot_product
- Improve support for iOS App Store rules by using dynamic XCFramework, instead of naked
dylib.- Static XCFramework now available in
Package/Latest/MoltenVK/static/MoltenVK.xcframework. - Dynamic XCFramework now available in
Package/Latest/MoltenVK/dynamic/MoltenVK.xcframework. - macOS dynamic library now available in
Package/Latest/MoltenVK/dynamic/dylib/macOS/libMoltenVK.dylib.
- Static XCFramework now available in
- Add
MVK_USE_METAL_PRIVATE_APIbuild setting to allow MoltenVK to be built with access to Metal private API calls.VkPhysicalDeviceFeatures::wideLinesenabled whenMVK_USE_METAL_PRIVATE_APIis enabled in a MoltenVK build.VkPhysicalDeviceFeatures::logicOpenabled whenMVK_USE_METAL_PRIVATE_APIis enabled in a MoltenVK build.VkPhysicalDeviceFeatures::depthBoundsenabled on AMD GPUs whenMVK_USE_METAL_PRIVATE_APIis enabled in a MoltenVK build.VkPhysicalDevicePortabilitySubsetFeaturesKHR::samplerMipLodBiasenabled whenMVK_USE_METAL_PRIVATE_APIis enabled in a MoltenVK build.- Metal native pipeline sample masks supported when
MVK_USE_METAL_PRIVATE_APIis enabled in a MoltenVK build.
- Enable use of native texture atomics where supported.
- Fix potential crash when using multi-planar images.
- Fix translation of fully remapped multi vertex attribute bindings.
- Fix unresolvable layered compute resolve.
- Fix visionOS build.
- Handle depth/stencil swizzle sample correctly.
- Ensure buffers available for buffer addresses in push constants.
- Don't update
currentExtentof headless surface when swapchain attached. - Don't return
VK_SUBOPTIMAL_KHRfor headless surfaces. runctsscript also output a file containing a list of the failed CTS tests.- Add documentation for using Metal GPU capture with MoltenVK.
- Update minimum macOS deployment target to 10.15.
- Update minimum iOS/tvOS deployment target to 13.0.
- Update dependency libraries to match Vulkan SDK 1.3.280.
- Update
MVK_PRIVATE_API_VERSIONto40. - Update to latest SPIRV-Cross:
- MSL: Plumb through member state to image/sampler types.
- MSL: Support variable sized descriptor array in argument buffer.
- MSL: Implement
spvDescriptorArraypath for SSBO/UBO. - MSL: Add support for SPV_EXT_integer_dot_product.
- MSL: Fix misc sign issues with dot product impl and add more coverage.
- MSL: Handle volatile properly for emulated image atomics.
- MSL: OpCopyObject declare a temp var of base type, not pointer type.
- MSL: Pass texture array index separately to atomic texture operations.
- MSL: Test image atomic for image2DArray.
- MSL: Improve handling of BDA + atomics.
- MSL: Fix type hierarchy for extended vectors.
- MSL: Fix type hierarchy for extended vectors.
- MSL:
atomic_compare_exchange_weak()supportCompilerMSL:msl_options.texture_1D_as_2D.
v1.2.7-rc2
Merge pull request #2124 from billhollings/revert-to-default-static-s…
Release for Vulkan SDK 1.3.275
- Add support for extensions:
VK_KHR_calibrated_timestampVK_KHR_format_feature_flags2VK_KHR_vertex_attribute_divisorVK_EXT_extended_dynamic_state3(Metal does not supportVK_POLYGON_MODE_POINT)VK_EXT_headless_surfaceVK_EXT_layer_settings
- Add support for format
VK_FORMAT_B4G4R4A4_UNORM_PACK16. - Add support for vertex formats
VK_FORMAT_B10G11R11_UFLOAT_PACK32&VK_FORMAT_E5B9G9R9_UFLOAT_PACK32. - Fix regression that broke
VK_POLYGON_MODE_LINE. - Fix regression in marking rendering state dirty after
vkCmdClearAttachments(). - Fix regression error in argument buffer runtime arrays.
- Fix rare deadlock during launch via
dlopen(). - Fix initial value of
VkPhysicalDeviceLimits::timestampPeriodon non-Apple Silicon GPUs. - Fix swapchain and surface bugs when windowing system is accessed from off the main thread.
- Fix system memory size of tvOS.
- Fix
heapUsagequery for non-unified memory devices. - Add a defensive guard to ensure
heapUsage[0]calculation is correct. - Clamp max per-set descriptor limit to minimum
1024. - Enable the cube texture gradient workaround for Apple Silicon.
- Ensure
lineWidthGranularityis zero if thewideLinesfeature isn't supported. - Ensure
maxDrawIndexedIndexValueset toUINT32_MAX. - Ignore no external handle types specified for buffers and images.
- Expose
VK_EXT_debug_utilsdevice functions as device functions, not instance functions. - Emit
primitiveRestartEnabledisabled warning only for strip topology. - Enable mandatory
VK_EXT_descriptor_indexingfeatures, and don't advertise extension if they are not supported. - Reduce disk space consumed after running
fetchDependenciesscript by removing intermediate file caches. - Deprecate
vkSetMoltenVKConfigurationMVK(). - Deprecate
mvk_config.hand move content tomvk_private_api.handmvk_deprecated_api.h. - The Cube demo is now based on Volk, with dynamic library linking, and dynamic function pointer calls.
- Update copyright notices to year 2024.
- Update dependency libraries to match Vulkan SDK 1.3.275.
- Update to latest SPIRV-Cross:
- MSL: Fix regression error in argument buffer runtime arrays.
- MSL: Work around broken cube texture gradients on Apple Silicon.
- MSL: Ensure discrete runtime arrays of buffers have known length.
- MSL: Implement Metal 3.1 image atomics natively.
- MSL: Fix patch vertex count with raw buffer tese input.
- MSL: Improve handling of sample masks.
- MSL: Add divide to reserved function names.
- MSL: Support std140 half matrices and arrays.
- MSL: Use more appropriate padded types.
- MSL: Don't use swizzle if we have wrapper.
- MSL: Add ray-cull mask
- MSL: Consider PtrAccessChain on array types.
- MSL: Use LHS expression to determine whether or not to do array copy.
- MSL: Only do address-of expression when needed.
- MSL: Improve PtrAccessChain handling.
- MSL: Use powr instead of pow.
- MSL: Remove special case for threadgroup array wrapper.
- MSL: Added an
Opfield toSPIRTypeand refactor.
v1.2.7-rc1
Merge pull request #2121 from billhollings/vulkan-sdk-1.3.275 Update dependency libraries to match Vulkan SDK 1.3.275.
v1.2.6-rc2
Merge pull request #2046 from billhollings/fix-prim-rsrt-warn Emit primitiveRestartEnable disabled warning only for strip topology.