VkPhysicalDevice(3)

# VkPhysicalDevice(3) Manual Page

## Name

VkPhysicalDevice - Opaque handle to a physical device object

## C Specification

Vulkan separates the concept of physical and logical devices. A physical device usually represents a single complete implementation of Vulkan (excluding instance-level functionality) available to the host, of which there are a finite number. A logical device represents an instance of that implementation with its own state and resources independent of other logical devices.

Physical devices cannot be independently destroyed, and are instead destroyed with the VkInstance that they were retrieved from.

Physical devices are represented by `VkPhysicalDevice` handles:

    // Provided by VK_VERSION_1_0
    VK_DEFINE_HANDLE(VkPhysicalDevice)

## See Also

VK_DEFINE_HANDLE, VK_VERSION_1_0, VkDeviceGroupDeviceCreateInfo, VkPhysicalDeviceGroupProperties, vkAcquireDrmDisplayEXT, vkAcquireWinrtDisplayNV, vkAcquireXlibDisplayEXT, vkCreateDevice, vkCreateDisplayModeKHR, vkEnumerateDeviceExtensionProperties, vkEnumerateDeviceLayerProperties, vkEnumeratePhysicalDeviceQueueFamilyPerformanceCountersByRegionARM, vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR, vkEnumeratePhysicalDeviceShaderInstrumentationMetricsARM, vkEnumeratePhysicalDevices, vkGetDisplayModeProperties2KHR, vkGetDisplayModePropertiesKHR, vkGetDisplayPlaneCapabilities2KHR, vkGetDisplayPlaneCapabilitiesKHR, vkGetDisplayPlaneSupportedDisplaysKHR, vkGetDrmDisplayEXT, vkGetPhysicalDeviceCalibrateableTimeDomainsKHR, vkGetPhysicalDeviceCalibrateableTimeDomainsKHR, vkGetPhysicalDeviceCooperativeMatrixFlexibleDimensionsPropertiesNV, vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR, vkGetPhysicalDeviceCooperativeMatrixPropertiesNV, vkGetPhysicalDeviceCooperativeVectorPropertiesNV, vkGetPhysicalDeviceDescriptorSizeEXT, vkGetPhysicalDeviceDirectFBPresentationSupportEXT, vkGetPhysicalDeviceDisplayPlaneProperties2KHR, vkGetPhysicalDeviceDisplayPlanePropertiesKHR, vkGetPhysicalDeviceDisplayProperties2KHR, vkGetPhysicalDeviceDisplayPropertiesKHR, vkGetPhysicalDeviceExternalBufferProperties, vkGetPhysicalDeviceExternalBufferProperties, vkGetPhysicalDeviceExternalFenceProperties, vkGetPhysicalDeviceExternalFenceProperties, vkGetPhysicalDeviceExternalImageFormatPropertiesNV, vkGetPhysicalDeviceExternalSemaphoreProperties, vkGetPhysicalDeviceExternalSemaphoreProperties, vkGetPhysicalDeviceExternalTensorPropertiesARM, vkGetPhysicalDeviceFeatures, vkGetPhysicalDeviceFeatures2, vkGetPhysicalDeviceFeatures2, vkGetPhysicalDeviceFormatProperties, vkGetPhysicalDeviceFormatProperties2, vkGetPhysicalDeviceFormatProperties2, vkGetPhysicalDeviceFragmentShadingRatesKHR, vkGetPhysicalDeviceImageFormatProperties, vkGetPhysicalDeviceImageFormatProperties2, vkGetPhysicalDeviceImageFormatProperties2, vkGetPhysicalDeviceMemoryProperties, vkGetPhysicalDeviceMemoryProperties2, vkGetPhysicalDeviceMemoryProperties2, vkGetPhysicalDeviceMultisamplePropertiesEXT, vkGetPhysicalDeviceOpticalFlowImageFormatsNV, vkGetPhysicalDevicePresentRectanglesKHR, vkGetPhysicalDeviceProperties, vkGetPhysicalDeviceProperties2, vkGetPhysicalDeviceProperties2, vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM, vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM, vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM, vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM, vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR, vkGetPhysicalDeviceQueueFamilyProperties, vkGetPhysicalDeviceQueueFamilyProperties2, vkGetPhysicalDeviceQueueFamilyProperties2, vkGetPhysicalDeviceScreenPresentationSupportQNX, vkGetPhysicalDeviceSparseImageFormatProperties, vkGetPhysicalDeviceSparseImageFormatProperties2, vkGetPhysicalDeviceSparseImageFormatProperties2, vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV, vkGetPhysicalDeviceSurfaceCapabilities2EXT, vkGetPhysicalDeviceSurfaceCapabilities2KHR, vkGetPhysicalDeviceSurfaceCapabilitiesKHR, vkGetPhysicalDeviceSurfaceFormats2KHR, vkGetPhysicalDeviceSurfaceFormatsKHR, vkGetPhysicalDeviceSurfacePresentModes2EXT, vkGetPhysicalDeviceSurfacePresentModesKHR, vkGetPhysicalDeviceSurfaceSupportKHR, vkGetPhysicalDeviceToolProperties, vkGetPhysicalDeviceToolProperties, vkGetPhysicalDeviceUbmPresentationSupportSEC, vkGetPhysicalDeviceVideoCapabilitiesKHR, vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR, vkGetPhysicalDeviceVideoFormatPropertiesKHR, vkGetPhysicalDeviceWaylandPresentationSupportKHR, vkGetPhysicalDeviceWin32PresentationSupportKHR, vkGetPhysicalDeviceXcbPresentationSupportKHR, vkGetPhysicalDeviceXlibPresentationSupportKHR, vkGetRandROutputDisplayEXT, vkGetWinrtDisplayNV, vkReleaseDisplayEXT

## Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0