Turnip_v26.3.0-R5 vs. Qualcomm Technologies Inc. Adreno Vulkan Driver
Auf Adreno (TM) 750 (LENOVO TB321FU, OnePlus 13R, OnePlus 13R, Redmi K70 Pro, Samsung Galaxy S24, Samsung Galaxy S24 Ultra, Samsung Galaxy S24 Ultra, Samsung Galaxy Z Flip6, Samsung Galaxy Z Fold6, Samsung Galaxy Z Fold6, ZTE REDMAGIC 9). Der zuerst genannte Treiber wird mit dem zweiten verglichen, der die Referenz ist.
- hdr_2160p4% langsamer
- oit_linked_lists40% schneller
- pipeline_barriers68% schneller
- subpasses_2160p28% schneller
Kleine Bildbereiche weichen vom System-Treiber ab in 2 Szenen (pipeline_barriers: 1694 von 2304 Zellen, pipeline_barriers_2160p: 1037 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 verglichen: 2 Szenen mit gedeckelter Framerate (compute_nbody, pipeline_barriers_2160p). Mindestens einer der beiden Treiber war dort auf eine feste Framerate gedeckelt, deshalb messen die beiden Zeiten nicht dasselbe.
Qualcomm Technologies Inc. Adreno Vulkan Driver: Details Turnip_v26.3.0-R5: Details
Feature-Checks mit Unterschieden (24)
| Feature | System | Custom | Änderung |
|---|---|---|---|
| core.compute_udiv | bestanden | fehlgeschlagen | verloren |
| 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 |
| 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 |
| shaderResourceMinLod | nicht unterstützt | nicht getestet | geändert |
| shaderResourceResidency | nicht unterstützt | nicht getestet | geändert |
| sparseResidency16Samples | nicht getestet | nicht unterstützt | geändert |
| sparseResidencyAliased | nicht unterstützt | nicht getestet | 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 | n/a | nicht verglichen | 3 von 3 vs. 0 von 3 | ? vs. ? | nicht geprüft | |
| hdr_2160p | 19.16 | 19.99 | 4% langsamer | 3 von 3 vs. 3 von 3 | ? vs. 903 | kein großer Unterschied kein kleiner Unterschied |
| oit_linked_lists | 27.91 | 19.92 | 40% schneller | 3 von 3 vs. 3 von 3 | ? vs. 1000 | kein großer Unterschied kein kleiner Unterschied |
| pipeline_barriers | 3.87 | 2.30 | 68% schneller | 3 von 3 vs. 3 von 3 | ? vs. 896 | kein großer Unterschied weicht in 1694 kleinen Bereichen ab |
| pipeline_barriers_2160p | 6.53 | nicht verglichen | 3 von 3 vs. 3 von 3 | ? vs. 791 | kein großer Unterschied weicht in 1037 kleinen Bereichen ab | |
| subpasses | 4.07 | n/a | zu leicht, siehe subpasses_2160p | 3 von 3 vs. 3 von 3 | ? vs. 952 | nicht geprüft |
| subpasses_2160p | 13.41 | 10.44 | 28% schneller | 3 von 3 vs. 3 von 3 | ? vs. 935 | nicht geprüft |
Technische Unterschiede (Vulkan)
Extensions nur in Turnip_v26.3.0-R5 (55)
- 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_custom_resolve
- VK_EXT_debug_marker
- VK_EXT_depth_clamp_control
- VK_EXT_descriptor_buffer
- 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_compression_control
- VK_EXT_image_drm_format_modifier
- VK_EXT_legacy_dithering
- VK_EXT_legacy_vertex_attributes
- VK_EXT_map_memory_placed
- VK_EXT_memory_budget
- VK_EXT_multi_draw
- 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_replicated_composites
- VK_EXT_shader_subgroup_vote
- VK_EXT_shader_uniform_buffer_unsized_array
- VK_EXT_zero_initialize_device_memory
- VK_GOOGLE_decorate_string
- VK_GOOGLE_hlsl_functionality1
- VK_KHR_calibrated_timestamps
- 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_expect_assume
- VK_KHR_shader_float_controls2
- VK_KHR_shader_relaxed_extended_instruction
- VK_KHR_shader_subgroup_rotate
- VK_KHR_swapchain_mutable_format
- VK_KHR_vertex_attribute_divisor
- VK_NV_compute_shader_derivatives
- 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_device_fault
- VK_EXT_fragment_density_map2
- VK_KHR_shared_presentable_image
- VK_NV_optical_flow
- VK_QCOM_render_pass_store_ops
- VK_QCOM_render_pass_transform
- VK_QCOM_rotated_copy_commands
- VK_QCOM_tile_properties
Kern-Features mit Unterschieden (20)
| multiviewGeometryShader | nicht unterstützt → bestanden |
| protectedMemory | bestanden → nicht unterstützt |
| shaderInputAttachmentArrayDynamicIndexing | bestanden → nicht unterstützt |
| shaderInputAttachmentArrayNonUniformIndexing | bestanden → nicht unterstützt |
| 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 (20)
| 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 |
| minUniformBufferOffsetAlignment | 256 | 64 |
| minStorageBufferOffsetAlignment | 64 | 4 |
| maxFramebufferLayers | 2048 | 1024 |
| discreteQueuePriorities | 3 | 2 |
| pointSizeRange | 1, 4095 | 1, 4092 |
| 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