查询 Vulkan 中子组可访问的本地内存大小

Query size of local memory accessible to subgroups in Vulkan

有没有办法知道每个计算单元可以访问多少本地内存?例如在 OpenCL 中我可以调用

cl_ulong size;
clGetDeviceInfo(deviceID, CL_DEVICE_LOCAL_MEM_SIZE, sizeof(cl_ulong), &size, 0);

Vulkan 应该有类似的东西。

相当于 OpenCL 本地内存的 GLSL 计算着色器抽象是 shared memory: memory accessible to all work items in a work group (defined by shared-qualified variables). As such, you may query GL_MAX_COMPUTE_SHARED_MEMORY_SIZE 以获得共享内存的数量。