From f3796e3b87a95280a78380698b01dda687ed7a16 Mon Sep 17 00:00:00 2001
From: FuXiii VkDeviceQueueCreateInfo其中
queueFamilyIndex
必须 是目标物理设备中有效的设备队列族索引,并且 queueCount
必须 小于等于 queueFamilyIndex
索引对应的设备队列族中的队列数量。
其中 pQueuePriorities
配置的优先级的有效等级范围为 [0, 1]
,优先级越大,优先级越高。其中 0.0
是最低的优先级, 1.0
是最高的优先级。在某些设备中,优先级越高意味着将会得到更多的执行机会,具体的队列调由设备自身管理, Vulkan
并不规定调度规则。
在同一逻辑设备上优先级高的设备队列可能会导致低优先级的设备队列长时间处于 饥饿
状态,直到高级别的设备队列执行完所有指令。但不同的逻辑设备中的某一设备队列饥饿不会影响另一个逻辑设备上的设备队列。
备注
-VkDeviceQueueCreateInfo::flags
+VkDeviceQueueCreateInfo::flags
VkDeviceQueueCreateFlagBits
在 Vulkan 1.0
版本中没用定义任何成员。
2024/3/3 增加 VkPhysicalDeviceMemoryProperties
章节。
2024/3/3 增加 VkMemoryHeap
章节。
2024/3/3 增加 VkMemoryType
章节。
2024/3/3 更新 设备内存
章节。
Vulkan
中有两种分配内存的途径:
这些设备内存根据不同特性又分为两种类型:
Host 端内存,但可被 Device 端访问 这类内存的前提是在主板的内存条上,并且这部分内存可被 GPU
访问。
Device 端独占内存 GPU
设备自身携带的专有内存。
Device 端独占内存 GPU
设备自身携带的专有内存。数据在该内存中将会有更高的性能。
其示意图如下: