panvk-g76-kirin990-1.2.3 vs Mali-G52 MC2
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.
- compute_nbody1% lebih cepat
- hdr_2160p7% lebih cepat
- oit_linked_lists42% lebih lambat
- pipeline_barriers11% lebih lambat
- subpasses4% lebih lambat
Area kecil gambar berbeda dari driver bawaan di 2 scene (compute_nbody: 6 dari 2304 sel, pipeline_barriers: 1342 dari 2304 sel). Gambar secara keseluruhan cocok, jadi ini kesalahan render lokal, bukan scene yang berbeda.
Detail Mali-G52 MC2 Detail panvk-g76-kirin990-1.2.3
Pemeriksaan fitur yang berbeda (53)
| Fitur | Bawaan | Kustom | Perubahan |
|---|---|---|---|
| compat.nested_map | lolos | gagal | berkurang |
| limit.uniform_buffer_range | lolos | gagal | berkurang |
| stress.submit_memory | lolos | tak tentu | berkurang |
| borderColorSwizzle | tidak didukung | lolos | bertambah |
| colorWriteEnable | tidak didukung | lolos | bertambah |
| depthClipControl | tidak didukung | lolos | bertambah |
| extendedDynamicState | tidak didukung | lolos | bertambah |
| extendedDynamicState2 | tidak didukung | lolos | bertambah |
| extendedDynamicState2LogicOp | tidak didukung | lolos | bertambah |
| extendedDynamicState3ColorBlendEnable | tidak didukung | lolos | bertambah |
| extendedDynamicState3ColorBlendEquation | tidak didukung | lolos | bertambah |
| extendedDynamicState3ColorWriteMask | tidak didukung | lolos | bertambah |
| extendedDynamicState3DepthClampEnable | tidak didukung | lolos | bertambah |
| extendedDynamicState3LogicOpEnable | tidak didukung | lolos | bertambah |
| robustBufferAccess2 | tidak didukung | lolos | bertambah |
| robustImageAccess2 | tidak didukung | lolos | bertambah |
| vertexInputDynamicState | tidak didukung | lolos | bertambah |
| shaderBufferInt64Atomics | tidak didukung | lolos | bertambah |
| timelineSemaphore | gagal | lolos | bertambah |
| depthClamp | tidak didukung | lolos | bertambah |
| largePoints | belum diuji | lolos | bertambah |
| multiDrawIndirect | tidak didukung | lolos | bertambah |
| multiViewport | tidak didukung | lolos | bertambah |
| textureCompressionBC | tidak didukung | lolos | bertambah |
| push.max_combined_image_samplers | tidak didukung | lolos | bertambah |
| push.max_uniform_buffers | tidak didukung | lolos | bertambah |
| stage.geometry_point_size | tidak didukung | lolos | bertambah |
| stress.multi_draw_indirect_large | tidak didukung | lolos | bertambah |
| borderColorSwizzleFromImage | tidak didukung | belum diuji | berubah |
| depthBiasControl | tidak didukung | belum diuji | berubah |
| depthBiasExact | tidak didukung | belum diuji | berubah |
| extendedDynamicState2PatchControlPoints | tidak didukung | belum diuji | berubah |
| extendedDynamicState3AlphaToCoverageEnable | tidak didukung | belum diuji | berubah |
| extendedDynamicState3DepthClipEnable | tidak didukung | belum diuji | berubah |
| extendedDynamicState3LineRasterizationMode | tidak didukung | belum diuji | berubah |
| extendedDynamicState3RasterizationSamples | tidak didukung | belum diuji | berubah |
| extendedDynamicState3SampleMask | tidak didukung | belum diuji | berubah |
| descriptorBindingInlineUniformBlockUpdateAfterBind | tidak didukung | belum diuji | berubah |
| nullDescriptor | tidak didukung | belum diuji | berubah |
| geometryStreams | tidak didukung | belum diuji | berubah |
| shaderSharedInt64Atomics | tidak didukung | belum diuji | berubah |
| depthBounds | tidak didukung | belum diuji | berubah |
| dualSrcBlend | tidak didukung | belum diuji | berubah |
| fillModeNonSolid | tidak didukung | belum diuji | berubah |
| logicOp | tidak didukung | belum diuji | berubah |
| pipelineStatisticsQuery | tidak didukung | belum diuji | berubah |
| shaderClipDistance | tidak didukung | belum diuji | berubah |
| shaderCullDistance | tidak didukung | belum diuji | berubah |
| shaderInt64 | tidak didukung | belum diuji | berubah |
| shaderTessellationAndGeometryPointSize | tidak didukung | belum diuji | berubah |
| variableMultisampleRate | tidak didukung | belum diuji | berubah |
| vertexPipelineStoresAndAtomics | tidak didukung | belum diuji | berubah |
| wideLines | tidak didukung | belum diuji | berubah |
Scene tes kecepatan (benchmark)
Kedua driver tidak diukur di kumpulan model perangkat yang sama. Frame time dari perangkat yang berbeda tidak membandingkan driver, jadi baca angka ini dengan mempertimbangkan hal itu.
| Scene | Bawaan ms | Kustom ms | Selisih | Mulai | Clock GPU, MHz | Gambar vs bawaan |
|---|---|---|---|---|---|---|
| compute_nbody | 80.16 | 79.10 | 1% lebih cepat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar berbeda di 6 area kecil |
| hdr_2160p | 172.21 | 160.79 | 7% lebih cepat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar tidak ada perbedaan kecil |
| oit_linked_lists | 59.15 | 102.52 | 42% lebih lambat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar tidak ada perbedaan kecil |
| pipeline_barriers | 56.49 | 63.76 | 11% lebih lambat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar berbeda di 1342 area kecil |
| subpasses | 111.13 | 116.18 | 4% lebih lambat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak diperiksa |
Perbedaan teknis (Vulkan)
Ekstensi yang hanya ada di panvk-g76-kirin990-1.2.3 (101)
- 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_descriptor_indexing
- 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_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_private_data
- VK_EXT_robustness2
- VK_EXT_shader_atomic_float
- VK_EXT_shader_demote_to_helper_invocation
- VK_EXT_shader_module_identifier
- VK_EXT_shader_replicated_composites
- VK_EXT_shader_stencil_export
- 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_copy_commands2
- 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_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_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_relaxed_extended_instruction
- VK_KHR_shader_subgroup_rotate
- VK_KHR_shader_terminate_invocation
- 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
Ekstensi yang hanya ada di Mali-G52 MC2 (1)
- VK_KHR_shared_presentable_image
Fitur inti yang berbeda (65)
| multiview | tidak didukung sampai lolos |
| samplerYcbcrConversion | tidak didukung sampai lolos |
| shaderDrawParameters | tidak didukung sampai lolos |
| storageBuffer16BitAccess | tidak didukung sampai lolos |
| storageInputOutput16 | tidak didukung sampai lolos |
| storagePushConstant16 | tidak didukung sampai lolos |
| uniformAndStorageBuffer16BitAccess | tidak didukung sampai lolos |
| variablePointers | tidak didukung sampai lolos |
| variablePointersStorageBuffer | tidak didukung sampai lolos |
| bufferDeviceAddress | tidak didukung sampai lolos |
| descriptorBindingPartiallyBound | tidak didukung sampai lolos |
| descriptorBindingSampledImageUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingStorageBufferUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingStorageImageUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingStorageTexelBufferUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingUniformBufferUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingUniformTexelBufferUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingUpdateUnusedWhilePending | tidak didukung sampai lolos |
| descriptorBindingVariableDescriptorCount | tidak didukung sampai lolos |
| descriptorIndexing | tidak didukung sampai lolos |
| hostQueryReset | tidak didukung sampai lolos |
| imagelessFramebuffer | tidak didukung sampai lolos |
| runtimeDescriptorArray | tidak didukung sampai lolos |
| samplerMirrorClampToEdge | tidak didukung sampai lolos |
| scalarBlockLayout | tidak didukung sampai lolos |
| separateDepthStencilLayouts | tidak didukung sampai lolos |
| shaderBufferInt64Atomics | tidak didukung sampai lolos |
| shaderInputAttachmentArrayDynamicIndexing | tidak didukung sampai lolos |
| shaderInputAttachmentArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderInt8 | tidak didukung sampai lolos |
| shaderOutputViewportIndex | tidak didukung sampai lolos |
| shaderSampledImageArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderSharedInt64Atomics | tidak didukung sampai lolos |
| shaderStorageBufferArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderStorageImageArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderStorageTexelBufferArrayDynamicIndexing | tidak didukung sampai lolos |
| shaderStorageTexelBufferArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderSubgroupExtendedTypes | tidak didukung sampai lolos |
| shaderUniformBufferArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderUniformTexelBufferArrayDynamicIndexing | tidak didukung sampai lolos |
| shaderUniformTexelBufferArrayNonUniformIndexing | tidak didukung sampai lolos |
| storageBuffer8BitAccess | tidak didukung sampai lolos |
| storagePushConstant8 | tidak didukung sampai lolos |
| subgroupBroadcastDynamicId | tidak didukung sampai lolos |
| timelineSemaphore | tidak didukung sampai lolos |
| uniformAndStorageBuffer8BitAccess | tidak didukung sampai lolos |
| uniformBufferStandardLayout | tidak didukung sampai lolos |
| vulkanMemoryModel | tidak didukung sampai lolos |
| vulkanMemoryModelAvailabilityVisibilityChains | tidak didukung sampai lolos |
| vulkanMemoryModelDeviceScope | tidak didukung sampai lolos |
| computeFullSubgroups | tidak didukung sampai lolos |
| descriptorBindingInlineUniformBlockUpdateAfterBind | tidak didukung sampai lolos |
| dynamicRendering | tidak didukung sampai lolos |
| inlineUniformBlock | tidak didukung sampai lolos |
| maintenance4 | tidak didukung sampai lolos |
| pipelineCreationCacheControl | tidak didukung sampai lolos |
| privateData | tidak didukung sampai lolos |
| robustImageAccess | tidak didukung sampai lolos |
| shaderDemoteToHelperInvocation | tidak didukung sampai lolos |
| shaderIntegerDotProduct | tidak didukung sampai lolos |
| shaderTerminateInvocation | tidak didukung sampai lolos |
| shaderZeroInitializeWorkgroupMemory | tidak didukung sampai lolos |
| subgroupSizeControl | tidak didukung sampai lolos |
| synchronization2 | tidak didukung sampai lolos |
| textureCompressionASTC_HDR | tidak didukung sampai lolos |
Batas yang berbeda (44)
| Batas | Bawaan | Kustom |
|---|---|---|
| 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 | 17146314752 |
| maxBoundDescriptorSets | 4 | 7 |
| maxPerStageDescriptorUniformBuffers | 36 | 223 |
| maxPerStageDescriptorStorageBuffers | 35 | 64 |
| maxPerStageDescriptorStorageImages | 21 | 32 |
| maxPerStageResources | 365 | 712 |
| 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 |
| maxFragmentDualSrcAttachments | 0 | 1 |
| maxFragmentCombinedOutputResources | 64 | 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 | 16 |
| subPixelInterpolationOffsetBits | 4 | 8 |
| framebufferNoAttachmentsSampleCounts | 29 | 5 |
| timestampPeriod | 76.9231 | 38.4615 |
| 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 |
Format yang hanya didukung satu driver (29 bertambah, 6 berkurang)
- 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
- B5G5R5A1_UNORM_PACK16
- B8G8R8G8_422_UNORM
- B8G8R8_SNORM
- G8B8G8R8_422_UNORM
- R4G4_UNORM_PACK8
- R5G5B5A1_UNORM_PACK16