Turnip_v26.3.0-R2 vs Qualcomm Technologies Inc. Adreno Vulkan Driver
Na Adreno (TM) 22 (HONOR 200 Pro, Moorechip Retroid Pocket G2, POCO F6, realme GT 6, realme 真我GT Neo6, Xiaomi Pad 7 Pro). O primeiro driver citado é comparado com o segundo, que é a referência.
- hdr_2160p37% mais lento
- oit_linked_lists24% mais lento
- pipeline_barriers_2160p3% mais lento
- subpasses_2160p7% mais lento
Pequenas áreas da imagem diferem do driver do sistema em 2 cenas (pipeline_barriers: 1759 de 2304 células, pipeline_barriers_2160p: 1336 de 2304 células). A imagem bate no geral, então isto é uma falha local de renderização, não uma cena diferente.
Nem sempre iniciou: compute_nbody (do sistema 3 de 3, customizado 0 de 3).
Detalhes do Qualcomm Technologies Inc. Adreno Vulkan Driver Detalhes do Turnip_v26.3.0-R2
Verificações de recursos que diferem (28)
| Recurso | Sistema | Customizado | Mudança |
|---|---|---|---|
| core.compute_udiv | passou | falhou | perdidos |
| extendedDynamicState3ColorBlendEnable | sem suporte | passou | ganhos |
| extendedDynamicState3ColorBlendEquation | sem suporte | passou | ganhos |
| extendedDynamicState3ColorWriteMask | sem suporte | passou | ganhos |
| extendedDynamicState3DepthClampEnable | sem suporte | passou | ganhos |
| extendedDynamicState3LogicOpEnable | sem suporte | passou | ganhos |
| extendedDynamicState3PolygonMode | sem suporte | passou | ganhos |
| extendedDynamicState3AlphaToCoverageEnable | sem suporte | não testado | mudou |
| extendedDynamicState3AlphaToOneEnable | sem suporte | não testado | mudou |
| extendedDynamicState3ConservativeRasterizationMode | sem suporte | não testado | mudou |
| extendedDynamicState3DepthClipEnable | sem suporte | não testado | mudou |
| extendedDynamicState3DepthClipNegativeOneToOne | sem suporte | não testado | mudou |
| extendedDynamicState3ExtraPrimitiveOverestimationSize | sem suporte | não testado | mudou |
| extendedDynamicState3LineRasterizationMode | sem suporte | não testado | mudou |
| extendedDynamicState3ProvokingVertexMode | sem suporte | não testado | mudou |
| extendedDynamicState3RasterizationSamples | sem suporte | não testado | mudou |
| extendedDynamicState3RasterizationStream | sem suporte | não testado | mudou |
| extendedDynamicState3SampleLocationsEnable | sem suporte | não testado | mudou |
| extendedDynamicState3SampleMask | sem suporte | não testado | mudou |
| extendedDynamicState3TessellationDomainOrigin | sem suporte | não testado | mudou |
| shaderResourceMinLod | sem suporte | não testado | mudou |
| shaderResourceResidency | sem suporte | não testado | mudou |
| sparseResidency16Samples | não testado | sem suporte | mudou |
| sparseResidency2Samples | não testado | sem suporte | mudou |
| sparseResidency4Samples | não testado | sem suporte | mudou |
| sparseResidency8Samples | não testado | sem suporte | mudou |
| sparseResidencyAliased | sem suporte | não testado | mudou |
| sparseResidencyImage2D | não testado | sem suporte | mudou |
Cenas do teste de velocidade (benchmark)
Os dois drivers não foram medidos no mesmo conjunto de modelos de aparelho. Frametimes de aparelhos diferentes não servem para comparar drivers, então leia esses números com isso em mente.
| Cena | Sistema ms | Customizado ms | Diferença | Inícios | Clock da GPU, MHz | Imagem vs driver do sistema |
|---|---|---|---|---|---|---|
| compute_nbody | 13.10 | n/a | só um lado | 3 de 3 vs 0 de 3 | ? vs ? | não verificado |
| hdr_2160p | 28.15 | 44.86 | 37% mais lento | 3 de 3 vs 3 de 3 | ? vs ? | sem diferença grande sem diferença pequena |
| oit_linked_lists | 18.06 | 23.67 | 24% mais lento | 3 de 3 vs 3 de 3 | ? vs ? | sem diferença grande sem diferença pequena |
| pipeline_barriers | 3.33 | n/a | leve demais, veja pipeline_barriers_2160p | 3 de 3 vs 3 de 3 | ? vs ? | sem diferença grande difere em 1759 áreas pequenas |
| pipeline_barriers_2160p | 11.14 | 11.50 | 3% mais lento | 3 de 3 vs 3 de 3 | ? vs ? | sem diferença grande difere em 1336 áreas pequenas |
| subpasses | 4.82 | n/a | leve demais, veja subpasses_2160p | 3 de 3 vs 3 de 3 | ? vs ? | não verificado |
| subpasses_2160p | 18.76 | 20.08 | 7% mais lento | 3 de 3 vs 3 de 3 | ? vs ? | não verificado |
Diferenças técnicas (Vulkan)
Extensões só no Turnip_v26.3.0-R2 (52)
- 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_conditional_rendering
- 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_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_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_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_vertex_attribute_divisor
- VK_NV_compute_shader_derivatives
- VK_VALVE_fragment_density_map_layered
- VK_VALVE_mutable_descriptor_type
Extensões só no 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
Recursos básicos que diferem (20)
| multiviewGeometryShader | sem suporte a passou |
| protectedMemory | passou a sem suporte |
| shaderInputAttachmentArrayDynamicIndexing | passou a sem suporte |
| shaderInputAttachmentArrayNonUniformIndexing | passou a sem suporte |
| bresenhamLines | sem suporte a passou |
| dynamicRenderingLocalRead | sem suporte a passou |
| globalPriorityQuery | sem suporte a passou |
| hostImageCopy | sem suporte a passou |
| indexTypeUint8 | sem suporte a passou |
| maintenance5 | sem suporte a passou |
| maintenance6 | sem suporte a passou |
| pipelineRobustness | sem suporte a passou |
| pushDescriptor | sem suporte a passou |
| rectangularLines | sem suporte a passou |
| shaderExpectAssume | sem suporte a passou |
| shaderFloatControls2 | sem suporte a passou |
| shaderSubgroupRotate | sem suporte a passou |
| shaderSubgroupRotateClustered | sem suporte a passou |
| vertexAttributeInstanceRateDivisor | sem suporte a passou |
| vertexAttributeInstanceRateZeroDivisor | sem suporte a passou |
Limites que diferem (19)
| Limite | Sistema | Customizado |
|---|---|---|
| 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 |
| pointSizeRange | 1, 4095 | 1, 4092 |
| optimalBufferCopyOffsetAlignment | 64 | 128 |
| optimalBufferCopyRowPitchAlignment | 64 | 128 |
| nonCoherentAtomSize | 1 | 64 |
Formatos suportados por só um driver (31 ganhos, 1 perdidos)
- 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