Turnip_v26.3.0-R6 vs. Qualcomm Technologies Inc. Adreno Vulkan Driver
Auf 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). Der zuerst genannte Treiber wird mit dem zweiten verglichen, der die Referenz ist.
- hdr_2160p25% langsamer
- pipeline_barriers_2160p25% schneller
- subpasses_2160p15% schneller
Kleine Bildbereiche weichen vom System-Treiber ab in 2 Szenen (pipeline_barriers: 1671 von 2304 Zellen, pipeline_barriers_2160p: 1596 von 2304 Zellen). Das Bild stimmt insgesamt überein, es ist also ein lokaler Darstellungsfehler und keine andere Szene.
Startete nicht jedes Mal: compute_nbody (System 3 von 3, Custom 0 von 3).
Nicht unter gleichen Bedingungen: Der GPU-Takt war bei 1 dieser Szenen unterschiedlich (zum Beispiel pipeline_barriers_2160p: System bei 90% des Maximums des Geräts, Custom bei 100%). Ein Teil des Frametime-Unterschieds kommt vom Takt, den das Gerät gewählt hat, nicht vom Treiber.
Qualcomm Technologies Inc. Adreno Vulkan Driver: Details Turnip_v26.3.0-R6: Details
Feature-Checks mit Unterschieden (35)
| Feature | System | Custom | Änderung |
|---|---|---|---|
| core.compute_udiv | bestanden | fehlgeschlagen | verloren |
| borderColorSwizzle | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3ColorBlendEnable | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3ColorBlendEquation | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3ColorWriteMask | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3DepthClampEnable | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3LogicOpEnable | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3PolygonMode | nicht unterstützt | bestanden | dazugekommen |
| inlineUniformBlock | nicht unterstützt | bestanden | dazugekommen |
| shaderBufferInt64Atomics | nicht unterstützt | bestanden | dazugekommen |
| borderColorSwizzleFromImage | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3AlphaToCoverageEnable | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3AlphaToOneEnable | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3ConservativeRasterizationMode | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3DepthClipEnable | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3DepthClipNegativeOneToOne | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3ExtraPrimitiveOverestimationSize | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3LineRasterizationMode | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3ProvokingVertexMode | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3RasterizationSamples | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3RasterizationStream | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3SampleLocationsEnable | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3SampleMask | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3TessellationDomainOrigin | nicht unterstützt | nicht getestet | geändert |
| descriptorBindingInlineUniformBlockUpdateAfterBind | nicht unterstützt | nicht getestet | geändert |
| shaderInt64 | nicht unterstützt | nicht getestet | geändert |
| shaderResourceMinLod | nicht unterstützt | nicht getestet | geändert |
| shaderResourceResidency | nicht unterstützt | nicht getestet | geändert |
| shaderTessellationAndGeometryPointSize | nicht unterstützt | nicht getestet | geändert |
| sparseResidency16Samples | nicht getestet | nicht unterstützt | geändert |
| sparseResidency2Samples | nicht getestet | nicht unterstützt | geändert |
| sparseResidency4Samples | nicht getestet | nicht unterstützt | geändert |
| sparseResidency8Samples | nicht getestet | nicht unterstützt | geändert |
| sparseResidencyAliased | nicht unterstützt | nicht getestet | geändert |
| sparseResidencyImage2D | nicht getestet | nicht unterstützt | geändert |
Benchmark-Szenen
Die beiden Treiber wurden nicht auf denselben Gerätemodellen gemessen. Frametimes von verschiedenen Geräten vergleichen keine Treiber, lies diese Werte also mit Vorsicht.
| Szene | System ms | Custom ms | Unterschied | Starts | GPU-Takt, MHz | Bild vs. System-Treiber |
|---|---|---|---|---|---|---|
| compute_nbody | 7.84 | n/a | nur eine Seite | 3 von 3 vs. 0 von 3 | 561 vs. ? | nicht geprüft |
| compute_nbody_2x | 25.49 | n/a | nur eine Seite | 3 von 3 vs. ? | 550 vs. ? | nicht geprüft |
| hdr_2160p | 26.73 | 35.53 | 25% langsamer | 3 von 3 vs. 3 von 3 | 550 vs. 680 | kein großer Unterschied kein kleiner Unterschied |
| oit_linked_lists | n/a | 26.61 | nur eine Seite | 3 von 3 vs. 3 von 3 | 719 vs. 680 | kein großer Unterschied kein kleiner Unterschied |
| pipeline_barriers | n/a | 2.26 | zu leicht, siehe pipeline_barriers_2160p | 3 von 3 vs. 3 von 3 | 680 vs. 680 | kein großer Unterschied weicht in 1671 kleinen Bereichen ab |
| pipeline_barriers_2160p | 9.55 | 7.62 | 25% schneller | 3 von 3 vs. 3 von 3 | 495 vs. 680 nicht vergleichbar | kein großer Unterschied weicht in 1596 kleinen Bereichen ab |
| subpasses | 5.53 | 3.75 | zu leicht, siehe subpasses_2160p | 3 von 3 vs. 3 von 3 | 549 vs. 680 nicht vergleichbar | nicht geprüft |
| subpasses_2160p | 15.58 | 13.53 | 15% schneller | 3 von 3 vs. 3 von 3 | 550 vs. 680 | nicht geprüft |
Technische Unterschiede (Vulkan)
Extensions nur in Turnip_v26.3.0-R6 (69)
- 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_debug_marker
- VK_EXT_depth_clamp_control
- 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_compression_control
- 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_primitive_restart_index
- VK_EXT_primitives_generated_query
- VK_EXT_rasterization_order_attachment_access
- VK_EXT_shader_image_atomic_int64
- VK_EXT_shader_module_identifier
- VK_EXT_shader_replicated_composites
- VK_EXT_shader_subgroup_vote
- 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_quad_control
- 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_buffer_device_address_allocation_alignment
- VK_VALVE_fragment_density_map_layered
- VK_VALVE_mutable_descriptor_type
Extensions nur in 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
Kern-Features mit Unterschieden (23)
| multiviewGeometryShader | nicht unterstützt → bestanden |
| protectedMemory | bestanden → nicht unterstützt |
| shaderBufferInt64Atomics | nicht unterstützt → bestanden |
| shaderInputAttachmentArrayDynamicIndexing | bestanden → nicht unterstützt |
| shaderInputAttachmentArrayNonUniformIndexing | bestanden → nicht unterstützt |
| shaderOutputLayer | nicht unterstützt → bestanden |
| shaderOutputViewportIndex | nicht unterstützt → bestanden |
| bresenhamLines | nicht unterstützt → bestanden |
| dynamicRenderingLocalRead | nicht unterstützt → bestanden |
| globalPriorityQuery | nicht unterstützt → bestanden |
| hostImageCopy | nicht unterstützt → bestanden |
| indexTypeUint8 | nicht unterstützt → bestanden |
| maintenance5 | nicht unterstützt → bestanden |
| maintenance6 | nicht unterstützt → bestanden |
| pipelineRobustness | nicht unterstützt → bestanden |
| pushDescriptor | nicht unterstützt → bestanden |
| rectangularLines | nicht unterstützt → bestanden |
| shaderExpectAssume | nicht unterstützt → bestanden |
| shaderFloatControls2 | nicht unterstützt → bestanden |
| shaderSubgroupRotate | nicht unterstützt → bestanden |
| shaderSubgroupRotateClustered | nicht unterstützt → bestanden |
| vertexAttributeInstanceRateDivisor | nicht unterstützt → bestanden |
| vertexAttributeInstanceRateZeroDivisor | nicht unterstützt → bestanden |
Limits mit Unterschieden (18)
| Limit | System | Custom |
|---|---|---|
| bufferImageGranularity | 1 | 64 |
| sparseAddressSpaceSize | 562949953421311 | 274877906944 |
| maxPerStageResources | 50331648 | 16777216 |
| maxDescriptorSetUniformBuffersDynamic | 32 | 16 |
| maxDescriptorSetStorageBuffersDynamic | 16 | 8 |
| maxVertexInputAttributeOffset | 4096 | 4095 |
| maxGeometryInputComponents | 128 | 64 |
| maxGeometryOutputVertices | 1024 | 256 |
| maxGeometryTotalOutputComponents | 131072 | 1024 |
| maxFragmentInputComponents | 112 | 128 |
| maxComputeWorkGroupInvocations | 1024 | 2048 |
| minMemoryMapAlignment | 64 | 4096 |
| minStorageBufferOffsetAlignment | 64 | 4 |
| maxFramebufferLayers | 2048 | 1024 |
| discreteQueuePriorities | 3 | 2 |
| optimalBufferCopyOffsetAlignment | 64 | 128 |
| optimalBufferCopyRowPitchAlignment | 64 | 128 |
| nonCoherentAtomSize | 1 | 64 |
Formate, die nur ein Treiber unterstützt (31 dazugekommen, 1 verloren)
- 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
- R64_SINT
- R64_UINT
- R8G8B8A8_SSCALED
- R8G8B8A8_USCALED
- R8G8B8_SSCALED
- R8G8B8_USCALED
- R8G8_SSCALED
- R8G8_USCALED
- R8_SSCALED
- R8_USCALED
- G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16