FauxVkDB
繁體中文

turnip_mrpurple_T26-toasted 對比 Qualcomm Technologies Inc. Adreno Vulkan Driver

在 Adreno (TM) 740 上 (AYN Odin2, AYN Odin2 Portal, AYN Thor, Moorechip Retroid Pocket Nova, motorola edge plus 2023, OnePlus 11 5G, POCO F6 Pro, Samsung Galaxy S23, Samsung Galaxy S23, Samsung Galaxy S23, Samsung Galaxy S23 Ultra, Samsung Galaxy S23 Ultra, Samsung Galaxy S23+, Sony Xperia 1 V, Xiaomi 13 pro). 先列出的驅動程式與後一個對比,後一個是基準。

原廠Qualcomm Technologies Inc. Adreno Vulkan DriverDriver Build: 21f38f5499, I04c91a5be4, 1765208756
對比
自訂turnip_mrpurple_T26-toastedPurpleVK 26.1.0-devel (git-1c4d081f8c)
圖形系統版本(Vulkan)1.3.128 → 1.4.344
可選功能(擴充功能)115 → 166+61 -10
通過檢測的功能(已驗證)41 → 499 個僅在 turnip_mrpurple_T26-toasted 上通過 1 個僅在 Qualcomm Technologies Inc. Adreno Vulkan Driver 上通過
跑分測試場景(基準測試)3 個更快 1 個更慢總體快 4%(幾何平均)
各驅動程式能跑的遊戲(根據功能列表估算):綠色大致能跑,黃色未必能跑,橙色問題較多,紅色跑不動
原廠DX92002+DX102006+DX112009+DX122015+Switch
自訂DX92002+DX102006+DX112009+DX122015+Switch
  • hdr_2160p慢 9%
  • oit_linked_lists快 4%
  • pipeline_barriers_2160p快 19%
  • subpasses_2160p快 3%

每個場景中自訂驅動程式與原廠驅動程式的對比。長條向右表示更快,向左表示更慢。

2 個場景的畫面有局部區域與原廠驅動程式不同 (pipeline_barriers:2304 個格子中有 1791 個, pipeline_barriers_2160p:2304 個格子中有 1676 個). 整體畫面是一致的,所以這是局部渲染故障,而不是畫了另一個場景。

沒有每次都能啟動: compute_nbody (原廠 3 / 3, 自訂 0 / 3).

Qualcomm Technologies Inc. Adreno Vulkan Driver 詳情 turnip_mrpurple_T26-toasted 詳情

結果不同的功能檢測(35)

功能原廠自訂變化
core.compute_udiv
core
通過失敗減少
borderColorSwizzle
VK_EXT_border_color_swizzle
不支援通過新增
extendedDynamicState3ColorBlendEnable
VK_EXT_extended_dynamic_state3
不支援通過新增
extendedDynamicState3ColorBlendEquation
VK_EXT_extended_dynamic_state3
不支援通過新增
extendedDynamicState3ColorWriteMask
VK_EXT_extended_dynamic_state3
不支援通過新增
extendedDynamicState3DepthClampEnable
VK_EXT_extended_dynamic_state3
不支援通過新增
extendedDynamicState3LogicOpEnable
VK_EXT_extended_dynamic_state3
不支援通過新增
extendedDynamicState3PolygonMode
VK_EXT_extended_dynamic_state3
不支援通過新增
inlineUniformBlock
VK_EXT_inline_uniform_block
不支援通過新增
shaderBufferInt64Atomics
VK_KHR_shader_atomic_int64
不支援通過新增
borderColorSwizzleFromImage
VK_EXT_border_color_swizzle
不支援未檢測有變化
extendedDynamicState3AlphaToCoverageEnable
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3AlphaToOneEnable
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3ConservativeRasterizationMode
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3DepthClipEnable
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3DepthClipNegativeOneToOne
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3ExtraPrimitiveOverestimationSize
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3LineRasterizationMode
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3ProvokingVertexMode
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3RasterizationSamples
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3RasterizationStream
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3SampleLocationsEnable
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3SampleMask
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
extendedDynamicState3TessellationDomainOrigin
VK_EXT_extended_dynamic_state3
不支援未檢測有變化
descriptorBindingInlineUniformBlockUpdateAfterBind
VK_EXT_inline_uniform_block
不支援未檢測有變化
shaderInt64
VkPhysicalDeviceFeatures
不支援未檢測有變化
shaderResourceMinLod
VkPhysicalDeviceFeatures
不支援未檢測有變化
shaderResourceResidency
VkPhysicalDeviceFeatures
不支援未檢測有變化
shaderTessellationAndGeometryPointSize
VkPhysicalDeviceFeatures
不支援未檢測有變化
sparseResidency16Samples
VkPhysicalDeviceFeatures
未檢測不支援有變化
sparseResidency2Samples
VkPhysicalDeviceFeatures
未檢測不支援有變化
sparseResidency4Samples
VkPhysicalDeviceFeatures
未檢測不支援有變化
sparseResidency8Samples
VkPhysicalDeviceFeatures
未檢測不支援有變化
sparseResidencyAliased
VkPhysicalDeviceFeatures
不支援未檢測有變化
sparseResidencyImage2D
VkPhysicalDeviceFeatures
未檢測不支援有變化

