KhronosGroup / KhronosGroup/Vulkan-Tools

Display lists from extensions with vkGetPhysicalDevice property functions

Open
#1,174 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
491
Forks
202
Avg merge
1h 37m
Merged PRs (30d)
4

Description

It would be awesome if Vulkaninfo could call `vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR` (and similar functions) to display things, otherwise it is annoying to have to write code to manually print it locally each time

-----

Using a small vulkanobject script, found all the current missing things

```python
#!/usr/bin/env python3
from vulkan_object import get_vulkan_object
vk = get_vulkan_object()

for command in vk.commands.values():
if command.name.startswith('vkGetPhysicalDevice'):
print(command.name)
```

result

```
vkGetPhysicalDeviceFeatures
vkGetPhysicalDeviceFormatProperties
vkGetPhysicalDeviceImageFormatProperties
vkGetPhysicalDeviceProperties
vkGetPhysicalDeviceQueueFamilyProperties
vkGetPhysicalDeviceMemoryProperties
vkGetPhysicalDeviceSparseImageFormatProperties
vkGetPhysicalDeviceFeatures2
vkGetPhysicalDeviceProperties2
vkGetPhysicalDeviceFormatProperties2
vkGetPhysicalDeviceImageFormatProperties2
vkGetPhysicalDeviceQueueFamilyProperties2
vkGetPhysicalDeviceMemoryProperties2
vkGetPhysicalDeviceSparseImageFormatProperties2
vkGetPhysicalDeviceExternalBufferProperties
vkGetPhysicalDeviceExternalFenceProperties
vkGetPhysicalDeviceExternalSemaphoreProperties
vkGetPhysicalDeviceToolProperties
vkGetPhysicalDeviceSurfaceSupportKHR
vkGetPhysicalDeviceSurfaceCapabilitiesKHR
vkGetPhysicalDeviceSurfaceFormatsKHR
vkGetPhysicalDeviceSurfacePresentModesKHR
vkGetPhysicalDevicePresentRectanglesKHR
vkGetPhysicalDeviceDisplayPropertiesKHR
vkGetPhysicalDeviceDisplayPlanePropertiesKHR
vkGetPhysicalDeviceXlibPresentationSupportKHR
vkGetPhysicalDeviceXcbPresentationSupportKHR
vkGetPhysicalDeviceWaylandPresentationSupportKHR
vkGetPhysicalDeviceWin32PresentationSupportKHR
vkGetPhysicalDeviceVideoCapabilitiesKHR
vkGetPhysicalDeviceVideoFormatPropertiesKHR
vkGetPhysicalDeviceFeatures2KHR
vkGetPhysicalDeviceProperties2KHR
vkGetPhysicalDeviceFormatProperties2KHR
vkGetPhysicalDeviceImageFormatProperties2KHR
vkGetPhysicalDeviceQueueFamilyProperties2KHR
vkGetPhysicalDeviceMemoryProperties2KHR
vkGetPhysicalDeviceSparseImageFormatProperties2KHR
vkGetPhysicalDeviceExternalBufferPropertiesKHR
vkGetPhysicalDeviceExternalSemaphorePropertiesKHR
vkGetPhysicalDeviceExternalFencePropertiesKHR
vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
vkGetPhysicalDeviceSurfaceCapabilities2KHR
vkGetPhysicalDeviceSurfaceFormats2KHR
vkGetPhysicalDeviceDisplayProperties2KHR
vkGetPhysicalDeviceDisplayPlaneProperties2KHR
vkGetPhysicalDeviceFragmentShadingRatesKHR
vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR
vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR
vkGetPhysicalDeviceCalibrateableTimeDomainsKHR
vkGetPhysicalDeviceExternalImageFormatPropertiesNV
vkGetPhysicalDeviceSurfaceCapabilities2EXT
vkGetPhysicalDeviceMultisamplePropertiesEXT
vkGetPhysicalDeviceCalibrateableTimeDomainsEXT
vkGetPhysicalDeviceToolPropertiesEXT
vkGetPhysicalDeviceCooperativeMatrixPropertiesNV
vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
vkGetPhysicalDeviceSurfacePresentModes2EXT
vkGetPhysicalDeviceDirectFBPresentationSupportEXT
vkGetPhysicalDeviceScreenPresentationSupportQNX
vkGetPhysicalDeviceExternalTensorPropertiesARM
vkGetPhysicalDeviceOpticalFlowImageFormatsNV
vkGetPhysicalDeviceCooperativeVectorPropertiesNV
vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM
vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM
vkGetPhysicalDeviceCooperativeMatrixFlexibleDimensionsPropertiesNV
```

Contributor guide

Open the contributing guide

Research direction

Start in the vulkaninfo implementation that currently displays physical-device properties, then compare its supported calls with the listed vkGetPhysicalDevice* functions. Review how extension availability is handled before adding the missing property queries, and consider the work done when supported extension property lists are displayed without requiring a separate script.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
devtools
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.