mainline-turnip-sync-V32 vs. Qualcomm Technologies Inc. Adreno Vulkan Driver
Auf Adreno (TM) 825 (Nothing Phone (3), Poco F7, Poco F7). Der zuerst genannte Treiber wird mit dem zweiten verglichen, der die Referenz ist.
SystemQualcomm Technologies Inc. Adreno Vulkan Driver
vs.Custommainline-turnip-sync-V32
Version des Grafiksystems (Vulkan)1.3.284 → 1.4.363
Zusatzfunktionen (Extensions)165 → 178+34 -21
Features, die ihren Check bestehen (validiert)44 → 496 nur auf mainline-turnip-sync-V32 bestanden 1 nur auf Qualcomm Technologies Inc. Adreno Vulkan Driver bestanden
Benchmark-Szenen0 schneller 1 langsamer 1 gleich6% langsamer insgesamt (geometrisches Mittel)
Spiele, die jeder Treiber ausführen könnte (eine Schätzung anhand seiner Feature-Liste): grün wahrscheinlich, gelb vielleicht, orange eingeschränkt, rot nein
SystemDX92002+DX102006+DX112009+DX122015+Switch
CustomDX92002+DX102006+DX112009+DX122015+Switch
- hdr_2160p2% schneller
- subpasses_2160p13% langsamer
Kleine Bildbereiche weichen vom System-Treiber ab in 1 Szene (pipeline_barriers: 1064 von 2304 Zellen). Das Bild stimmt insgesamt überein, es ist also ein lokaler Darstellungsfehler und keine andere Szene.
Qualcomm Technologies Inc. Adreno Vulkan Driver: Details mainline-turnip-sync-V32: 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 | n/a | nur eine Seite | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| hdr_2160p | 26.55 | 26.15 | 2% schneller | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| oit_linked_lists | 26.90 | n/a | nur eine Seite | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| pipeline_barriers | 2.76 | n/a | nur eine Seite | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied weicht in 1064 kleinen Bereichen ab |
| pipeline_barriers_2160p | 9.97 | n/a | nur eine Seite | 3 von 3 vs. ? | ? vs. ? | nicht geprüft |
| subpasses | n/a | n/a | zu leicht, siehe subpasses_2160p | 3 von 3 vs. 3 von 3 | ? vs. ? | nicht geprüft |
| subpasses_2160p | 17.23 | 19.82 | 13% langsamer | 3 von 3 vs. 3 von 3 | ? vs. ? | nicht geprüft |
Technische Unterschiede (Vulkan)
Extensions nur in mainline-turnip-sync-V32 (34)
- 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_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_drm_format_modifier
- VK_EXT_legacy_dithering
- VK_EXT_legacy_vertex_attributes
- VK_EXT_map_memory_placed
- VK_EXT_memory_budget
- VK_EXT_nested_command_buffer
- VK_EXT_non_seamless_cube_map
- VK_EXT_primitive_restart_index
- VK_EXT_shader_replicated_composites
- VK_EXT_shader_uniform_buffer_unsized_array
- VK_EXT_zero_initialize_device_memory
- VK_GOOGLE_decorate_string
- VK_GOOGLE_hlsl_functionality1
- VK_KHR_compute_shader_derivatives
- VK_KHR_maintenance7
- VK_KHR_pipeline_library
- VK_KHR_shader_relaxed_extended_instruction
- VK_NV_compute_shader_derivatives
- 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 (21)
- VK_ANDROID_external_format_resolve
- VK_EXT_astc_decode_mode
- VK_EXT_blend_operation_advanced
- VK_EXT_depth_range_unrestricted
- VK_EXT_device_fault
- VK_EXT_external_memory_acquire_unmodified
- VK_EXT_fragment_density_map2
- VK_EXT_image_compression_control_swapchain
- VK_EXT_pipeline_protected_access
- VK_EXT_shader_subgroup_ballot
- VK_KHR_ray_tracing_position_fetch
- VK_KHR_shader_maximal_reconvergence
- VK_KHR_shared_presentable_image
- VK_NV_optical_flow
- VK_QCOM_filter_cubic_weights
- VK_QCOM_image_processing2
- VK_QCOM_render_pass_store_ops
- VK_QCOM_render_pass_transform
- VK_QCOM_rotated_copy_commands
- VK_QCOM_tile_properties
- VK_QCOM_ycbcr_degamma
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 (22)
| Limit | System | Custom |
|---|---|---|
| maxTexelBufferElements | 134217728 | 536870911 |
| 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 |
| maxComputeSharedMemorySize | 32768 | 65536 |
| 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 (5 dazugekommen, 1 verloren)
- B8G8R8A8_SSCALED
- B8G8R8A8_USCALED
- B8G8R8_SINT
- B8G8R8_SNORM
- B8G8R8_UINT
- G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16