跑分測試場景(基準測試)

兩個驅動程式不是在同一批裝置型號上測的。不同裝置的幀時間不能用來比較驅動程式,看這些資料時請記住這一點。

場景原廠 ms自訂 ms差異啟動次數GPU 頻率,MHz畫面對比原廠
compute_nbody6.66 典型值 6.54n/a僅一側有3 / 3 對比 0 / 3? 對比 ? 頻率未知未檢測
compute_nbody_2x21.41 典型值 21.31n/a僅一側有3 / 3 對比 ?? 對比 ? 頻率未知未檢測
hdr_2160p23.10 典型值 22.8625.33 典型值 25.26慢 9%3 / 3 對比 3 / 3? 對比 680 頻率未知沒有明顯差異 0.0 沒有細微差異 最差 0.3 64x36
oit_linked_lists26.50 典型值 26.2525.38 典型值 25.30快 4%3 / 3 對比 3 / 3? 對比 680 頻率未知沒有明顯差異 0.0 沒有細微差異 最差 0.0 64x36
pipeline_barriers2.67 典型值 2.683.26 典型值 2.78太輕,參見 pipeline_barriers_2160p3 / 3 對比 3 / 3? 對比 572 頻率未知沒有明顯差異 8.8 有 1791 處小區域不同 最差 86.0 64x36
pipeline_barriers_2160p9.07 典型值 9.157.62 典型值 7.63快 19%3 / 3 對比 3 / 3? 對比 680 頻率未知沒有明顯差異 11.2 有 1676 處小區域不同 最差 76.7 64x36
subpasses4.08 典型值 4.124.46 典型值 4.41太輕,參見 subpasses_2160p3 / 3 對比 3 / 3? 對比 680 頻率未知未檢測
subpasses_2160p14.72 典型值 14.7314.30 典型值 14.30快 3%3 / 3 對比 3 / 3? 對比 680 頻率未知未檢測

繪製一幀所需的時間,按場景統計:取該場景最佳一輪的平均幀時間,也就是驅動程式交付了多少幀;越低越快。旁邊的「典型值」是中位幀,當驅動程式的幀分成兩種速度時,它可能比平均值低很多。在記錄每輪平均值之前產生的一對報告,改用中位數對比。各輪之間相差超過 15% 的場景會被排除。標為「鎖幀」的場景,是被驅動程式或顯示佇列鎖在了那個平均幀時間上,並且同一次執行中至少還有另一個場景也是如此;它的耗時反映的是幀的間隔,而不是驅動程式渲染得有多快,所以不參與對比。標為「太輕」的場景,在標準尺寸(1920×1080)下兩個驅動程式都不到 8 ms,此時螢幕的幀佇列對幀間隔的影響比晶片更大;這時對比的是它更重的版本:以 _2160p 結尾的行是以 3840×2160 繪製的該場景,compute_nbody_2x 是粒子數翻倍的該場景。「更快」和「更慢」描述的是 turnip_mrpurple_T26-toasted 相對 Qualcomm Technologies Inc. Adreno Vulkan Driver。「畫面對比原廠」把每個場景的一個固定幀按粗略的色塊網格對比(0 為完全相同,超過 40 表示畫面不同),用來找出沒有被畫出來的場景。如果兩份報告都帶有更細的 64×36 網格,第二個數字是其 2,304 個格子中有多少個差異超過 255 裡的 4,「最差」是單個格子的最大差異;這能找出其餘部分都一致的畫面裡的小渲染錯誤。標為 16x9 的行來自細網格出現之前產生的報告。「啟動次數」是一個場景的處理程序啟動中,有多少次進入了被測量的一輪。標為「不可比」的 GPU 頻率,表示兩次計時之間的差異超過裝置最大頻率的 5%。

