malisx2-0.2.2-18ad24d9a2 contre Panvk-Mali-G57-beta_1.2.0
Sur Mali-G52 MC2 (HONOR X5c, HONOR X5c, Infinix HOT 60i, Oppo A18, Oppo A38, realme RMX3710, Redmi 12, Redmi 12C, Redmi 14C, Redmi 15C, TECNO POVA 3, TECNO SPARK 20, Xiaomi 24049RN28L). Le premier pilote cité est comparé au second, qui sert de référence.
SystèmePanvk-Mali-G57-beta_1.2.0
contrePersonnalisémalisx2-0.2.2-18ad24d9a2
Version du système graphique (Vulkan)1.3.278 à 1.1.363
Fonctionnalités optionnelles (extensions)131 à 15+2 -118
Fonctionnalités qui réussissent leur vérification (validées)34 à 222 réussies uniquement sur malisx2-0.2.2-18ad24d9a2 14 réussies uniquement sur Panvk-Mali-G57-beta_1.2.0
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 Panvk-Mali-G57-beta_1.2.0 Détails de malisx2-0.2.2-18ad24d9a2
Vérifications des fonctionnalités qui diffèrent (30)
| Fonctionnalité | Panvk-Mali-G57-beta_1.2.0 | malisx2-0.2.2-18ad24d9a2 | Variation |
|---|---|---|---|
| borderColorSwizzle | réussi | non pris en charge | perdu |
| customBorderColors | réussi | non pris en charge | perdu |
| extendedDynamicState | réussi | non pris en charge | perdu |
| extendedDynamicState2 | réussi | non pris en charge | perdu |
| inlineUniformBlock | réussi | non pris en charge | perdu |
| transformFeedback | 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 | non pris en charge | perdu |
| drawIndirectFirstInstance | réussi | non pris en charge | perdu |
| geometryShader | réussi | non pris en charge | perdu |
| occlusionQueryPrecise | réussi | échec | perdu |
| tessellationShader | réussi | non pris en charge | perdu |
| core.msaa_resolve | réussi | échec | perdu |
| push.max_combined_image_samplers | non pris en charge | réussi | gagné |
| push.max_uniform_buffers | non pris en charge | réussi | gagné |
| borderColorSwizzleFromImage | non testé | non pris en charge | modifié |
| customBorderColorWithoutFormat | non testé | non pris en charge | modifié |
| extendedDynamicState2PatchControlPoints | 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é |
| descriptorBindingInlineUniformBlockUpdateAfterBind | non testé | non pris en charge | modifié |
| shaderSharedInt64Atomics | non testé | non pris en charge | modifié |
| depthClamp | non pris en charge | non testé | modifié |
| logicOp | non testé | non pris en charge | modifié |
| shaderClipDistance | non pris en charge | non testé | 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 | Panvk-Mali-G57-beta_1.2.0 ms | malisx2-0.2.2-18ad24d9a2 ms | Écart | Démarrages | Fréquence du GPU, MHz | Image vs système |
|---|---|---|---|---|---|---|
| compute_nbody | n/a | 103.19 | un seul côté | 3 sur 3 contre 3 sur 3 | ? contre ? | pas de grande différence pas de petite différence |
| oit_linked_lists | n/a | 73.28 | un seul côté | 3 sur 3 contre 3 sur 3 | ? contre ? | pas de grande différence pas de petite différence |
| pipeline_barriers | n/a | 87.05 | un seul côté | 3 sur 3 contre 3 sur 3 | ? contre ? | pas de grande différence diffère dans 1500 petites zones |
Différences techniques (Vulkan)
Extensions uniquement dans malisx2-0.2.2-18ad24d9a2 (2)
- VK_EXT_memory_budget
- VK_KHR_push_descriptor
Extensions uniquement dans Panvk-Mali-G57-beta_1.2.0 (118)
- VK_ANDROID_external_format_resolve
- VK_ANDROID_external_memory_android_hardware_buffer
- VK_ARM_shader_core_builtins
- VK_ARM_shader_core_properties
- VK_EXT_4444_formats
- VK_EXT_astc_decode_mode
- VK_EXT_border_color_swizzle
- VK_EXT_calibrated_timestamps
- VK_EXT_custom_border_color
- VK_EXT_debug_marker
- VK_EXT_device_address_binding_report
- VK_EXT_device_memory_report
- 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_external_memory_dma_buf
- VK_EXT_frame_boundary
- VK_EXT_global_priority
- VK_EXT_global_priority_query
- VK_EXT_host_query_reset
- VK_EXT_image_2d_view_of_3d
- VK_EXT_image_compression_control
- VK_EXT_image_compression_control_swapchain
- VK_EXT_image_drm_format_modifier
- VK_EXT_image_robustness
- VK_EXT_image_sliced_view_of_3d
- VK_EXT_index_type_uint8
- VK_EXT_inline_uniform_block
- 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_queue_family_foreign
- VK_EXT_rgba10x6_formats
- VK_EXT_scalar_block_layout
- VK_EXT_separate_stencil_usage
- VK_EXT_shader_demote_to_helper_invocation
- VK_EXT_shader_image_atomic_int64
- VK_EXT_shader_subgroup_ballot
- VK_EXT_shader_subgroup_vote
- VK_EXT_shader_tile_image
- VK_EXT_subgroup_size_control
- VK_EXT_subpass_merge_feedback
- VK_EXT_texel_buffer_alignment
- VK_EXT_texture_compression_astc_hdr
- VK_EXT_tooling_info
- VK_EXT_transform_feedback
- VK_EXT_vertex_input_dynamic_state
- VK_GOOGLE_decorate_string
- VK_GOOGLE_user_type
- VK_KHR_16bit_storage
- VK_KHR_8bit_storage
- VK_KHR_bind_memory2
- VK_KHR_buffer_device_address
- VK_KHR_calibrated_timestamps
- VK_KHR_copy_commands2
- VK_KHR_create_renderpass2
- VK_KHR_dedicated_allocation
- VK_KHR_depth_stencil_resolve
- VK_KHR_descriptor_update_template
- VK_KHR_device_group
- VK_KHR_dynamic_rendering
- VK_KHR_dynamic_rendering_local_read
- VK_KHR_external_fence
- VK_KHR_external_memory
- VK_KHR_external_memory_fd
- VK_KHR_external_semaphore
- VK_KHR_format_feature_flags2
- VK_KHR_get_memory_requirements2
- VK_KHR_global_priority
- VK_KHR_image_format_list
- VK_KHR_imageless_framebuffer
- VK_KHR_index_type_uint8
- VK_KHR_load_store_op_none
- VK_KHR_maintenance1
- VK_KHR_maintenance2
- VK_KHR_maintenance3
- VK_KHR_maintenance4
- VK_KHR_maintenance5
- VK_KHR_maintenance6
- VK_KHR_map_memory2
- VK_KHR_multiview
- VK_KHR_relaxed_block_layout
- VK_KHR_sampler_mirror_clamp_to_edge
- VK_KHR_sampler_ycbcr_conversion
- VK_KHR_separate_depth_stencil_layouts
- VK_KHR_shader_atomic_int64
- VK_KHR_shader_draw_parameters
- VK_KHR_shader_expect_assume
- VK_KHR_shader_float16_int8
- VK_KHR_shader_float_controls
- VK_KHR_shader_float_controls2
- VK_KHR_shader_integer_dot_product
- VK_KHR_shader_maximal_reconvergence
- VK_KHR_shader_non_semantic_info
- VK_KHR_shader_quad_control
- VK_KHR_shader_subgroup_extended_types
- VK_KHR_shader_subgroup_rotate
- VK_KHR_shader_subgroup_uniform_control_flow
- VK_KHR_shader_terminate_invocation
- VK_KHR_shared_presentable_image
- VK_KHR_spirv_1_4
- VK_KHR_storage_buffer_storage_class
- VK_KHR_synchronization2
- VK_KHR_timeline_semaphore
- VK_KHR_uniform_buffer_standard_layout
- VK_KHR_variable_pointers
- VK_KHR_vertex_attribute_divisor
- VK_KHR_vulkan_memory_model
- VK_KHR_zero_initialize_workgroup_memory
Fonctionnalités de base qui diffèrent (45)
| multiview | 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 |
| hostQueryReset | réussi à non pris en charge |
| imagelessFramebuffer | 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 |
| shaderInt8 | réussi à non pris en charge |
| shaderOutputViewportIndex | réussi à non pris en charge |
| shaderSharedInt64Atomics | réussi à non pris en charge |
| shaderSubgroupExtendedTypes | 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 (45)
| Limite | Panvk-Mali-G57-beta_1.2.0 | malisx2-0.2.2-18ad24d9a2 |
|---|---|---|
| maxSamplerAllocationCount | 4294967295 | 4000 |
| maxPerStageDescriptorUniformBuffers | 241 | 223 |
| maxPerStageDescriptorStorageBuffers | 35 | 64 |
| maxPerStageDescriptorSampledImages | 256 | 208 |
| maxPerStageDescriptorStorageImages | 21 | 32 |
| maxPerStageResources | 570 | 664 |
| maxDescriptorSetSamplers | 768 | 65535 |
| maxDescriptorSetUniformBuffers | 1446 | 223 |
| maxDescriptorSetUniformBuffersDynamic | 32 | 16 |
| maxDescriptorSetStorageBuffers | 210 | 4096 |
| maxDescriptorSetStorageBuffersDynamic | 32 | 8 |
| maxDescriptorSetSampledImages | 1536 | 65535 |
| maxDescriptorSetStorageImages | 126 | 256 |
| maxVertexInputAttributes | 32 | 16 |
| maxVertexInputBindings | 32 | 16 |
| maxVertexInputAttributeOffset | 2047 | 4294967295 |
| maxVertexInputBindingStride | 2048 | 65535 |
| maxTessellationGenerationLevel | 64 | 0 |
| maxTessellationPatchSize | 32 | 0 |
| maxTessellationControlPerVertexInputComponents | 128 | 0 |
| maxTessellationControlPerVertexOutputComponents | 128 | 0 |
| maxTessellationControlPerPatchOutputComponents | 120 | 0 |
| maxTessellationControlTotalOutputComponents | 4096 | 0 |
| maxTessellationEvaluationInputComponents | 128 | 0 |
| maxTessellationEvaluationOutputComponents | 128 | 0 |
| maxGeometryShaderInvocations | 32 | 0 |
| maxGeometryInputComponents | 128 | 0 |
| maxGeometryOutputComponents | 128 | 0 |
| maxGeometryOutputVertices | 256 | 0 |
| maxGeometryTotalOutputComponents | 2048 | 0 |
| maxFragmentDualSrcAttachments | 8 | 1 |
| maxFragmentCombinedOutputResources | 64 | 4360 |
| maxComputeWorkGroupCount | 4294967295, 4294967295, 4294967295 | 65535, 65535, 65535 |
| maxInterpolationOffset | 0.4375 | 0.5 |
| framebufferColorSampleCounts | 5 | 29 |
| framebufferDepthSampleCounts | 5 | 29 |
| framebufferStencilSampleCounts | 5 | 29 |
| sampledImageColorSampleCounts | 5 | 29 |
| sampledImageIntegerSampleCounts | 5 | 29 |
| sampledImageDepthSampleCounts | 5 | 29 |
| sampledImageStencilSampleCounts | 5 | 29 |
| maxClipDistances | 0 | 8 |
| maxCombinedClipAndCullDistances | 0 | 8 |
| lineWidthRange | 1, 4095.94 | 1, 1 |
| lineWidthGranularity | 0.0625 | 0 |
Formats pris en charge par un seul pilote (11 gagnés, 34 perdus)
- A2R10G10B10_SNORM_PACK32
- 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
- R10X6G10X6_UNORM_2PACK16
- R10X6_UNORM_PACK16
- A1B5G5R5_UNORM_PACK16
- A4B4G4R4_UNORM_PACK16
- A4R4G4B4_UNORM_PACK16
- A8_UNORM
- ASTC_10x10_SFLOAT_BLOCK
- ASTC_10x5_SFLOAT_BLOCK
- ASTC_10x6_SFLOAT_BLOCK
- ASTC_10x8_SFLOAT_BLOCK
- ASTC_12x10_SFLOAT_BLOCK
- ASTC_12x12_SFLOAT_BLOCK
- ASTC_4x4_SFLOAT_BLOCK
- ASTC_5x4_SFLOAT_BLOCK
- ASTC_5x5_SFLOAT_BLOCK
- ASTC_6x5_SFLOAT_BLOCK
- ASTC_6x6_SFLOAT_BLOCK
- ASTC_8x5_SFLOAT_BLOCK
- ASTC_8x6_SFLOAT_BLOCK
- ASTC_8x8_SFLOAT_BLOCK
- B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
- B5G5R5A1_UNORM_PACK16
- B8G8R8G8_422_UNORM
- B8G8R8_SNORM
- G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
- G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
- G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
- G8B8G8R8_422_UNORM
- G8_B8R8_2PLANE_420_UNORM
- G8_B8R8_2PLANE_422_UNORM
- G8_B8_R8_3PLANE_420_UNORM
- G8_B8_R8_3PLANE_422_UNORM
- R4G4_UNORM_PACK8
- R5G5B5A1_UNORM_PACK16
- R64_SINT
- R64_UINT