Struct screen_13::driver::physical_device::Vulkan11Properties
source · pub struct Vulkan11Properties {Show 15 fields
pub device_uuid: [u8; 16],
pub driver_uuid: [u8; 16],
pub device_luid: [u8; 8],
pub device_node_mask: u32,
pub device_luid_valid: bool,
pub subgroup_size: u32,
pub subgroup_supported_stages: ShaderStageFlags,
pub subgroup_supported_operations: SubgroupFeatureFlags,
pub subgroup_quad_operations_in_all_stages: bool,
pub point_clipping_behavior: PointClippingBehavior,
pub max_multiview_view_count: u32,
pub max_multiview_instance_index: u32,
pub protected_no_fault: bool,
pub max_per_set_descriptors: u32,
pub max_memory_allocation_size: DeviceSize,
}
Expand description
Description of Vulkan 1.1 properties.
See
VkPhysicalDeviceVulkan11Properties
manual page.
Fields§
§device_uuid: [u8; 16]
An array of VK_UUID_SIZE
u8
values representing a universally unique identifier for
the device
driver_uuid: [u8; 16]
An array of VK_UUID_SIZE
u8
values representing a universally unique identifier for the
driver build in use by the device.
device_luid: [u8; 8]
An array of VK_LUID_SIZE
u8
values representing a locally unique identifier for the
device
device_node_mask: u32
A u32
bitfield identifying the node within a linked device adapter corresponding to the
device.
device_luid_valid: bool
A bool
value that will be true
if device_luid
contains a valid LUID and
device_node_mask
contains a valid node mask, and false
if they do not.
subgroup_size: u32
The default number of invocations in each subgroup. subgroup_size
is at least 1
if any
of the physical device’s queues support VK_QUEUE_GRAPHICS_BIT
or VK_QUEUE_COMPUTE_BIT
.
subgroup_size
is a power-of-two.
subgroup_supported_stages: ShaderStageFlags
A bitfield of vk::ShaderStageFlagBits
describing the shader stages that group operations
with subgroup scope are supported in. subgroup_supported_stages
will have the
VK_SHADER_STAGE_COMPUTE_BIT
bit set if any of the physical device’s queues support
VK_QUEUE_COMPUTE_BIT
.
subgroup_supported_operations: SubgroupFeatureFlags
A bitmask of vk::SubgroupFeatureFlagBits
specifying the sets of group operations with
subgroup scope supported on this device. subgroup_supported_operations
will have the
VK_SUBGROUP_FEATURE_BASIC_BIT
bit set if any of the physical device’s queues support
VK_QUEUE_GRAPHICS_BIT
or VK_QUEUE_COMPUTE_BIT
.
subgroup_quad_operations_in_all_stages: bool
A bool
specifying whether quad group operations are available in all stages, or are
restricted to fragment and compute stages.
point_clipping_behavior: PointClippingBehavior
A vk::PointClippingBehavior
value specifying the point clipping behavior supported by the
implementation.
max_multiview_view_count: u32
max_multiview_view_count
is one greater than the maximum view index that can be used in a
subpass.
max_multiview_instance_index: u32
The maximum valid value of instance index allowed to be generated by a drawing command recorded within a subpass of a multiview render pass instance.
protected_no_fault: bool
Specifies how an implementation behaves when an application attempts to write to unprotected memory in a protected queue operation, read from protected memory in an unprotected queue operation, or perform a query in a protected queue operation.
If this limit is true
, such writes will be discarded or have undefined values written,
reads and queries will return undefined values.
If this limit is false
, applications must not perform these operations.
See memory-protected-access-rules for more information.
max_per_set_descriptors: u32
A maximum number of descriptors (summed over all descriptor types) in a single descriptor set that is guaranteed to satisfy any implementation-dependent constraints on the size of a descriptor set itself.
Applications can query whether a descriptor set that goes beyond this limit is supported
using vkGetDescriptorSetLayoutSupport
.
max_memory_allocation_size: DeviceSize
The maximum size of a memory allocation that can be created, even if there is more space available in the heap.