Mali-G68 contre Mali-G68 MC4
Sur Mali-G68 (Infinix ZERO 5G 2023, LENOVO TB370FU, realme 10 Pro+ 5G, Samsung Galaxy A25 5G). Le premier pilote cité est comparé au second, qui sert de référence.
SystèmeMali-G68 MC4
contrePersonnaliséMali-G68
Version du système graphique (Vulkan)1.3.278 à 1.1.177
Fonctionnalités optionnelles (extensions)137 à 70+1 -68
Fonctionnalités qui réussissent leur vérification (validées)37 à 280 réussie uniquement sur Mali-G68 9 réussies uniquement sur Mali-G68 MC4
Scènes du benchmarkaucune scène commune
Jeux que chaque pilote pourrait faire tourner (estimation d'après sa liste de fonctionnalités) : vert probable, jaune peut-être, orange limité, rouge non
SystèmeDX92002+DX102006+DX112009+DX122015+Switch
PersonnaliséDX92002+DX102006+DX112009+DX122015+Switch
Détails de Mali-G68 MC4 Détails de Mali-G68
Vérifications des fonctionnalités qui diffèrent (21)
| Fonctionnalité | Système | Mali-G68 | Variation |
|---|---|---|---|
| borderColorSwizzle | réussi | non pris en charge | perdu |
| extendedDynamicState | réussi | non pris en charge | perdu |
| extendedDynamicState2 | réussi | non pris en charge | perdu |
| extendedDynamicState3DepthClampEnable | réussi | non pris en charge | perdu |
| vertexInputDynamicState | réussi | non pris en charge | perdu |
| shaderBufferInt64Atomics | réussi | non pris en charge | perdu |
| timelineSemaphore | réussi | échec | perdu |
| push.max_combined_image_samplers | réussi | non pris en charge | perdu |
| push.max_uniform_buffers | réussi | non pris en charge | perdu |
| borderColorSwizzleFromImage | non testé | non pris en charge | modifié |
| extendedDynamicState2PatchControlPoints | non testé | non pris en charge | modifié |
| extendedDynamicState3DepthClipEnable | non testé | non pris en charge | modifié |
| extendedDynamicState3LineRasterizationMode | non testé | non pris en charge | modifié |
| extendedDynamicState3ProvokingVertexMode | non testé | non pris en charge | modifié |
| extendedDynamicState3SampleMask | non testé | non pris en charge | modifié |
| extendedDynamicState3TessellationDomainOrigin | non testé | non pris en charge | modifié |
| shaderSharedInt64Atomics | non testé | non pris en charge | modifié |
| dualSrcBlend | non testé | non pris en charge | modifié |
| logicOp | non testé | non pris en charge | modifié |
| shaderInt64 | non testé | non pris en charge | modifié |
| wideLines | 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 | Mali-G68 ms | Écart | Démarrages | Fréquence du GPU, MHz | Image vs système |
|---|---|---|---|---|---|---|
| compute_nbody | n/a | n/a | un seul côté | 3 sur 3 contre ? | ? contre ? | non vérifié |
| hdr_2160p | 75.30 | n/a | un seul côté | 3 sur 3 contre ? | ? contre ? | non vérifié |
| oit_linked_lists | 26.63 | n/a | un seul côté | 3 sur 3 contre ? | ? contre ? | non vérifié |
| pipeline_barriers | 15.92 | n/a | un seul côté | 3 sur 3 contre ? | ? contre ? | non vérifié |
| subpasses | n/a | n/a | un seul côté | 3 sur 3 contre ? | ? contre ? | non vérifié |
Différences techniques (Vulkan)
Extensions uniquement dans Mali-G68 (1)
- VK_EXT_hdr_metadata
Extensions uniquement dans Mali-G68 MC4 (68)
- VK_ANDROID_external_format_resolve
- VK_ARM_rasterization_order_attachment_access
- VK_ARM_shader_core_builtins
- VK_ARM_shader_core_properties
- VK_EXT_border_color_swizzle
- VK_EXT_debug_marker
- VK_EXT_depth_clamp_zero_one
- VK_EXT_depth_clip_enable
- VK_EXT_device_address_binding_report
- VK_EXT_device_fault
- VK_EXT_dynamic_rendering_unused_attachments
- VK_EXT_extended_dynamic_state
- VK_EXT_extended_dynamic_state2
- VK_EXT_extended_dynamic_state3
- VK_EXT_external_memory_acquire_unmodified
- VK_EXT_frame_boundary
- VK_EXT_global_priority_query
- VK_EXT_image_2d_view_of_3d
- VK_EXT_image_compression_control
- VK_EXT_image_compression_control_swapchain
- VK_EXT_image_sliced_view_of_3d
- VK_EXT_legacy_dithering
- VK_EXT_load_store_op_none
- VK_EXT_multisampled_render_to_single_sampled
- VK_EXT_pipeline_creation_cache_control
- VK_EXT_pipeline_creation_feedback
- VK_EXT_pipeline_protected_access
- VK_EXT_pipeline_robustness
- VK_EXT_primitive_topology_list_restart
- VK_EXT_primitives_generated_query
- VK_EXT_private_data
- VK_EXT_rasterization_order_attachment_access
- VK_EXT_rgba10x6_formats
- VK_EXT_shader_demote_to_helper_invocation
- VK_EXT_shader_image_atomic_int64
- VK_EXT_shader_tile_image
- VK_EXT_subpass_merge_feedback
- VK_EXT_texel_buffer_alignment
- VK_EXT_tooling_info
- VK_EXT_vertex_input_dynamic_state
- VK_GOOGLE_decorate_string
- VK_GOOGLE_user_type
- VK_KHR_calibrated_timestamps
- VK_KHR_copy_commands2
- VK_KHR_dynamic_rendering
- VK_KHR_dynamic_rendering_local_read
- VK_KHR_format_feature_flags2
- VK_KHR_global_priority
- VK_KHR_index_type_uint8
- VK_KHR_line_rasterization
- VK_KHR_load_store_op_none
- VK_KHR_maintenance4
- VK_KHR_maintenance5
- VK_KHR_maintenance6
- VK_KHR_map_memory2
- VK_KHR_push_descriptor
- VK_KHR_shader_atomic_int64
- VK_KHR_shader_expect_assume
- VK_KHR_shader_float_controls2
- VK_KHR_shader_integer_dot_product
- VK_KHR_shader_maximal_reconvergence
- VK_KHR_shader_quad_control
- VK_KHR_shader_subgroup_rotate
- VK_KHR_shader_subgroup_uniform_control_flow
- VK_KHR_shader_terminate_invocation
- VK_KHR_synchronization2
- VK_KHR_vertex_attribute_divisor
- VK_KHR_zero_initialize_workgroup_memory
Fonctionnalités de base qui diffèrent (67)
| multiview | réussi à non pris en charge |
| protectedMemory | réussi à non pris en charge |
| samplerYcbcrConversion | réussi à non pris en charge |
| shaderDrawParameters | réussi à non pris en charge |
| storageBuffer16BitAccess | réussi à non pris en charge |
| storageInputOutput16 | réussi à non pris en charge |
| storagePushConstant16 | réussi à non pris en charge |
| uniformAndStorageBuffer16BitAccess | réussi à non pris en charge |
| variablePointers | réussi à non pris en charge |
| variablePointersStorageBuffer | réussi à non pris en charge |
| bufferDeviceAddress | réussi à non pris en charge |
| descriptorBindingPartiallyBound | réussi à non pris en charge |
| descriptorBindingSampledImageUpdateAfterBind | réussi à non pris en charge |
| descriptorBindingStorageBufferUpdateAfterBind | réussi à non pris en charge |
| descriptorBindingStorageImageUpdateAfterBind | réussi à non pris en charge |
| descriptorBindingStorageTexelBufferUpdateAfterBind | réussi à non pris en charge |
| descriptorBindingUniformBufferUpdateAfterBind | réussi à non pris en charge |
| descriptorBindingUniformTexelBufferUpdateAfterBind | réussi à non pris en charge |
| descriptorBindingUpdateUnusedWhilePending | réussi à non pris en charge |
| descriptorBindingVariableDescriptorCount | réussi à non pris en charge |
| descriptorIndexing | réussi à non pris en charge |
| hostQueryReset | réussi à non pris en charge |
| imagelessFramebuffer | réussi à non pris en charge |
| runtimeDescriptorArray | réussi à non pris en charge |
| samplerMirrorClampToEdge | réussi à non pris en charge |
| scalarBlockLayout | réussi à non pris en charge |
| separateDepthStencilLayouts | réussi à non pris en charge |
| shaderBufferInt64Atomics | réussi à non pris en charge |
| shaderFloat16 | réussi à non pris en charge |
| shaderInputAttachmentArrayDynamicIndexing | réussi à non pris en charge |
| shaderInputAttachmentArrayNonUniformIndexing | réussi à non pris en charge |
| shaderInt8 | réussi à non pris en charge |
| shaderOutputViewportIndex | réussi à non pris en charge |
| shaderSampledImageArrayNonUniformIndexing | réussi à non pris en charge |
| shaderSharedInt64Atomics | réussi à non pris en charge |
| shaderStorageBufferArrayNonUniformIndexing | réussi à non pris en charge |
| shaderStorageImageArrayNonUniformIndexing | réussi à non pris en charge |
| shaderStorageTexelBufferArrayDynamicIndexing | réussi à non pris en charge |
| shaderStorageTexelBufferArrayNonUniformIndexing | réussi à non pris en charge |
| shaderSubgroupExtendedTypes | réussi à non pris en charge |
| shaderUniformBufferArrayNonUniformIndexing | réussi à non pris en charge |
| shaderUniformTexelBufferArrayDynamicIndexing | réussi à non pris en charge |
| shaderUniformTexelBufferArrayNonUniformIndexing | réussi à non pris en charge |
| storageBuffer8BitAccess | réussi à non pris en charge |
| storagePushConstant8 | réussi à non pris en charge |
| subgroupBroadcastDynamicId | réussi à non pris en charge |
| timelineSemaphore | réussi à non pris en charge |
| uniformAndStorageBuffer8BitAccess | réussi à non pris en charge |
| uniformBufferStandardLayout | réussi à non pris en charge |
| vulkanMemoryModel | réussi à non pris en charge |
| vulkanMemoryModelAvailabilityVisibilityChains | réussi à non pris en charge |
| vulkanMemoryModelDeviceScope | réussi à non pris en charge |
| computeFullSubgroups | réussi à non pris en charge |
| descriptorBindingInlineUniformBlockUpdateAfterBind | réussi à non pris en charge |
| dynamicRendering | réussi à non pris en charge |
| inlineUniformBlock | réussi à non pris en charge |
| maintenance4 | réussi à non pris en charge |
| pipelineCreationCacheControl | réussi à non pris en charge |
| privateData | réussi à non pris en charge |
| robustImageAccess | réussi à non pris en charge |
| shaderDemoteToHelperInvocation | réussi à non pris en charge |
| shaderIntegerDotProduct | réussi à non pris en charge |
| shaderTerminateInvocation | réussi à non pris en charge |
| shaderZeroInitializeWorkgroupMemory | réussi à non pris en charge |
| subgroupSizeControl | réussi à non pris en charge |
| synchronization2 | réussi à non pris en charge |
| textureCompressionASTC_HDR | réussi à non pris en charge |
Limites qui diffèrent (15)
| Limite | Système | Mali-G68 |
|---|---|---|
| maxUniformBufferRange | 2147483648 | 65536 |
| maxStorageBufferRange | 2147483648 | 268435456 |
| maxMemoryAllocationCount | 16384 | 4294967295 |
| bufferImageGranularity | 1 | 4096 |
| maxBoundDescriptorSets | 7 | 4 |
| maxPerStageDescriptorUniformBuffers | 500000 | 36 |
| maxDescriptorSetUniformBuffers | 500000 | 216 |
| maxGeometryInputComponents | 128 | 64 |
| maxGeometryTotalOutputComponents | 2048 | 1024 |
| maxFragmentDualSrcAttachments | 8 | 0 |
| maxSamplerLodBias | 126 | 255 |
| maxInterpolationOffset | 0.4375 | 0.5 |
| timestampPeriod | 76.9231 | 38.4615 |
| lineWidthRange | 1, 4095.94 | 1, 1 |
| lineWidthGranularity | 0.0625 | 0 |
Formats pris en charge par un seul pilote (0 gagnés, 14 perdus)
- Aucun
- A1B5G5R5_UNORM_PACK16
- A2R10G10B10_SSCALED_PACK32
- A2R10G10B10_USCALED_PACK32
- A8_UNORM
- B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
- B8G8R8A8_SSCALED
- B8G8R8A8_USCALED
- B8G8R8_SSCALED
- B8G8R8_USCALED
- G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
- G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
- G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
- R64_SINT
- R64_UINT