turnip_faux123_v1.2.0 contre Qualcomm Technologies Inc. Adreno Vulkan Driver
Sur Adreno (TM) 740 (AYN Odin2, AYN Odin2 Portal, AYN Thor, HONOR Magic5 Pro, Moorechip Retroid Pocket 6, Moorechip Retroid Pocket Nova, motorola edge plus 2023, OnePlus 11 5G, OnePlus 12R, POCO F6 Pro, Samsung Galaxy S23, Samsung Galaxy S23, Samsung Galaxy S23, Samsung Galaxy S23 Ultra, Samsung Galaxy S23 Ultra, Samsung Galaxy S23+, Samsung Galaxy Z Fold5, Sony Xperia 1 V, Xiaomi 13 pro). Le premier pilote cité est comparé au second, qui sert de référence.
- hdr_2160p40% plus rapide
- oit_linked_lists2% plus rapide
- pipeline_barriers_2160p6% plus rapide
- subpasses16% plus rapide
De petites zones de l'image diffèrent de celles du pilote système dans 2 scènes (pipeline_barriers : 1218 cellules sur 2304, pipeline_barriers_2160p : 1363 cellules sur 2304). L'image correspond globalement, il s'agit donc d'un défaut d'affichage local, pas d'une scène différente.
Conditions inégales : la fréquence du GPU différait pendant 2 de ces scènes (par exemple hdr_2160p : système à 100% du maximum de l'appareil, personnalisé à 89%). Une partie de l'écart de temps de frame vient de la fréquence choisie par l'appareil, pas du pilote.
Détails de Qualcomm Technologies Inc. Adreno Vulkan Driver Détails de turnip_faux123_v1.2.0
Vérifications des fonctionnalités qui diffèrent (50)
| Fonctionnalité | Système | Personnalisé | Variation |
|---|---|---|---|
| borderColorSwizzle | non pris en charge | réussi | gagné |
| extendedDynamicState3ColorBlendEnable | non pris en charge | réussi | gagné |
| extendedDynamicState3ColorBlendEquation | non pris en charge | réussi | gagné |
| extendedDynamicState3ColorWriteMask | non pris en charge | réussi | gagné |
| extendedDynamicState3DepthClampEnable | non pris en charge | réussi | gagné |
| extendedDynamicState3LogicOpEnable | non pris en charge | réussi | gagné |
| extendedDynamicState3PolygonMode | non pris en charge | réussi | gagné |
| inlineUniformBlock | non pris en charge | réussi | gagné |
| shaderBufferInt64Atomics | non pris en charge | réussi | gagné |
| depthClamp | non testé | réussi | gagné |
| largePoints | non testé | réussi | gagné |
| compat.helper_loop_terminator | non testé | réussi | gagné |
| compat.nested_map | non testé | réussi | gagné |
| core.blend_advertised_formats | non testé | réussi | gagné |
| core.compute_big_stack | non testé | réussi | gagné |
| core.copy_wide_row_length | échec | réussi | gagné |
| core.host_coherent_readback | non testé | réussi | gagné |
| core.mrt_partial_kill | non testé | réussi | gagné |
| core.ubo_update_buffer | non testé | réussi | gagné |
| core.ubo_written_after_record | non testé | réussi | gagné |
| core.varying_subset | non testé | réussi | gagné |
| mem.image_padding | non testé | réussi | gagné |
| stage.geometry_max_output | non testé | réussi | gagné |
| stage.geometry_point_size | non testé | réussi | gagné |
| sync.first_submit_clear_then_compute | non testé | réussi | gagné |
| borderColorSwizzleFromImage | non pris en charge | non testé | modifié |
| extendedDynamicState3AlphaToCoverageEnable | non pris en charge | non testé | modifié |
| extendedDynamicState3AlphaToOneEnable | non pris en charge | non testé | modifié |
| extendedDynamicState3ConservativeRasterizationMode | non pris en charge | non testé | modifié |
| extendedDynamicState3DepthClipEnable | non pris en charge | non testé | modifié |
| extendedDynamicState3DepthClipNegativeOneToOne | non pris en charge | non testé | modifié |
| extendedDynamicState3ExtraPrimitiveOverestimationSize | non pris en charge | non testé | modifié |
| extendedDynamicState3LineRasterizationMode | non pris en charge | non testé | modifié |
| extendedDynamicState3ProvokingVertexMode | non pris en charge | non testé | modifié |
| extendedDynamicState3RasterizationSamples | non pris en charge | non testé | modifié |
| extendedDynamicState3RasterizationStream | non pris en charge | non testé | modifié |
| extendedDynamicState3SampleLocationsEnable | non pris en charge | non testé | modifié |
| extendedDynamicState3SampleMask | non pris en charge | non testé | modifié |
| extendedDynamicState3TessellationDomainOrigin | non pris en charge | non testé | modifié |
| descriptorBindingInlineUniformBlockUpdateAfterBind | non pris en charge | non testé | modifié |
| shaderInt64 | non pris en charge | non testé | modifié |
| shaderResourceMinLod | non pris en charge | non testé | modifié |
| shaderResourceResidency | non pris en charge | non testé | modifié |
| shaderTessellationAndGeometryPointSize | non pris en charge | non testé | modifié |
| sparseResidency16Samples | non testé | non pris en charge | modifié |
| sparseResidency2Samples | non testé | non pris en charge | modifié |
| sparseResidency4Samples | non testé | non pris en charge | modifié |
| sparseResidency8Samples | non testé | non pris en charge | modifié |
| sparseResidencyAliased | non pris en charge | non testé | modifié |
| sparseResidencyImage2D | non testé | non pris en charge | modifié |
Scènes du benchmark
Les deux pilotes n'ont pas été mesurés sur les mêmes modèles d'appareils. Des temps de frame venant d'appareils différents ne permettent pas de comparer des pilotes : lisez ces chiffres en en tenant compte.
| Scène | Système ms | Personnalisé ms | Écart | Démarrages | Fréquence du GPU, MHz | Image vs système |
|---|---|---|---|---|---|---|
| compute_nbody | 6.26 | n/a | un seul côté | 3 sur 3 contre 3 sur 3 | 680 contre 500 non comparable | pas de grande différence pas de petite différence |
| compute_nbody_2x | 20.35 | n/a | un seul côté | 3 sur 3 contre 3 sur 3 | 680 contre 669 | pas de grande différence pas de petite différence |
| hdr_2160p | 21.44 | 15.36 | 40% plus rapide | 3 sur 3 contre 3 sur 3 | 680 contre 549 non comparable | pas de grande différence pas de petite différence |
| oit_linked_lists | 25.55 | 25.14 | 2% plus rapide | 3 sur 3 contre 3 sur 3 | 680 contre 719 | pas de grande différence pas de petite différence |
| pipeline_barriers | 3.23 | 2.25 | trop légère, voir pipeline_barriers_2160p | 3 sur 3 contre 3 sur 3 | 680 contre 636 non comparable | pas de grande différence diffère dans 1218 petites zones |
| pipeline_barriers_2160p | 8.21 | 7.78 | 6% plus rapide | 3 sur 3 contre 3 sur 3 | 680 contre 667 non comparable | pas de grande différence diffère dans 1363 petites zones |
| subpasses | 4.13 | 3.58 | 16% plus rapide | 3 sur 3 contre 3 sur 3 | 680 contre 719 | non vérifié |
| subpasses_2160p | 13.72 | n/a | un seul côté | 3 sur 3 contre 3 sur 3 | 680 contre 719 | non vérifié |
Différences techniques (Vulkan)
Extensions uniquement dans turnip_faux123_v1.2.0 (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_swapchain_maintenance1
- 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_swapchain_mutable_format
- 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
Extensions uniquement dans Qualcomm Technologies Inc. Adreno Vulkan Driver (8)
- VK_EXT_astc_decode_mode
- VK_EXT_blend_operation_advanced
- VK_EXT_fragment_density_map2
- VK_KHR_shared_presentable_image
- VK_QCOM_render_pass_store_ops
- VK_QCOM_render_pass_transform
- VK_QCOM_rotated_copy_commands
- VK_QCOM_tile_properties
Fonctionnalités de base qui diffèrent (23)
| multiviewGeometryShader | non pris en charge à réussi |
| protectedMemory | réussi à non pris en charge |
| shaderBufferInt64Atomics | non pris en charge à réussi |
| shaderInputAttachmentArrayDynamicIndexing | réussi à non pris en charge |
| shaderInputAttachmentArrayNonUniformIndexing | réussi à non pris en charge |
| shaderOutputLayer | non pris en charge à réussi |
| shaderOutputViewportIndex | non pris en charge à réussi |
| bresenhamLines | non pris en charge à réussi |
| dynamicRenderingLocalRead | non pris en charge à réussi |
| globalPriorityQuery | non pris en charge à réussi |
| hostImageCopy | non pris en charge à réussi |
| indexTypeUint8 | non pris en charge à réussi |
| maintenance5 | non pris en charge à réussi |
| maintenance6 | non pris en charge à réussi |
| pipelineRobustness | non pris en charge à réussi |
| pushDescriptor | non pris en charge à réussi |
| rectangularLines | non pris en charge à réussi |
| shaderExpectAssume | non pris en charge à réussi |
| shaderFloatControls2 | non pris en charge à réussi |
| shaderSubgroupRotate | non pris en charge à réussi |
| shaderSubgroupRotateClustered | non pris en charge à réussi |
| vertexAttributeInstanceRateDivisor | non pris en charge à réussi |
| vertexAttributeInstanceRateZeroDivisor | non pris en charge à réussi |
Limites qui diffèrent (18)
| Limite | Système | Personnalisé |
|---|---|---|
| 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 |
Formats pris en charge par un seul pilote (31 gagnés, 1 perdus)
- 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