技術差異(Vulkan)

僅 turnip_mrpurple_T26-toasted 有的擴充功能(61)
  • VK_AMD_buffer_marker
  • VK_ARM_rasterization_order_attachment_access
  • VK_EXT_attachment_feedback_loop_dynamic_state
  • VK_EXT_attachment_feedback_loop_layout
  • VK_EXT_border_color_swizzle
  • VK_EXT_conditional_rendering
  • VK_EXT_custom_resolve
  • VK_EXT_depth_clamp_zero_one
  • VK_EXT_descriptor_buffer
  • VK_EXT_device_address_binding_report
  • VK_EXT_dynamic_rendering_unused_attachments
  • VK_EXT_extended_dynamic_state3
  • VK_EXT_external_memory_dma_buf
  • VK_EXT_fragment_density_map_offset
  • VK_EXT_graphics_pipeline_library
  • VK_EXT_host_image_copy
  • VK_EXT_image_2d_view_of_3d
  • VK_EXT_image_drm_format_modifier
  • VK_EXT_inline_uniform_block
  • VK_EXT_legacy_dithering
  • VK_EXT_legacy_vertex_attributes
  • VK_EXT_map_memory_placed
  • VK_EXT_memory_budget
  • VK_EXT_multi_draw
  • VK_EXT_multisampled_render_to_single_sampled
  • VK_EXT_mutable_descriptor_type
  • VK_EXT_nested_command_buffer
  • VK_EXT_non_seamless_cube_map
  • VK_EXT_primitives_generated_query
  • VK_EXT_rasterization_order_attachment_access
  • VK_EXT_shader_module_identifier
  • VK_EXT_shader_replicated_composites
  • VK_EXT_shader_uniform_buffer_unsized_array
  • VK_EXT_shader_viewport_index_layer
  • VK_EXT_zero_initialize_device_memory
  • VK_GOOGLE_decorate_string
  • VK_GOOGLE_hlsl_functionality1
  • VK_KHR_compute_shader_derivatives
  • VK_KHR_dynamic_rendering_local_read
  • VK_KHR_index_type_uint8
  • VK_KHR_line_rasterization
  • VK_KHR_load_store_op_none
  • VK_KHR_maintenance5
  • VK_KHR_maintenance6
  • VK_KHR_maintenance7
  • VK_KHR_map_memory2
  • VK_KHR_pipeline_library
  • VK_KHR_ray_tracing_maintenance1
  • VK_KHR_shader_atomic_int64
  • VK_KHR_shader_clock
  • VK_KHR_shader_expect_assume
  • VK_KHR_shader_float_controls2
  • VK_KHR_shader_relaxed_extended_instruction
  • VK_KHR_shader_subgroup_rotate
  • VK_KHR_vertex_attribute_divisor
  • VK_KHR_workgroup_memory_explicit_layout
  • VK_NV_compute_shader_derivatives
  • VK_QCOM_multiview_per_view_render_areas
  • VK_QCOM_multiview_per_view_viewports
  • VK_VALVE_fragment_density_map_layered
  • VK_VALVE_mutable_descriptor_type
