panvk_faux123_v1.1.3 vs. Mali-G57 MC2
Auf Mali-G1-Ultra MC12 (Infinix HOT 50 Pro, Infinix NOTE 30, Infinix NOTE 40 Pro, itel RS4, Oppo A6 5G, Oppo A6t 5G, Oppo Find X9s Pro, realme RMX5111, REDMI 15C 5G, Redmi Note 10 5G, Redmi Note 13 5G, Redmi Note 13 Pro, Redmi Pad 2, Samsung Galaxy A07, Samsung Galaxy A07, Samsung Galaxy A15 5G, Samsung Galaxy A16, TCL 50 XE 5G). Der zuerst genannte Treiber wird mit dem zweiten verglichen, der die Referenz ist.
- compute_nbody25% schneller
- hdr_2160p18% schneller
- oit_linked_lists2% langsamer
- pipeline_barriers19% schneller
- subpasses27% schneller
Kleine Bildbereiche weichen vom System-Treiber ab in 1 Szene (pipeline_barriers: 1383 von 2304 Zellen). Das Bild stimmt insgesamt überein, es ist also ein lokaler Darstellungsfehler und keine andere Szene.
Mali-G57 MC2: Details panvk_faux123_v1.1.3: Details
Feature-Checks mit Unterschieden (64)
| Feature | System | Custom | Änderung |
|---|---|---|---|
| borderColorSwizzle | nicht unterstützt | bestanden | dazugekommen |
| colorWriteEnable | nicht unterstützt | bestanden | dazugekommen |
| depthClipControl | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState2 | 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 |
| shaderBufferInt64Atomics | nicht unterstützt | bestanden | dazugekommen |
| timelineSemaphore | fehlgeschlagen | bestanden | dazugekommen |
| depthClamp | nicht getestet | bestanden | dazugekommen |
| largePoints | nicht getestet | bestanden | dazugekommen |
| multiDrawIndirect | nicht unterstützt | bestanden | dazugekommen |
| multiViewport | nicht unterstützt | bestanden | dazugekommen |
| textureCompressionBC | nicht unterstützt | bestanden | dazugekommen |
| compat.helper_loop_terminator | nicht getestet | bestanden | dazugekommen |
| compat.nested_map | nicht getestet | 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.mrt_partial_kill | 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 | bestanden | dazugekommen |
| perf.fb_local_barrier_large_draws | nicht getestet | bestanden | dazugekommen |
| perf.fb_local_barrier_overdraw | nicht getestet | bestanden | dazugekommen |
| push.max_combined_image_samplers | nicht unterstützt | bestanden | dazugekommen |
| push.max_uniform_buffers | nicht unterstützt | bestanden | dazugekommen |
| stage.geometry_max_output | nicht getestet | bestanden | dazugekommen |
| stage.geometry_point_size | nicht getestet | bestanden | dazugekommen |
| stress.multi_draw_indirect_large | nicht unterstützt | bestanden | dazugekommen |
| stress.scratch_per_batch | nicht getestet | bestanden | dazugekommen |
| sync.first_submit_clear_then_compute | nicht getestet | bestanden | dazugekommen |
| borderColorSwizzleFromImage | nicht unterstützt | nicht getestet | geändert |
| depthBiasControl | nicht unterstützt | nicht getestet | geändert |
| depthBiasExact | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState2PatchControlPoints | 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 |
| extendedDynamicState3RasterizationSamples | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3SampleMask | nicht unterstützt | nicht getestet | geändert |
| nullDescriptor | nicht unterstützt | nicht getestet | geändert |
| geometryStreams | nicht unterstützt | nicht getestet | geändert |
| shaderSharedInt64Atomics | nicht unterstützt | nicht getestet | geändert |
| depthBounds | 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 |
| pipelineStatisticsQuery | nicht unterstützt | nicht getestet | geändert |
| shaderClipDistance | nicht unterstützt | nicht getestet | geändert |
| shaderCullDistance | nicht unterstützt | nicht getestet | geändert |
| shaderInt64 | nicht unterstützt | nicht getestet | geändert |
| shaderTessellationAndGeometryPointSize | nicht unterstützt | nicht getestet | geändert |
| variableMultisampleRate | nicht unterstützt | nicht getestet | geändert |
| vertexPipelineStoresAndAtomics | nicht unterstützt | nicht getestet | geändert |
| wideLines | 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 | 59.48 | 47.75 | 25% schneller | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| hdr_2160p | 137.38 | 116.34 | 18% schneller | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| oit_linked_lists | 30.37 | 31.15 | 2% langsamer | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| pipeline_barriers | 30.77 | 25.90 | 19% schneller | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied weicht in 1383 kleinen Bereichen ab |
| subpasses | 89.02 | 70.07 | 27% schneller | 3 von 3 vs. 3 von 3 | ? vs. ? | nicht geprüft |
Technische Unterschiede (Vulkan)
Extensions nur in panvk_faux123_v1.1.3 (113)
- 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_border_color_swizzle
- 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_clamp_zero_one
- 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_state
- VK_EXT_extended_dynamic_state2
- VK_EXT_extended_dynamic_state3
- VK_EXT_external_memory_acquire_unmodified
- VK_EXT_global_priority_query
- VK_EXT_graphics_pipeline_library
- VK_EXT_hdr_metadata
- VK_EXT_host_image_copy
- VK_EXT_image_2d_view_of_3d
- VK_EXT_image_compression_control
- VK_EXT_image_sliced_view_of_3d
- VK_EXT_image_view_min_lod
- VK_EXT_legacy_dithering
- VK_EXT_load_store_op_none
- VK_EXT_map_memory_placed
- VK_EXT_memory_budget
- VK_EXT_multisampled_render_to_single_sampled
- VK_EXT_mutable_descriptor_type
- VK_EXT_non_seamless_cube_map
- VK_EXT_physical_device_drm
- VK_EXT_pipeline_creation_cache_control
- VK_EXT_pipeline_creation_feedback
- VK_EXT_pipeline_robustness
- VK_EXT_present_timing
- VK_EXT_primitive_topology_list_restart
- VK_EXT_primitives_generated_query
- VK_EXT_private_data
- VK_EXT_robustness2
- VK_EXT_shader_atomic_float
- VK_EXT_shader_demote_to_helper_invocation
- VK_EXT_shader_image_atomic_int64
- 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_texel_buffer_alignment
- VK_EXT_tooling_info
- VK_EXT_vertex_attribute_divisor
- VK_EXT_vertex_input_dynamic_state
- 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_copy_commands2
- VK_KHR_depth_clamp_zero_one
- VK_KHR_draw_indirect_count
- 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_internally_synchronized_queues
- VK_KHR_line_rasterization
- VK_KHR_load_store_op_none
- VK_KHR_maintenance4
- VK_KHR_maintenance5
- VK_KHR_maintenance6
- VK_KHR_maintenance7
- VK_KHR_maintenance8
- VK_KHR_maintenance9
- VK_KHR_map_memory2
- VK_KHR_pipeline_binary
- 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_robustness2
- VK_KHR_shader_atomic_int64
- 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_integer_dot_product
- 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_terminate_invocation
- VK_KHR_shader_untyped_pointers
- VK_KHR_swapchain_maintenance1
- VK_KHR_swapchain_mutable_format
- VK_KHR_synchronization2
- VK_KHR_unified_image_layouts
- VK_KHR_vertex_attribute_divisor
- VK_KHR_workgroup_memory_explicit_layout
- VK_KHR_zero_initialize_workgroup_memory
- VK_VALVE_mutable_descriptor_type
Extensions nur in Mali-G57 MC2 (3)
- VK_EXT_fragment_density_map
- VK_EXT_fragment_density_map2
- VK_KHR_shared_presentable_image
Kern-Features mit Unterschieden (67)
| multiview | nicht unterstützt → bestanden |
| samplerYcbcrConversion | nicht unterstützt → bestanden |
| shaderDrawParameters | nicht unterstützt → bestanden |
| storageBuffer16BitAccess | nicht unterstützt → bestanden |
| storageInputOutput16 | nicht unterstützt → bestanden |
| storagePushConstant16 | nicht unterstützt → bestanden |
| uniformAndStorageBuffer16BitAccess | nicht unterstützt → bestanden |
| variablePointers | nicht unterstützt → bestanden |
| variablePointersStorageBuffer | nicht unterstützt → bestanden |
| bufferDeviceAddress | nicht unterstützt → bestanden |
| descriptorBindingPartiallyBound | nicht unterstützt → bestanden |
| descriptorBindingSampledImageUpdateAfterBind | nicht unterstützt → bestanden |
| descriptorBindingStorageBufferUpdateAfterBind | nicht unterstützt → bestanden |
| descriptorBindingStorageImageUpdateAfterBind | nicht unterstützt → bestanden |
| descriptorBindingStorageTexelBufferUpdateAfterBind | nicht unterstützt → bestanden |
| descriptorBindingUniformBufferUpdateAfterBind | nicht unterstützt → bestanden |
| descriptorBindingUniformTexelBufferUpdateAfterBind | nicht unterstützt → bestanden |
| descriptorBindingUpdateUnusedWhilePending | nicht unterstützt → bestanden |
| descriptorBindingVariableDescriptorCount | nicht unterstützt → bestanden |
| descriptorIndexing | nicht unterstützt → bestanden |
| drawIndirectCount | nicht unterstützt → bestanden |
| hostQueryReset | nicht unterstützt → bestanden |
| imagelessFramebuffer | nicht unterstützt → bestanden |
| runtimeDescriptorArray | nicht unterstützt → bestanden |
| samplerMirrorClampToEdge | nicht unterstützt → bestanden |
| scalarBlockLayout | nicht unterstützt → bestanden |
| separateDepthStencilLayouts | nicht unterstützt → bestanden |
| shaderBufferInt64Atomics | nicht unterstützt → bestanden |
| shaderFloat16 | nicht unterstützt → bestanden |
| shaderInputAttachmentArrayDynamicIndexing | nicht unterstützt → bestanden |
| shaderInputAttachmentArrayNonUniformIndexing | nicht unterstützt → bestanden |
| shaderInt8 | nicht unterstützt → bestanden |
| shaderOutputViewportIndex | nicht unterstützt → bestanden |
| shaderSampledImageArrayNonUniformIndexing | nicht unterstützt → bestanden |
| shaderSharedInt64Atomics | nicht unterstützt → bestanden |
| shaderStorageBufferArrayNonUniformIndexing | nicht unterstützt → bestanden |
| shaderStorageImageArrayNonUniformIndexing | nicht unterstützt → bestanden |
| shaderStorageTexelBufferArrayDynamicIndexing | nicht unterstützt → bestanden |
| shaderStorageTexelBufferArrayNonUniformIndexing | nicht unterstützt → bestanden |
| shaderSubgroupExtendedTypes | nicht unterstützt → bestanden |
| shaderUniformBufferArrayNonUniformIndexing | nicht unterstützt → bestanden |
| shaderUniformTexelBufferArrayDynamicIndexing | nicht unterstützt → bestanden |
| shaderUniformTexelBufferArrayNonUniformIndexing | nicht unterstützt → bestanden |
| storageBuffer8BitAccess | nicht unterstützt → bestanden |
| storagePushConstant8 | nicht unterstützt → bestanden |
| subgroupBroadcastDynamicId | nicht unterstützt → bestanden |
| timelineSemaphore | nicht unterstützt → bestanden |
| uniformAndStorageBuffer8BitAccess | nicht unterstützt → bestanden |
| uniformBufferStandardLayout | nicht unterstützt → bestanden |
| vulkanMemoryModel | nicht unterstützt → bestanden |
| vulkanMemoryModelAvailabilityVisibilityChains | nicht unterstützt → bestanden |
| vulkanMemoryModelDeviceScope | nicht unterstützt → bestanden |
| computeFullSubgroups | nicht unterstützt → bestanden |
| descriptorBindingInlineUniformBlockUpdateAfterBind | nicht unterstützt → bestanden |
| dynamicRendering | nicht unterstützt → bestanden |
| inlineUniformBlock | nicht unterstützt → bestanden |
| maintenance4 | nicht unterstützt → bestanden |
| pipelineCreationCacheControl | nicht unterstützt → bestanden |
| privateData | nicht unterstützt → bestanden |
| robustImageAccess | nicht unterstützt → bestanden |
| shaderDemoteToHelperInvocation | nicht unterstützt → bestanden |
| shaderIntegerDotProduct | nicht unterstützt → bestanden |
| shaderTerminateInvocation | nicht unterstützt → bestanden |
| shaderZeroInitializeWorkgroupMemory | nicht unterstützt → bestanden |
| subgroupSizeControl | nicht unterstützt → bestanden |
| synchronization2 | nicht unterstützt → bestanden |
| textureCompressionASTC_HDR | nicht unterstützt → bestanden |
Limits mit Unterschieden (48)
| Limit | System | Custom |
|---|---|---|
| maxImageDimension1D | 16384 | 65536 |
| maxImageDimension2D | 16384 | 65536 |
| maxImageDimension3D | 16384 | 65536 |
| maxImageDimensionCube | 16384 | 65536 |
| maxImageArrayLayers | 4096 | 65536 |
| maxTexelBufferElements | 268435456 | 134217728 |
| maxUniformBufferRange | 65536 | 1048576 |
| maxStorageBufferRange | 268435456 | 4294967295 |
| bufferImageGranularity | 4096 | 64 |
| sparseAddressSpaceSize | 0 | 140737454800896 |
| maxBoundDescriptorSets | 4 | 7 |
| 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 | 64 | 128 |
| maxGeometryOutputVertices | 256 | 1024 |
| maxFragmentDualSrcAttachments | 0 | 8 |
| maxFragmentCombinedOutputResources | 1000008 | 4360 |
| maxComputeWorkGroupCount | 4294967295, 4294967295, 4294967295 | 65535, 65535, 65535 |
| maxDrawIndirectCount | 1 | 65535 |
| maxSamplerLodBias | 255 | 127.996 |
| maxViewports | 1 | 16 |
| minMemoryMapAlignment | 64 | 4096 |
| minTexelBufferOffsetAlignment | 64 | 16 |
| minStorageBufferOffsetAlignment | 64 | 4 |
| subPixelInterpolationOffsetBits | 4 | 8 |
| framebufferNoAttachmentsSampleCounts | 29 | 13 |
| 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 (31 dazugekommen, 6 verloren)
- A1B5G5R5_UNORM_PACK16
- A2R10G10B10_SNORM_PACK32
- A2R10G10B10_SSCALED_PACK32
- A2R10G10B10_USCALED_PACK32
- A8_UNORM
- B8G8R8A8_SSCALED
- B8G8R8A8_USCALED
- B8G8R8_SSCALED
- B8G8R8_USCALED
- 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
- R64_SINT
- R64_UINT
- B5G5R5A1_UNORM_PACK16
- B8G8R8G8_422_UNORM
- B8G8R8_SNORM
- G8B8G8R8_422_UNORM
- R4G4_UNORM_PACK8
- R5G5B5A1_UNORM_PACK16