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

maxPerStageDescriptorUpdateAfterBindSamplers limit (16) is too low to work on bindless textures #2410

Open
0ro8lu opened this issue Dec 13, 2024 · 1 comment
Labels
Answered A question was answered Question

Comments

@0ro8lu
Copy link

0ro8lu commented Dec 13, 2024

Hello ^^ I've already taken a look at #2227, #1610 and tried to configure MoltenVK like the doc says but I can't seem to get it to work, I'm still getting the same validation error.

I'm running the latest MacOS Sequoia 15.1.1 on a 2021 M1Pro machine.
Vulkan SDK is 1.3.283.0, I know there's been a few releases by now, but honestly I'm just terrified I'll break everything by uninstalling a reinstalling the SDK.

` bool enabled = true;

    VkLayerSettingEXT setting{};
    setting.type = VK_LAYER_SETTING_TYPE_BOOL32_EXT;
    setting.pLayerName = "MoltenVK";
    setting.pSettingName = "MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS";
    setting.pValues = &enabled;
    setting.valueCount = 1;

    VkLayerSettingsCreateInfoEXT layer_settings_create_info{};
    layer_settings_create_info.sType = VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT;
    layer_settings_create_info.pNext = nullptr;
    layer_settings_create_info.settingCount = 1;
    layer_settings_create_info.pSettings = &setting;

    createInfo.pNext = &layer_settings_create_info;

`

This is how I'm setting the options, is it even correct? I'm still somewhat new to Vulkan.

@billhollings
Copy link
Contributor

To use bindless resources in large numbers, you need to have MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS enabled (that is disabled by default on the release you are using). You also need to be running on a GPU with Tier2 argument buffer support (which M1 Pro supports).

I know there's been a few releases by now, but honestly I'm just terrified I'll break everything by uninstalling a reinstalling the SDK.

MoltenVK now has much better Metal argument buffer support, and I would recommend upgrading. You can do this without upgrading the entire SDK, by substituting a more recent version of the MoltenVK library into the SDK distribution.

To get that more recent version of MoltenVK, you can either clone and build this repo, or download the binaries from the most recent release.

Those recent MoltenVK releases have MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS enabled by default.

@billhollings billhollings added Question Answered A question was answered labels Dec 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Answered A question was answered Question
Projects
None yet
Development

No branches or pull requests

2 participants