僅 Qualcomm Technologies Inc. Adreno Vulkan Driver 有的擴充功能(10)
  • VK_EXT_astc_decode_mode
  • VK_EXT_blend_operation_advanced
  • VK_EXT_fragment_density_map2
  • VK_EXT_swapchain_maintenance1
  • VK_KHR_shared_presentable_image
  • VK_KHR_swapchain_mutable_format
  • VK_QCOM_render_pass_store_ops
  • VK_QCOM_render_pass_transform
  • VK_QCOM_rotated_copy_commands
  • VK_QCOM_tile_properties
不同的核心功能(22)
protectedMemory Vulkan 1.1通過 → 不支援
shaderBufferInt64Atomics Vulkan 1.2不支援 → 通過
shaderInputAttachmentArrayDynamicIndexing Vulkan 1.2通過 → 不支援
shaderInputAttachmentArrayNonUniformIndexing Vulkan 1.2通過 → 不支援
shaderOutputLayer Vulkan 1.2不支援 → 通過
shaderOutputViewportIndex Vulkan 1.2不支援 → 通過
bresenhamLines Vulkan 1.4不支援 → 通過
dynamicRenderingLocalRead Vulkan 1.4不支援 → 通過
globalPriorityQuery Vulkan 1.4不支援 → 通過
hostImageCopy Vulkan 1.4不支援 → 通過
indexTypeUint8 Vulkan 1.4不支援 → 通過
maintenance5 Vulkan 1.4不支援 → 通過
maintenance6 Vulkan 1.4不支援 → 通過
pipelineRobustness Vulkan 1.4不支援 → 通過
pushDescriptor Vulkan 1.4不支援 → 通過
rectangularLines Vulkan 1.4不支援 → 通過
shaderExpectAssume Vulkan 1.4不支援 → 通過
shaderFloatControls2 Vulkan 1.4不支援 → 通過
shaderSubgroupRotate Vulkan 1.4不支援 → 通過
shaderSubgroupRotateClustered Vulkan 1.4不支援 → 通過
vertexAttributeInstanceRateDivisor Vulkan 1.4不支援 → 通過
vertexAttributeInstanceRateZeroDivisor Vulkan 1.4不支援 → 通過
不同的限制(19)
限制原廠自訂
bufferImageGranularity164
sparseAddressSpaceSize562949953421311274877906944
maxPerStageResources5033164816777216
maxDescriptorSetUniformBuffersDynamic3216
maxDescriptorSetStorageBuffersDynamic168
maxVertexInputAttributeOffset40964095
maxGeometryInputComponents12864
maxGeometryOutputVertices1024256
maxGeometryTotalOutputComponents1310721024
maxFragmentInputComponents112124
maxComputeWorkGroupInvocations10242048
minMemoryMapAlignment644096
minStorageBufferOffsetAlignment644
maxFramebufferLayers20481024
timestampPeriod52.083333.1126
discreteQueuePriorities32
optimalBufferCopyOffsetAlignment64128
optimalBufferCopyRowPitchAlignment64128
nonCoherentAtomSize164
只有一個驅動程式支援的格式(多了 29 種,少了 1 種)

僅 turnip_mrpurple_T26-toasted 有:

  • A1B5G5R5_UNORM_PACK16
  • A2B10G10R10_SSCALED_PACK32
  • A2B10G10R10_USCALED_PACK32
  • A2R10G10B10_SSCALED_PACK32
  • A2R10G10B10_USCALED_PACK32
  • A8B8G8R8_SSCALED_PACK32
  • A8B8G8R8_USCALED_PACK32
  • A8_UNORM
  • B8G8R8A8_SSCALED
  • B8G8R8A8_USCALED
  • B8G8R8_SINT
  • B8G8R8_SNORM
  • B8G8R8_UINT
  • R16G16B16A16_SSCALED
  • R16G16B16A16_USCALED
  • R16G16B16_SSCALED
  • R16G16B16_USCALED
  • R16G16_SSCALED
  • R16G16_USCALED
  • R16_SSCALED
  • R16_USCALED
  • R8G8B8A8_SSCALED
  • R8G8B8A8_USCALED
  • R8G8B8_SSCALED
  • R8G8B8_USCALED
  • R8G8_SSCALED
  • R8G8_USCALED
  • R8_SSCALED
  • R8_USCALED

僅 Qualcomm Technologies Inc. Adreno Vulkan Driver 有:

  • G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16