PanVK-Droid.0.3.5 vs. malisx2-0.2.3-b85d5f7f36
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, TECNO POVA 3, TECNO SPARK 20, Xiaomi 24049RN28L). Der zuerst genannte Treiber wird mit dem zweiten verglichen, der die Referenz ist.
Systemmalisx2-0.2.3-b85d5f7f36
vs.CustomPanVK-Droid.0.3.5
Version des Grafiksystems (Vulkan)1.1.363 → 1.3.278
Zusatzfunktionen (Extensions)15 → 131+118 -2
Features, die ihren Check bestehen (validiert)22 → 3414 nur auf PanVK-Droid.0.3.5 bestanden 2 nur auf malisx2-0.2.3-b85d5f7f36 bestanden
Benchmark-Szenen2 schneller 0 langsamer29% schneller insgesamt (geometrisches Mittel)
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
- compute_nbody28% schneller
- pipeline_barriers30% schneller
Kleine Bildbereiche weichen vom System-Treiber ab in 1 Szene (pipeline_barriers: 1470 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 0 von 3, Custom 3 von 3), subpasses (System 0 von 3, Custom 3 von 3).
malisx2-0.2.3-b85d5f7f36: Details PanVK-Droid.0.3.5: Details
Feature-Checks mit Unterschieden (30)
| Feature | malisx2-0.2.3-b85d5f7f36 | PanVK-Droid.0.3.5 | Änderung |
|---|---|---|---|
| push.max_combined_image_samplers | bestanden | nicht unterstützt | verloren |
| push.max_uniform_buffers | bestanden | nicht unterstützt | verloren |
| borderColorSwizzle | nicht unterstützt | bestanden | dazugekommen |
| customBorderColors | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState | nicht unterstützt | bestanden | dazugekommen |
| extendedDynamicState2 | nicht unterstützt | bestanden | dazugekommen |
| inlineUniformBlock | nicht unterstützt | bestanden | dazugekommen |
| transformFeedback | nicht unterstützt | bestanden | dazugekommen |
| vertexInputDynamicState | nicht unterstützt | bestanden | dazugekommen |
| shaderBufferInt64Atomics | nicht unterstützt | bestanden | dazugekommen |
| timelineSemaphore | nicht unterstützt | bestanden | dazugekommen |
| drawIndirectFirstInstance | nicht unterstützt | bestanden | dazugekommen |
| geometryShader | nicht unterstützt | bestanden | dazugekommen |
| occlusionQueryPrecise | fehlgeschlagen | bestanden | dazugekommen |
| tessellationShader | nicht unterstützt | bestanden | dazugekommen |
| core.msaa_resolve | fehlgeschlagen | bestanden | dazugekommen |
| borderColorSwizzleFromImage | nicht unterstützt | nicht getestet | geändert |
| customBorderColorWithoutFormat | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState2PatchControlPoints | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3LineRasterizationMode | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3ProvokingVertexMode | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3SampleMask | nicht unterstützt | nicht getestet | geändert |
| extendedDynamicState3TessellationDomainOrigin | nicht unterstützt | nicht getestet | geändert |
| descriptorBindingInlineUniformBlockUpdateAfterBind | nicht unterstützt | nicht getestet | geändert |
| shaderSharedInt64Atomics | nicht unterstützt | nicht getestet | geändert |
| depthClamp | nicht getestet | nicht unterstützt | geändert |
| logicOp | nicht unterstützt | nicht getestet | geändert |
| shaderClipDistance | nicht getestet | nicht unterstützt | geändert |
| shaderInt64 | nicht unterstützt | nicht getestet | geändert |
| wideLines | nicht unterstützt | nicht getestet | geändert |
Benchmark-Szenen
| Szene | malisx2-0.2.3-b85d5f7f36 ms | PanVK-Droid.0.3.5 ms | Unterschied | Starts | GPU-Takt, MHz | Bild vs. System-Treiber |
|---|---|---|---|---|---|---|
| compute_nbody | 103.07 | 80.79 | 28% schneller | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| hdr_2160p | n/a | 173.86 | nur eine Seite | 0 von 3 vs. 3 von 3 | ? vs. ? | nicht geprüft |
| oit_linked_lists | 73.07 | n/a | nur eine Seite | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied kein kleiner Unterschied |
| pipeline_barriers | 86.77 | 66.50 | 30% schneller | 3 von 3 vs. 3 von 3 | ? vs. ? | kein großer Unterschied weicht in 1470 kleinen Bereichen ab |
| subpasses | n/a | 127.93 | nur eine Seite | 0 von 3 vs. 3 von 3 | ? vs. ? | nicht geprüft |
Technische Unterschiede (Vulkan)
Extensions nur in PanVK-Droid.0.3.5 (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
Extensions nur in malisx2-0.2.3-b85d5f7f36 (2)
- VK_EXT_memory_budget
- VK_KHR_push_descriptor
Kern-Features mit Unterschieden (45)
| 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 |
| hostQueryReset | nicht unterstützt → bestanden |
| imagelessFramebuffer | 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 |
| shaderInt8 | nicht unterstützt → bestanden |
| shaderOutputViewportIndex | nicht unterstützt → bestanden |
| shaderSharedInt64Atomics | nicht unterstützt → bestanden |
| shaderSubgroupExtendedTypes | 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 (45)
| Limit | malisx2-0.2.3-b85d5f7f36 | PanVK-Droid.0.3.5 |
|---|---|---|
| maxSamplerAllocationCount | 4000 | 4294967295 |
| maxPerStageDescriptorUniformBuffers | 223 | 241 |
| maxPerStageDescriptorStorageBuffers | 64 | 35 |
| maxPerStageDescriptorSampledImages | 208 | 256 |
| maxPerStageDescriptorStorageImages | 32 | 21 |
| maxPerStageResources | 664 | 570 |
| maxDescriptorSetSamplers | 65535 | 768 |
| maxDescriptorSetUniformBuffers | 223 | 1446 |
| maxDescriptorSetUniformBuffersDynamic | 16 | 32 |
| maxDescriptorSetStorageBuffers | 4096 | 210 |
| maxDescriptorSetStorageBuffersDynamic | 8 | 32 |
| maxDescriptorSetSampledImages | 65535 | 1536 |
| maxDescriptorSetStorageImages | 256 | 126 |
| maxVertexInputAttributes | 16 | 32 |
| maxVertexInputBindings | 16 | 32 |
| maxVertexInputAttributeOffset | 4294967295 | 2047 |
| maxVertexInputBindingStride | 65535 | 2048 |
| maxTessellationGenerationLevel | 0 | 64 |
| maxTessellationPatchSize | 0 | 32 |
| maxTessellationControlPerVertexInputComponents | 0 | 128 |
| maxTessellationControlPerVertexOutputComponents | 0 | 128 |
| maxTessellationControlPerPatchOutputComponents | 0 | 120 |
| maxTessellationControlTotalOutputComponents | 0 | 4096 |
| maxTessellationEvaluationInputComponents | 0 | 128 |
| maxTessellationEvaluationOutputComponents | 0 | 128 |
| maxGeometryShaderInvocations | 0 | 32 |
| maxGeometryInputComponents | 0 | 128 |
| maxGeometryOutputComponents | 0 | 128 |
| maxGeometryOutputVertices | 0 | 256 |
| maxGeometryTotalOutputComponents | 0 | 2048 |
| maxFragmentDualSrcAttachments | 1 | 8 |
| maxFragmentCombinedOutputResources | 4360 | 64 |
| maxComputeWorkGroupCount | 65535, 65535, 65535 | 4294967295, 4294967295, 4294967295 |
| maxInterpolationOffset | 0.5 | 0.4375 |
| framebufferColorSampleCounts | 29 | 5 |
| framebufferDepthSampleCounts | 29 | 5 |
| framebufferStencilSampleCounts | 29 | 5 |
| sampledImageColorSampleCounts | 29 | 5 |
| sampledImageIntegerSampleCounts | 29 | 5 |
| sampledImageDepthSampleCounts | 29 | 5 |
| sampledImageStencilSampleCounts | 29 | 5 |
| maxClipDistances | 8 | 0 |
| maxCombinedClipAndCullDistances | 8 | 0 |
| lineWidthRange | 1, 1 | 1, 4095.94 |
| lineWidthGranularity | 0 | 0.0625 |
Formate, die nur ein Treiber unterstützt (34 dazugekommen, 11 verloren)
- 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
- 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