Mesa.26.3.0-panvk.4 vs. Mali-G610
Auf Mali-G610 (GameForce Ace, Infinix GT 20 Pro, Infinix NOTE Edge, Nothing Phone (2a) Plus, OnePlus Ace 竞速版, realme 真我 GT NEO 3 150W, Vivo V27, Xiaomi 13T). Der zuerst genannte Treiber wird mit dem zweiten verglichen, der die Referenz ist.
SystemMali-G610
vs.CustomMesa.26.3.0-panvk.4
Version des Grafiksystems (Vulkan)1.3.231 → 1.4.354
Zusatzfunktionen (Extensions)104 → 141+51 -14
Features, die ihren Check bestehen (validiert)36 → 5825 nur auf Mesa.26.3.0-panvk.4 bestanden 3 nur auf Mali-G610 bestanden
Benchmark-Szenenkeine gemeinsamen Szenen
Spiele, die jeder Treiber ausführen könnte (eine Schätzung anhand seiner Feature-Liste): grün wahrscheinlich, gelb vielleicht, orange eingeschränkt, rot nein
SystemDX92002+DX102006+DX112009+DX122015+Switch
CustomDX92002+DX102006+DX112009+DX122015+Switch
Mali-G610: Details Mesa.26.3.0-panvk.4: Details
Feature-Checks mit Unterschieden (48)
| Feature | System | Custom | Änderung |
|---|---|---|---|
| tessellationShader | bestanden | fehlgeschlagen | verloren |
| compat.nested_map | bestanden | fehlgeschlagen | verloren |
| stress.submit_memory | bestanden | Crash | verloren |
| colorWriteEnable | nicht unterstützt | bestanden | dazugekommen |
| depthClipControl | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState2LogicOp | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3ColorBlendEnable | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3ColorBlendEquation | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3ColorWriteMask | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3DepthClampEnable | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState3LogicOpEnable | nicht unterstützt | bestanden | dazugekommen |
| robustBufferAccess2 | nicht unterstützt | bestanden | dazugekommen |
| robustImageAccess2 | nicht unterstützt | bestanden | dazugekommen |
| vertexInputDynamicState | nicht unterstützt | bestanden | dazugekommen |
| depthClamp | nicht getestet | bestanden | dazugekommen |
| largePoints | nicht getestet | bestanden | dazugekommen |
| multiViewport | nicht unterstützt | bestanden | dazugekommen |
| compat.helper_loop_terminator | fehlgeschlagen | bestanden | dazugekommen |
| core.blend_advertised_formats | nicht getestet | bestanden | dazugekommen |
| core.compute_big_stack | nicht getestet | bestanden | dazugekommen |
| core.host_coherent_readback | nicht getestet | bestanden | dazugekommen |
| core.ubo_update_buffer | nicht getestet | bestanden | dazugekommen |
| core.ubo_written_after_record | nicht getestet | bestanden | dazugekommen |
| core.varying_subset | nicht getestet | bestanden | dazugekommen |
| mem.image_padding | nicht getestet | Warnung | dazugekommen |
| push.max_uniform_buffers | nicht unterstützt | bestanden | dazugekommen |
| stage.geometry_max_output | nicht getestet | bestanden | dazugekommen |
| sync.first_submit_clear_then_compute | nicht getestet | bestanden | dazugekommen |
| depthBiasControl | nicht unterstützt | nicht getestet | geändert |
| depthBiasExact | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3AlphaToCoverageEnable | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3DepthClipEnable | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3LineRasterizationMode | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3ProvokingVertexMode | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3RasterizationSamples | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3SampleMask | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3TessellationDomainOrigin | nicht unterstützt | nicht getestet | geändert |
| nullDescriptor | nicht unterstützt | nicht getestet | geändert |
| dualSrcBlend | nicht unterstützt | nicht getestet | geändert |
| fillModeNonSolid | nicht unterstützt | nicht getestet | geändert |
| logicOp | nicht unterstützt | nicht getestet | geändert |
| shaderClipDistance | nicht unterstützt | nicht getestet | geändert |
| shaderCullDistance | nicht unterstützt | nicht getestet | geändert |
| vertexPipelineStoresAndAtomics | nicht unterstützt | nicht getestet | geändert |
| wideLines | nicht unterstützt | nicht getestet | geändert |
| core.mrt_partial_kill | nicht getestet | fehlgeschlagen | geändert |
| push.max_combined_image_samplers | nicht unterstützt | Crash | geändert |
| stage.geometry_point_size | nicht getestet | nicht unterstützt | 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 | 17.98 | n/a | nur eine Seite | 3 von 3 vs. ? | 917 vs. ? | nicht geprüft |
| hdr_2160p | 33.42 | n/a | nur eine Seite | ? vs. ? | ? vs. ? | nicht geprüft |
| oit_linked_lists | 23.96 | n/a | nur eine Seite | 3 von 3 vs. ? | 1000 vs. ? | nicht geprüft |
| pipeline_barriers | 9.52 | n/a | nur eine Seite | 3 von 3 vs. ? | 1000 vs. ? | nicht geprüft |
| subpasses | 17.47 | n/a | nur eine Seite | 3 von 3 vs. ? | 883 vs. ? | nicht geprüft |
Technische Unterschiede (Vulkan)
Extensions nur in Mesa.26.3.0-panvk.4 (51)
- VK_ARM_scheduling_controls
- VK_ARM_shader_core_builtins
- VK_ARM_shader_core_properties
- 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_device_address_binding_report
- 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_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_tile_image
- VK_EXT_shader_uniform_buffer_unsized_array
- VK_EXT_swapchain_maintenance1
- 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_KHR_pipeline_executable_properties
- VK_KHR_push_descriptor
- VK_KHR_shader_clock
- VK_KHR_swapchain_mutable_format
- VK_VALVE_mutable_descriptor_type
Extensions nur in Mali-G610 (14)
- VK_EXT_fragment_density_map
- VK_EXT_fragment_density_map2
- VK_EXT_primitives_generated_query
- VK_EXT_rgba10x6_formats
- VK_EXT_subpass_merge_feedback
- VK_KHR_dynamic_rendering
- VK_KHR_format_feature_flags2
- VK_KHR_global_priority
- VK_KHR_maintenance4
- VK_KHR_shader_integer_dot_product
- VK_KHR_shader_terminate_invocation
- VK_KHR_shared_presentable_image
- VK_KHR_synchronization2
- VK_KHR_zero_initialize_workgroup_memory
Kern-Features mit Unterschieden (18)
| shaderOutputLayer | bestanden → nicht unterstützt |
| shaderOutputViewportIndex | bestanden → nicht unterstützt |
| bresenhamLines | nicht unterstützt → bestanden |
| dynamicRenderingLocalRead | nicht unterstützt → bestanden |
| globalPriorityQuery | nicht unterstützt → bestanden |
| hostImageCopy | nicht unterstützt → bestanden |
| indexTypeUint8 | nicht unterstützt → bestanden |
| maintenance5 | nicht unterstützt → bestanden |
| maintenance6 | nicht unterstützt → bestanden |
| pipelineRobustness | nicht unterstützt → bestanden |
| pushDescriptor | nicht unterstützt → bestanden |
| rectangularLines | nicht unterstützt → bestanden |
| shaderExpectAssume | nicht unterstützt → bestanden |
| shaderFloatControls2 | nicht unterstützt → bestanden |
| shaderSubgroupRotate | nicht unterstützt → bestanden |
| shaderSubgroupRotateClustered | nicht unterstützt → bestanden |
| vertexAttributeInstanceRateDivisor | nicht unterstützt → bestanden |
| vertexAttributeInstanceRateZeroDivisor | nicht unterstützt → bestanden |
Limits mit Unterschieden (45)
| Limit | System | Custom |
|---|---|---|
| maxImageDimension1D | 32768 | 65536 |
| maxImageDimension2D | 32768 | 65536 |
| maxImageDimension3D | 32768 | 65536 |
| maxImageDimensionCube | 32768 | 65536 |
| maxImageArrayLayers | 4096 | 65536 |
| maxTexelBufferElements | 268435456 | 134217728 |
| maxUniformBufferRange | 2147483648 | 1048576 |
| maxStorageBufferRange | 268435456 | 4294967295 |
| maxMemoryAllocationCount | 16384 | 4294967295 |
| bufferImageGranularity | 1 | 64 |
| 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 |
| maxVertexInputAttributeOffset | 2047 | 4294967295 |
| maxVertexInputBindingStride | 2048 | 65535 |
| maxTessellationControlTotalOutputComponents | 4096 | 4216 |
| maxGeometryInputComponents | 128 | 64 |
| maxGeometryOutputComponents | 128 | 64 |
| maxGeometryTotalOutputComponents | 2048 | 1024 |
| maxFragmentDualSrcAttachments | 0 | 8 |
| maxFragmentCombinedOutputResources | 1000008 | 4360 |
| maxComputeWorkGroupCount | 4294967295, 4294967295, 4294967295 | 65535, 65535, 65535 |
| maxSamplerLodBias | 255 | 127.996 |
| maxViewports | 1 | 16 |
| minMemoryMapAlignment | 64 | 4096 |
| minTexelBufferOffsetAlignment | 64 | 16 |
| minStorageBufferOffsetAlignment | 64 | 16 |
| subPixelInterpolationOffsetBits | 4 | 8 |
| timestampPeriod | 41.6667 | 0 |
| 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 |
Formate, die nur ein Treiber unterstützt (7 dazugekommen, 6 verloren)
- A1B5G5R5_UNORM_PACK16
- A2R10G10B10_SNORM_PACK32
- A8_UNORM
- 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
- R4G4_UNORM_PACK8
- R5G5B5A1_UNORM_PACK16