malisx2-0.3.0-c8d18effb1 vs. Mali-G52 MC2
Auf Mali-G52 (CHUWI HiPad-Air, HONOR X5c, HONOR X5c, Infinix HOT 60i, Oppo A18, Oppo A38, realme RMX3710, Redmi 12, Redmi 12C, Redmi 14C, Redmi 15C, Samsung Galaxy A32, TECNO POVA 3, TECNO SPARK 10 Pro, TECNO SPARK 20, Vivo Y03, Xiaomi 24049RN28L). Der zuerst genannte Treiber wird mit dem zweiten verglichen, der die Referenz ist.
- compute_nbody22% langsamer
- oit_linked_lists20% langsamer
- pipeline_barriers35% langsamer
Kleine Bildbereiche weichen vom System-Treiber ab in 2 Szenen (compute_nbody: 36 von 2304 Zellen, pipeline_barriers: 1347 von 2304 Zellen). Das Bild stimmt insgesamt überein, es ist also ein lokaler Darstellungsfehler und keine andere Szene.
Startete nicht jedes Mal: hdr_2160p (System 3 von 3, Custom 0 von 3), subpasses (System 3 von 3, Custom 0 von 3).
Mali-G52 MC2: Details malisx2-0.3.0-c8d18effb1: Details
Feature-Checks mit Unterschieden (31)
| Feature | System | Custom | Änderung |
|---|---|---|---|
| customBorderColors | bestanden | nicht unterstützt | verloren |
| inlineUniformBlock | bestanden | nicht unterstützt | verloren |
| transformFeedback | bestanden | nicht unterstützt | verloren |
| drawIndirectFirstInstance | bestanden | nicht unterstützt | verloren |
| geometryShader | bestanden | nicht unterstützt | verloren |
| occlusionQueryPrecise | bestanden | fehlgeschlagen | verloren |
| tessellationShader | bestanden | nicht unterstützt | verloren |
| compat.helper_loop_terminator | bestanden | nicht getestet | verloren |
| compat.nested_map | bestanden | nicht getestet | verloren |
| core.blend_advertised_formats | bestanden | nicht getestet | verloren |
| core.compute_big_stack | bestanden | nicht getestet | verloren |
| core.host_coherent_readback | bestanden | nicht getestet | verloren |
| core.mrt_partial_kill | bestanden | nicht getestet | verloren |
| core.msaa_resolve | bestanden | nicht unterstützt | verloren |
| core.ubo_update_buffer | bestanden | nicht getestet | verloren |
| core.ubo_written_after_record | bestanden | nicht getestet | verloren |
| core.varying_subset | bestanden | nicht getestet | verloren |
| mem.image_padding | bestanden | nicht getestet | verloren |
| perf.fb_local_barrier_large_draws | bestanden | nicht getestet | verloren |
| perf.fb_local_barrier_overdraw | bestanden | nicht getestet | verloren |
| stage.geometry_max_output | bestanden | nicht getestet | verloren |
| stress.scratch_per_batch | bestanden | nicht getestet | verloren |
| sync.first_submit_clear_then_compute | bestanden | nicht getestet | verloren |
| timelineSemaphore | fehlgeschlagen | bestanden | dazugekommen |
| push.max_combined_image_samplers | nicht unterstützt | bestanden | dazugekommen |
| push.max_uniform_buffers | nicht unterstützt | bestanden | dazugekommen |
| customBorderColorWithoutFormat | nicht getestet | nicht unterstützt | geändert |
| depthClamp | nicht unterstützt | nicht getestet | geändert |
| dualSrcBlend | nicht unterstützt | nicht getestet | geändert |
| shaderClipDistance | nicht unterstützt | nicht getestet | geändert |
| stage.geometry_point_size | nicht unterstützt | nicht getestet | geändert |
Benchmark-Szenen
Die beiden Treiber wurden nicht auf denselben Gerätemodellen gemessen. Frametimes von verschiedenen Geräten vergleichen keine Treiber, lies diese Werte also mit Vorsicht.
| Szene | System ms | Custom ms | Unterschied | Starts | GPU-Takt, MHz | Bild vs. System-Treiber |
|---|---|---|---|---|---|---|
| compute_nbody | 80.16 | 102.96 | 22% langsamer | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied weicht in 36 kleinen Bereichen ab |
| hdr_2160p | 172.21 | n/a | nur eine Seite | 3 von 3 vs. 0 von 3 | ? vs. ? | nicht geprüft |
| oit_linked_lists | 59.15 | 74.38 | 20% langsamer | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| pipeline_barriers | 56.49 | 86.88 | 35% langsamer | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied weicht in 1347 kleinen Bereichen ab |
| subpasses | 111.13 | n/a | nur eine Seite | 3 von 3 vs. 0 von 3 | ? vs. ? | nicht geprüft |
Technische Unterschiede (Vulkan)
Extensions nur in malisx2-0.3.0-c8d18effb1 (8)
- VK_ARM_rasterization_order_attachment_access
- VK_EXT_device_fault
- VK_EXT_memory_budget
- VK_EXT_rasterization_order_attachment_access
- VK_EXT_swapchain_maintenance1
- VK_KHR_dynamic_rendering
- VK_KHR_line_rasterization
- VK_KHR_push_descriptor
Extensions nur in Mali-G52 MC2 (54)
- VK_ANDROID_external_memory_android_hardware_buffer
- VK_EXT_4444_formats
- VK_EXT_astc_decode_mode
- VK_EXT_calibrated_timestamps
- VK_EXT_custom_border_color
- VK_EXT_device_memory_report
- VK_EXT_external_memory_dma_buf
- VK_EXT_global_priority
- VK_EXT_host_query_reset
- VK_EXT_image_drm_format_modifier
- VK_EXT_image_robustness
- VK_EXT_index_type_uint8
- VK_EXT_inline_uniform_block
- VK_EXT_queue_family_foreign
- VK_EXT_scalar_block_layout
- VK_EXT_separate_stencil_usage
- VK_EXT_shader_subgroup_ballot
- VK_EXT_shader_subgroup_vote
- VK_EXT_subgroup_size_control
- VK_EXT_texture_compression_astc_hdr
- VK_EXT_transform_feedback
- VK_KHR_16bit_storage
- VK_KHR_8bit_storage
- VK_KHR_bind_memory2
- VK_KHR_buffer_device_address
- VK_KHR_dedicated_allocation
- VK_KHR_descriptor_update_template
- VK_KHR_device_group
- VK_KHR_external_fence
- VK_KHR_external_memory
- VK_KHR_external_memory_fd
- VK_KHR_external_semaphore
- VK_KHR_get_memory_requirements2
- VK_KHR_image_format_list
- VK_KHR_imageless_framebuffer
- VK_KHR_maintenance1
- VK_KHR_maintenance2
- VK_KHR_maintenance3
- 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_draw_parameters
- VK_KHR_shader_float16_int8
- VK_KHR_shader_float_controls
- VK_KHR_shader_non_semantic_info
- VK_KHR_shader_subgroup_extended_types
- VK_KHR_shared_presentable_image
- VK_KHR_spirv_1_4
- VK_KHR_storage_buffer_storage_class
- VK_KHR_uniform_buffer_standard_layout
- VK_KHR_variable_pointers
- VK_KHR_vulkan_memory_model
Kern-Features mit Unterschieden (0)
| Keine |
Limits mit Unterschieden (48)
| Limit | System | Custom |
|---|---|---|
| maxStorageBufferRange | 268435456 | 2147483648 |
| maxMemoryAllocationCount | 4294967295 | 16384 |
| maxSamplerAllocationCount | 4294967295 | 4000 |
| bufferImageGranularity | 4096 | 1 |
| maxBoundDescriptorSets | 4 | 7 |
| maxPerStageDescriptorUniformBuffers | 36 | 223 |
| maxPerStageDescriptorStorageBuffers | 35 | 64 |
| maxPerStageDescriptorSampledImages | 256 | 208 |
| maxPerStageDescriptorStorageImages | 21 | 32 |
| maxPerStageResources | 365 | 664 |
| maxDescriptorSetSamplers | 768 | 65535 |
| maxDescriptorSetUniformBuffers | 216 | 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 | 64 | 0 |
| maxGeometryOutputComponents | 128 | 0 |
| maxGeometryOutputVertices | 256 | 0 |
| maxGeometryTotalOutputComponents | 1024 | 0 |
| maxFragmentDualSrcAttachments | 0 | 1 |
| maxFragmentCombinedOutputResources | 64 | 4360 |
| maxComputeWorkGroupCount | 4294967295, 4294967295, 4294967295 | 65535, 65535, 65535 |
| maxSamplerLodBias | 255 | 126 |
| framebufferColorSampleCounts | 5 | 1 |
| framebufferDepthSampleCounts | 5 | 1 |
| framebufferStencilSampleCounts | 5 | 1 |
| framebufferNoAttachmentsSampleCounts | 29 | 1 |
| sampledImageColorSampleCounts | 5 | 1 |
| sampledImageIntegerSampleCounts | 5 | 1 |
| sampledImageDepthSampleCounts | 5 | 1 |
| sampledImageStencilSampleCounts | 5 | 1 |
| maxClipDistances | 0 | 8 |
| maxCombinedClipAndCullDistances | 0 | 8 |
Formate, die nur ein Treiber unterstützt (9 dazugekommen, 26 verloren)
- A2R10G10B10_SNORM_PACK32
- A2R10G10B10_SSCALED_PACK32
- A2R10G10B10_USCALED_PACK32
- B8G8R8A8_SSCALED
- B8G8R8A8_USCALED
- B8G8R8_SSCALED
- B8G8R8_USCALED
- R10X6G10X6_UNORM_2PACK16
- R10X6_UNORM_PACK16
- A4B4G4R4_UNORM_PACK16
- A4R4G4B4_UNORM_PACK16
- 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
- B5G5R5A1_UNORM_PACK16
- B8G8R8G8_422_UNORM
- B8G8R8_SNORM
- 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