MCPcopy Create free account
hub / github.com/GPUOpen-Tools/GPU-Reshape / IsFamilyEmulated

Function IsFamilyEmulated

Source/Backends/Vulkan/Layer/Source/Queue.cpp:701–711  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

699}
700
701bool IsFamilyEmulated(DeviceDispatchTable *table, uint32_t familyIndex) {
702 // Special case
703 if (familyIndex == VK_QUEUE_FAMILY_IGNORED) {
704 return false;
705 }
706
707 // Emulated if it's transfer without compute, graphics families implicitly support compute
708 // If neither of the trio, there's no commands to inject.
709 const VkQueueFamilyProperties& family = table->queueFamilyProperties[familyIndex];
710 return (family.queueFlags & VK_QUEUE_TRANSFER_BIT) && !(family.queueFlags & VK_QUEUE_COMPUTE_BIT);
711}
712
713uint32_t RedirectQueueFamily(DeviceDispatchTable *table, uint32_t familyIndex) {
714 // If emulated, use the exclusive compute queue

Callers 3

Hook_vkGetDeviceQueueFunction · 0.85
Hook_vkGetDeviceQueue2Function · 0.85
RedirectQueueFamilyFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected