PanVK-Strato-Mali-SAFETY-v4 contre Mali-G615 MC5
Sur Mali-G615 MC2 (AIPLUS AI+ Nova 2 Ultra, Anbernic RG477M, Anbernic RG557, HEADWOLF F8, Infinix GT 30, Infinix GT 30 Pro, Infinix NOTE 50X 5G, iQOO Z11x 5G, Lenovo Idea Tab Pro, motorola edge - 2026, motorola edge 50 neo, motorola edge 60 pro, OPPO CPH2859, Oppo F31 Pro 5G, POCO X6 Pro 5G, POCO X6 Pro 5G, POCO X7, realme P4x 5G, Redmi Note 14 Pro 5G, REDMI Note 15 Pro 5G, TECNO CAMON 40, TECNO POVA 8 Pro 5G, vivo V60 Lite 5G, Xiaomi 14T). Le premier pilote cité est comparé au second, qui sert de référence.
Détails de Mali-G615 MC5 Détails de PanVK-Strato-Mali-SAFETY-v4
Vérifications des fonctionnalités qui diffèrent (58)
| Fonctionnalité | Système | Personnalisé | Variation |
|---|---|---|---|
| depthClamp | réussi | non testé | perdu |
| largePoints | réussi | non testé | perdu |
| compat.helper_loop_terminator | réussi | non testé | perdu |
| compat.nested_map | réussi | non testé | perdu |
| core.blend_advertised_formats | réussi | non testé | perdu |
| core.compute_big_stack | réussi | non testé | perdu |
| core.host_coherent_readback | réussi | non testé | perdu |
| core.mrt_partial_kill | réussi | non testé | perdu |
| core.ubo_update_buffer | réussi | non testé | perdu |
| core.ubo_written_after_record | réussi | non testé | perdu |
| core.varying_subset | réussi | non testé | perdu |
| mem.image_padding | réussi | non testé | perdu |
| perf.fb_local_barrier_large_draws | réussi | non testé | perdu |
| perf.fb_local_barrier_overdraw | réussi | non testé | perdu |
| stage.geometry_max_output | réussi | non testé | perdu |
| stress.many_command_buffers_one_submit | réussi | non testé | perdu |
| stress.scratch_per_batch | réussi | non testé | perdu |
| stress.spill_helper_lanes | réussi | non testé | perdu |
| sync.first_submit_clear_then_compute | réussi | non testé | perdu |
| colorWriteEnable | non pris en charge | réussi | gagné |
| depthClipControl | non pris en charge | réussi | gagné |
| extendedDynamicState2LogicOp | 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é |
| robustBufferAccess2 | non pris en charge | réussi | gagné |
| robustImageAccess2 | non pris en charge | réussi | gagné |
| vertexInputDynamicState | non pris en charge | réussi | gagné |
| multiViewport | non pris en charge | réussi | gagné |
| textureCompressionBC | non pris en charge | réussi | gagné |
| push.max_uniform_buffers | non pris en charge | réussi | gagné |
| depthBiasControl | non pris en charge | non testé | modifié |
| depthBiasExact | 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é |
| extendedDynamicState3LineRasterizationMode | non pris en charge | non testé | modifié |
| extendedDynamicState3RasterizationSamples | non pris en charge | non testé | modifié |
| extendedDynamicState3SampleMask | non pris en charge | non testé | modifié |
| nullDescriptor | non pris en charge | non testé | modifié |
| geometryStreams | non pris en charge | non testé | modifié |
| alphaToOne | non pris en charge | non testé | modifié |
| depthBounds | non pris en charge | non testé | modifié |
| dualSrcBlend | non pris en charge | non testé | modifié |
| fillModeNonSolid | non pris en charge | non testé | modifié |
| logicOp | non pris en charge | non testé | modifié |
| pipelineStatisticsQuery | non pris en charge | non testé | modifié |
| shaderClipDistance | non pris en charge | non testé | modifié |
| shaderCullDistance | non pris en charge | non testé | modifié |
| shaderTessellationAndGeometryPointSize | non pris en charge | non testé | modifié |
| variableMultisampleRate | non pris en charge | non testé | modifié |
| vertexPipelineStoresAndAtomics | non pris en charge | non testé | modifié |
| wideLines | non pris en charge | non testé | modifié |
| push.max_combined_image_samplers | non pris en charge | échec | modifié |
| stage.geometry_point_size | non pris en charge | non testé | 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 | n/a | 20.00 | un seul côté | ? contre 3 sur 3 | ? contre ? | non vérifié |
| hdr_2160p | n/a | 34.87 | un seul côté | ? contre 3 sur 3 | ? contre ? | non vérifié |
| oit_linked_lists | n/a | 28.16 | un seul côté | ? contre 3 sur 3 | ? contre ? | non vérifié |
| pipeline_barriers | n/a | 14.14 | un seul côté | ? contre 3 sur 3 | ? contre ? | non vérifié |
| subpasses | n/a | 22.23 | un seul côté | ? contre 3 sur 3 | ? contre ? | non vérifié |
Différences techniques (Vulkan)
Extensions uniquement dans PanVK-Strato-Mali-SAFETY-v4 (81)
- VK_ARM_scheduling_controls
- VK_EXT_attachment_feedback_loop_dynamic_state
- VK_EXT_attachment_feedback_loop_layout
- VK_EXT_buffer_device_address
- VK_EXT_color_write_enable
- VK_EXT_conditional_rendering
- VK_EXT_debug_marker
- VK_EXT_depth_bias_control
- VK_EXT_depth_clamp_control
- VK_EXT_depth_clip_control
- VK_EXT_depth_clip_enable
- VK_EXT_dynamic_rendering_unused_attachments
- VK_EXT_extended_dynamic_state3
- VK_EXT_external_memory_acquire_unmodified
- VK_EXT_graphics_pipeline_library
- VK_EXT_hdr_metadata
- VK_EXT_host_image_copy
- VK_EXT_image_sliced_view_of_3d
- VK_EXT_image_view_min_lod
- VK_EXT_map_memory_placed
- VK_EXT_memory_budget
- VK_EXT_memory_priority
- VK_EXT_multi_draw
- VK_EXT_mutable_descriptor_type
- VK_EXT_nested_command_buffer
- VK_EXT_non_seamless_cube_map
- VK_EXT_pageable_device_local_memory
- VK_EXT_physical_device_drm
- VK_EXT_present_timing
- VK_EXT_robustness2
- VK_EXT_shader_atomic_float
- VK_EXT_shader_module_identifier
- VK_EXT_shader_replicated_composites
- VK_EXT_shader_stencil_export
- VK_EXT_shader_uniform_buffer_unsized_array
- VK_EXT_vertex_attribute_divisor
- VK_EXT_vertex_input_dynamic_state
- VK_EXT_ycbcr_2plane_444_formats
- VK_EXT_ycbcr_image_arrays
- VK_EXT_zero_initialize_device_memory
- VK_GOOGLE_decorate_string
- VK_GOOGLE_hlsl_functionality1
- VK_GOOGLE_user_type
- VK_KHR_calibrated_timestamps
- VK_KHR_compute_shader_derivatives
- VK_KHR_cooperative_matrix
- VK_KHR_copy_memory_indirect
- VK_KHR_dynamic_rendering_local_read
- VK_KHR_index_type_uint8
- VK_KHR_internally_synchronized_queues
- VK_KHR_line_rasterization
- VK_KHR_load_store_op_none
- VK_KHR_maintenance5
- VK_KHR_maintenance6
- VK_KHR_maintenance7
- VK_KHR_maintenance8
- VK_KHR_maintenance9
- VK_KHR_map_memory2
- VK_KHR_pipeline_executable_properties
- VK_KHR_pipeline_library
- VK_KHR_present_id
- VK_KHR_present_id2
- VK_KHR_present_wait
- VK_KHR_present_wait2
- VK_KHR_push_descriptor
- VK_KHR_shader_clock
- VK_KHR_shader_constant_data
- VK_KHR_shader_expect_assume
- VK_KHR_shader_float_controls2
- VK_KHR_shader_fma
- VK_KHR_shader_maximal_reconvergence
- VK_KHR_shader_quad_control
- VK_KHR_shader_relaxed_extended_instruction
- VK_KHR_shader_subgroup_rotate
- VK_KHR_shader_subgroup_uniform_control_flow
- VK_KHR_shader_untyped_pointers
- VK_KHR_swapchain_maintenance1
- VK_KHR_unified_image_layouts
- VK_KHR_vertex_attribute_divisor
- VK_KHR_workgroup_memory_explicit_layout
- VK_VALVE_mutable_descriptor_type
Extensions uniquement dans Mali-G615 MC5 (11)
- VK_EXT_device_fault
- VK_EXT_fragment_density_map
- VK_EXT_fragment_density_map2
- VK_EXT_image_compression_control_swapchain
- VK_EXT_pipeline_protected_access
- VK_EXT_subpass_merge_feedback
- VK_KHR_acceleration_structure
- VK_KHR_deferred_host_operations
- VK_KHR_fragment_shading_rate
- VK_KHR_ray_query
- VK_KHR_shared_presentable_image
Fonctionnalités de base qui diffèrent (17)
| protectedMemory | réussi à non pris en charge |
| 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 (51)
| Limite | Système | Personnalisé |
|---|---|---|
| maxImageDimension1D | 16384 | 65536 |
| maxImageDimension2D | 16384 | 65536 |
| maxImageDimension3D | 16384 | 65536 |
| maxImageDimensionCube | 16384 | 65536 |
| maxImageArrayLayers | 4096 | 65536 |
| maxTexelBufferElements | 268435456 | 134217728 |
| maxUniformBufferRange | 2147483648 | 1048576 |
| maxStorageBufferRange | 2147483648 | 4294967295 |
| maxMemoryAllocationCount | 16384 | 4294967295 |
| bufferImageGranularity | 1 | 64 |
| sparseAddressSpaceSize | 0 | 140737454800896 |
| maxPerStageDescriptorSamplers | 500000 | 1048576 |
| maxPerStageDescriptorUniformBuffers | 36 | 1048576 |
| maxPerStageDescriptorStorageBuffers | 500000 | 1048576 |
| maxPerStageDescriptorSampledImages | 500000 | 1048576 |
| maxPerStageDescriptorStorageImages | 500000 | 1048576 |
| maxPerStageResources | 500000 | 5242889 |
| maxDescriptorSetSamplers | 500000 | 1048576 |
| maxDescriptorSetUniformBuffers | 216 | 1048576 |
| maxDescriptorSetUniformBuffersDynamic | 32 | 16 |
| maxDescriptorSetStorageBuffers | 500000 | 1048576 |
| maxDescriptorSetStorageBuffersDynamic | 32 | 8 |
| maxDescriptorSetSampledImages | 500000 | 1048576 |
| maxDescriptorSetStorageImages | 500000 | 1048576 |
| maxVertexInputAttributes | 32 | 16 |
| maxVertexInputBindings | 32 | 16 |
| maxVertexInputAttributeOffset | 2047 | 4294967295 |
| maxVertexInputBindingStride | 2048 | 65535 |
| maxGeometryShaderInvocations | 32 | 64 |
| maxGeometryInputComponents | 128 | 64 |
| maxGeometryTotalOutputComponents | 2048 | 1024 |
| maxFragmentDualSrcAttachments | 0 | 8 |
| maxFragmentCombinedOutputResources | 1000008 | 4360 |
| maxComputeWorkGroupCount | 4294967295, 4294967295, 4294967295 | 65535, 65535, 65535 |
| maxSamplerLodBias | 126 | 127.996 |
| maxViewports | 1 | 16 |
| maxViewportDimensions | 16384, 16384 | 65536, 65536 |
| viewportBoundsRange | -32768, 32767 | -131072, 131071 |
| minMemoryMapAlignment | 64 | 4096 |
| minTexelBufferOffsetAlignment | 64 | 16 |
| minStorageBufferOffsetAlignment | 64 | 4 |
| maxInterpolationOffset | 0.4375 | 0.5 |
| subPixelInterpolationOffsetBits | 4 | 8 |
| maxFramebufferWidth | 16384 | 65536 |
| maxFramebufferHeight | 16384 | 65536 |
| maxClipDistances | 0 | 8 |
| maxCullDistances | 0 | 8 |
| maxCombinedClipAndCullDistances | 0 | 8 |
| pointSizeRange | 1, 1024 | 0.125, 4095.94 |
| lineWidthRange | 1, 1 | 0, 7.99219 |
| lineWidthGranularity | 0 | 0.0078125 |
Formats pris en charge par un seul pilote (23 gagnés, 7 perdus)
- A1B5G5R5_UNORM_PACK16
- A2R10G10B10_SNORM_PACK32
- A8_UNORM
- BC1_RGBA_SRGB_BLOCK
- BC1_RGBA_UNORM_BLOCK
- BC1_RGB_SRGB_BLOCK
- BC1_RGB_UNORM_BLOCK
- BC2_SRGB_BLOCK
- BC2_UNORM_BLOCK
- BC3_SRGB_BLOCK
- BC3_UNORM_BLOCK
- BC4_SNORM_BLOCK
- BC4_UNORM_BLOCK
- BC5_SNORM_BLOCK
- BC5_UNORM_BLOCK
- BC6H_SFLOAT_BLOCK
- BC6H_UFLOAT_BLOCK
- BC7_SRGB_BLOCK
- BC7_UNORM_BLOCK
- G16_B16R16_2PLANE_420_UNORM
- G16_B16R16_2PLANE_422_UNORM
- G16_B16R16_2PLANE_444_UNORM
- G8_B8R8_2PLANE_444_UNORM
- B5G5R5A1_UNORM_PACK16
- B8G8R8G8_422_UNORM
- B8G8R8_SNORM
- G8B8G8R8_422_UNORM
- G8_B8_R8_3PLANE_444_UNORM
- R4G4_UNORM_PACK8
- R5G5B5A1_UNORM_PACK16