malisx2-0.3.0-c8d18effb1 vs PanVK-Droid.0.3.5
Di 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). Driver yang disebut pertama dibandingkan dengan yang kedua, yang menjadi baseline.
BawaanPanVK-Droid.0.3.5
vsKustommalisx2-0.3.0-c8d18effb1
Versi sistem grafis (Vulkan)1.3.278 sampai 1.1.363
Fitur tambahan (ekstensi)131 sampai 19+2 -114
Fitur yang lolos pemeriksaan (tervalidasi)34 sampai 23lolos hanya di malisx2-0.3.0-c8d18effb1: 2 lolos hanya di PanVK-Droid.0.3.5: 13
Scene tes kecepatan (benchmark)lebih cepat: 0 lebih lambat: 222% lebih lambat secara keseluruhan (rata-rata geometrik)
Game yang bisa dijalankan setiap driver (perkiraan dari daftar fiturnya): hijau kemungkinan bisa, kuning mungkin, oranye terbatas, merah tidak
BawaanDX92002+DX102006+DX112009+DX122015+Switch
KustomDX92002+DX102006+DX112009+DX122015+Switch
- compute_nbody22% lebih lambat
- pipeline_barriers23% lebih lambat
Area kecil gambar berbeda dari driver bawaan di 1 scene (pipeline_barriers: 1470 dari 2304 sel). Gambar secara keseluruhan cocok, jadi ini kesalahan render lokal, bukan scene yang berbeda.
Tidak selalu berhasil dimulai: hdr_2160p (bawaan 3 dari 3, kustom 0 dari 3), subpasses (bawaan 3 dari 3, kustom 0 dari 3).
Detail PanVK-Droid.0.3.5 Detail malisx2-0.3.0-c8d18effb1
Pemeriksaan fitur yang berbeda (29)
| Fitur | PanVK-Droid.0.3.5 | malisx2-0.3.0-c8d18effb1 | Perubahan |
|---|---|---|---|
| borderColorSwizzle | lolos | tidak didukung | berkurang |
| customBorderColors | lolos | tidak didukung | berkurang |
| extendedDynamicState | lolos | tidak didukung | berkurang |
| extendedDynamicState2 | lolos | tidak didukung | berkurang |
| inlineUniformBlock | lolos | tidak didukung | berkurang |
| transformFeedback | lolos | tidak didukung | berkurang |
| vertexInputDynamicState | lolos | tidak didukung | berkurang |
| shaderBufferInt64Atomics | lolos | tidak didukung | berkurang |
| drawIndirectFirstInstance | lolos | tidak didukung | berkurang |
| geometryShader | lolos | tidak didukung | berkurang |
| occlusionQueryPrecise | lolos | gagal | berkurang |
| tessellationShader | lolos | tidak didukung | berkurang |
| core.msaa_resolve | lolos | tidak didukung | berkurang |
| push.max_combined_image_samplers | tidak didukung | lolos | bertambah |
| push.max_uniform_buffers | tidak didukung | lolos | bertambah |
| borderColorSwizzleFromImage | belum diuji | tidak didukung | berubah |
| customBorderColorWithoutFormat | belum diuji | tidak didukung | berubah |
| extendedDynamicState2PatchControlPoints | belum diuji | tidak didukung | berubah |
| extendedDynamicState3LineRasterizationMode | belum diuji | tidak didukung | berubah |
| extendedDynamicState3ProvokingVertexMode | belum diuji | tidak didukung | berubah |
| extendedDynamicState3SampleMask | belum diuji | tidak didukung | berubah |
| extendedDynamicState3TessellationDomainOrigin | belum diuji | tidak didukung | berubah |
| descriptorBindingInlineUniformBlockUpdateAfterBind | belum diuji | tidak didukung | berubah |
| shaderSharedInt64Atomics | belum diuji | tidak didukung | berubah |
| depthClamp | tidak didukung | belum diuji | berubah |
| logicOp | belum diuji | tidak didukung | berubah |
| shaderClipDistance | tidak didukung | belum diuji | berubah |
| shaderInt64 | belum diuji | tidak didukung | berubah |
| wideLines | belum diuji | tidak didukung | berubah |
Scene tes kecepatan (benchmark)
| Scene | PanVK-Droid.0.3.5 ms | malisx2-0.3.0-c8d18effb1 ms | Selisih | Mulai | Clock GPU, MHz | Gambar vs bawaan |
|---|---|---|---|---|---|---|
| compute_nbody | 80.79 | 102.96 | 22% lebih lambat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar tidak ada perbedaan kecil |
| hdr_2160p | 173.86 | n/a | hanya satu sisi | 3 dari 3 vs 0 dari 3 | ? vs ? | tidak diperiksa |
| oit_linked_lists | n/a | 73.98 | hanya satu sisi | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar tidak ada perbedaan kecil |
| pipeline_barriers | 66.50 | 86.88 | 23% lebih lambat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar berbeda di 1470 area kecil |
| subpasses | 127.93 | n/a | hanya satu sisi | 3 dari 3 vs 0 dari 3 | ? vs ? | tidak diperiksa |
Perbedaan teknis (Vulkan)
Ekstensi yang hanya ada di malisx2-0.3.0-c8d18effb1 (2)
- VK_EXT_memory_budget
- VK_KHR_push_descriptor
Ekstensi yang hanya ada di PanVK-Droid.0.3.5 (114)
- 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_dedicated_allocation
- VK_KHR_descriptor_update_template
- VK_KHR_device_group
- 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_uniform_buffer_standard_layout
- VK_KHR_variable_pointers
- VK_KHR_vertex_attribute_divisor
- VK_KHR_vulkan_memory_model
- VK_KHR_zero_initialize_workgroup_memory
Fitur inti yang berbeda (45)
| multiview | lolos sampai tidak didukung |
| samplerYcbcrConversion | lolos sampai tidak didukung |
| shaderDrawParameters | lolos sampai tidak didukung |
| storageBuffer16BitAccess | lolos sampai tidak didukung |
| storageInputOutput16 | lolos sampai tidak didukung |
| storagePushConstant16 | lolos sampai tidak didukung |
| uniformAndStorageBuffer16BitAccess | lolos sampai tidak didukung |
| variablePointers | lolos sampai tidak didukung |
| variablePointersStorageBuffer | lolos sampai tidak didukung |
| bufferDeviceAddress | lolos sampai tidak didukung |
| hostQueryReset | lolos sampai tidak didukung |
| imagelessFramebuffer | lolos sampai tidak didukung |
| samplerMirrorClampToEdge | lolos sampai tidak didukung |
| scalarBlockLayout | lolos sampai tidak didukung |
| separateDepthStencilLayouts | lolos sampai tidak didukung |
| shaderBufferInt64Atomics | lolos sampai tidak didukung |
| shaderFloat16 | lolos sampai tidak didukung |
| shaderInt8 | lolos sampai tidak didukung |
| shaderOutputViewportIndex | lolos sampai tidak didukung |
| shaderSharedInt64Atomics | lolos sampai tidak didukung |
| shaderSubgroupExtendedTypes | lolos sampai tidak didukung |
| storageBuffer8BitAccess | lolos sampai tidak didukung |
| storagePushConstant8 | lolos sampai tidak didukung |
| subgroupBroadcastDynamicId | lolos sampai tidak didukung |
| timelineSemaphore | lolos sampai tidak didukung |
| uniformAndStorageBuffer8BitAccess | lolos sampai tidak didukung |
| uniformBufferStandardLayout | lolos sampai tidak didukung |
| vulkanMemoryModel | lolos sampai tidak didukung |
| vulkanMemoryModelAvailabilityVisibilityChains | lolos sampai tidak didukung |
| vulkanMemoryModelDeviceScope | lolos sampai tidak didukung |
| computeFullSubgroups | lolos sampai tidak didukung |
| descriptorBindingInlineUniformBlockUpdateAfterBind | lolos sampai tidak didukung |
| dynamicRendering | lolos sampai tidak didukung |
| inlineUniformBlock | lolos sampai tidak didukung |
| maintenance4 | lolos sampai tidak didukung |
| pipelineCreationCacheControl | lolos sampai tidak didukung |
| privateData | lolos sampai tidak didukung |
| robustImageAccess | lolos sampai tidak didukung |
| shaderDemoteToHelperInvocation | lolos sampai tidak didukung |
| shaderIntegerDotProduct | lolos sampai tidak didukung |
| shaderTerminateInvocation | lolos sampai tidak didukung |
| shaderZeroInitializeWorkgroupMemory | lolos sampai tidak didukung |
| subgroupSizeControl | lolos sampai tidak didukung |
| synchronization2 | lolos sampai tidak didukung |
| textureCompressionASTC_HDR | lolos sampai tidak didukung |
Batas yang berbeda (46)
| Batas | PanVK-Droid.0.3.5 | malisx2-0.3.0-c8d18effb1 |
|---|---|---|
| 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 | 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 |
| lineWidthRange | 1, 4095.94 | 1, 1 |
| lineWidthGranularity | 0.0625 | 0 |
Format yang hanya didukung satu driver (3 bertambah, 34 berkurang)
- A2R10G10B10_SNORM_PACK32
- 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