FauxVkDB
简体中文
首页 / Mali-G52 MC2 / 对比

Panvk-Mali-G57-2.0-rc1 对比 Mali-G52 MC2

在 Mali-G52 MC2 上 (HONOR X5c, Infinix HOT 60i, Oppo A18, realme RMX3710, Redmi 12C, Redmi 14C, Redmi 15C, TECNO POVA 3, TECNO SPARK 20). 先列出的驱动与后一个对比,后一个是基准。

原厂Mali-G52 MC2v1.r32p1-01eac0.52688e0652bc37eab85ce86c674ab12f
对比
第三方Panvk-Mali-G57-2.0-rc1v1.r49p1-03bet0.19498e0ae1d5dac223383c39a2e58f04
图形系统版本(Vulkan)1.1.177 → 1.3.278
可选功能(扩展)66 → 131+65 -0
通过检测的功能(已验证)28 → 346 个仅在 Panvk-Mali-G57-2.0-rc1 上通过 0 个仅在 Mali-G52 MC2 上通过
跑分测试场景(基准测试)没有共同场景
各驱动能跑的游戏(根据功能列表估算):绿色基本能跑,黄色可能能跑,橙色问题较多,红色跑不了
原厂DX92002+DX102006+DX112009+DX122015+Switch
第三方DX92002+DX102006+DX112009+DX122015+Switch

Mali-G52 MC2 详情 Panvk-Mali-G57-2.0-rc1 详情

结果不同的功能检测(18)

功能原厂第三方变化
borderColorSwizzle
VK_EXT_border_color_swizzle
不支持通过新增
extendedDynamicState
VK_EXT_extended_dynamic_state
不支持通过新增
extendedDynamicState2
VK_EXT_extended_dynamic_state2
不支持通过新增
vertexInputDynamicState
VK_EXT_vertex_input_dynamic_state
不支持通过新增
shaderBufferInt64Atomics
VK_KHR_shader_atomic_int64
不支持通过新增
timelineSemaphore
VK_KHR_timeline_semaphore
失败通过新增
borderColorSwizzleFromImage
VK_EXT_border_color_swizzle
不支持未检测有变化
extendedDynamicState2PatchControlPoints
VK_EXT_extended_dynamic_state2
不支持未检测有变化
extendedDynamicState3LineRasterizationMode
VK_EXT_extended_dynamic_state3
不支持未检测有变化
extendedDynamicState3ProvokingVertexMode
VK_EXT_extended_dynamic_state3
不支持未检测有变化
extendedDynamicState3SampleMask
VK_EXT_extended_dynamic_state3
不支持未检测有变化
extendedDynamicState3TessellationDomainOrigin
VK_EXT_extended_dynamic_state3
不支持未检测有变化
descriptorBindingInlineUniformBlockUpdateAfterBind
VK_EXT_inline_uniform_block
不支持未检测有变化
shaderSharedInt64Atomics
VK_KHR_shader_atomic_int64
不支持未检测有变化
dualSrcBlend
VkPhysicalDeviceFeatures
不支持未检测有变化
logicOp
VkPhysicalDeviceFeatures
不支持未检测有变化
shaderInt64
VkPhysicalDeviceFeatures
不支持未检测有变化
wideLines
VkPhysicalDeviceFeatures
不支持未检测有变化

跑分测试场景(基准测试)

两个驱动不是在同一批设备型号上测的。不同设备的帧时间不能用来比较驱动,看这些数据时请记住这一点。

场景原厂 ms第三方 ms差异启动次数GPU 频率,MHz画面对比原厂
compute_nbodyn/a69.81 典型值 70.34仅一侧有? 对比 3 / 3? 对比 ? 频率未知未检测
hdr_2160pn/a148.49 典型值 148.40仅一侧有? 对比 3 / 3? 对比 ? 频率未知未检测
oit_linked_listsn/a59.15 典型值 58.42仅一侧有? 对比 3 / 3? 对比 ? 频率未知未检测
pipeline_barriersn/a56.78 典型值 57.52仅一侧有? 对比 3 / 3? 对比 ? 频率未知未检测
subpassesn/a110.67 典型值 111.14仅一侧有? 对比 3 / 3? 对比 ? 频率未知未检测

绘制一帧所需的时间,按场景统计:取该场景最佳一轮的平均帧时间,也就是驱动交付了多少帧;越低越快。旁边的“典型值”是中位帧,当驱动的帧分成两种速度时,它可能比平均值低很多。在记录每轮平均值之前生成的一对报告,改用中位数对比。各轮之间相差超过 15% 的场景会被排除。标为“被锁帧”的场景,是被驱动或显示队列锁在了那个平均帧时间上,并且同一次运行中至少还有另一个场景也是如此;它的耗时反映的是帧的间隔,而不是驱动渲染得有多快,所以不参与对比。标为“太轻”的场景,在标准尺寸(1920×1080)下两个驱动都不到 8 ms,此时屏幕的帧队列对帧间隔的影响比芯片更大;这时对比的是它更重的版本:以 _2160p 结尾的行是以 3840×2160 绘制的该场景,compute_nbody_2x 是粒子数翻倍的该场景。“更快”和“更慢”描述的是 Panvk-Mali-G57-2.0-rc1 相对 Mali-G52 MC2。“画面对比原厂”把每个场景的一个固定帧按粗略的色块网格对比(0 为完全相同,超过 40 表示画面不同),用来找出没有被画出来的场景。如果两份报告都带有更细的 64×36 网格,第二个数字是其 2,304 个格子中有多少个差异超过 255 里的 4,“最差”是单个格子的最大差异;这能找出其余部分都一致的画面里的小渲染错误。标为 16x9 的行来自细网格出现之前生成的报告。“启动次数”是一个场景的进程启动中,有多少次进入了被测量的一轮。标为“不可比”的 GPU 频率,表示两次计时之间的差异超过设备最大频率的 5%。

技术差异(Vulkan)

仅 Panvk-Mali-G57-2.0-rc1 有的扩展(65)
  • VK_ANDROID_external_format_resolve
  • VK_ARM_rasterization_order_attachment_access
  • VK_ARM_shader_core_builtins
  • VK_ARM_shader_core_properties
  • VK_EXT_border_color_swizzle
  • VK_EXT_debug_marker
  • VK_EXT_device_address_binding_report
  • VK_EXT_device_fault
  • 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_frame_boundary
  • VK_EXT_global_priority_query
  • VK_EXT_image_2d_view_of_3d
  • VK_EXT_image_compression_control
  • VK_EXT_image_compression_control_swapchain
  • VK_EXT_image_sliced_view_of_3d
  • 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_rasterization_order_attachment_access
  • VK_EXT_rgba10x6_formats
  • VK_EXT_shader_demote_to_helper_invocation
  • VK_EXT_shader_image_atomic_int64
  • VK_EXT_shader_tile_image
  • VK_EXT_subpass_merge_feedback
  • VK_EXT_texel_buffer_alignment
  • VK_EXT_tooling_info
  • VK_EXT_vertex_input_dynamic_state
  • VK_GOOGLE_decorate_string
  • 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_line_rasterization
  • VK_KHR_load_store_op_none
  • VK_KHR_maintenance4
  • VK_KHR_maintenance5
  • VK_KHR_maintenance6
  • VK_KHR_map_memory2
  • VK_KHR_shader_atomic_int64
  • VK_KHR_shader_expect_assume
  • VK_KHR_shader_float_controls2
  • VK_KHR_shader_integer_dot_product
  • VK_KHR_shader_maximal_reconvergence
  • VK_KHR_shader_quad_control
  • VK_KHR_shader_subgroup_rotate
  • VK_KHR_shader_subgroup_uniform_control_flow
  • VK_KHR_shader_terminate_invocation
  • VK_KHR_synchronization2
  • VK_KHR_vertex_attribute_divisor
  • VK_KHR_zero_initialize_workgroup_memory
仅 Mali-G52 MC2 有的扩展(0)
  • 无
不同的核心功能(45)
multiview Vulkan 1.1不支持 → 通过
samplerYcbcrConversion Vulkan 1.1不支持 → 通过
shaderDrawParameters Vulkan 1.1不支持 → 通过
storageBuffer16BitAccess Vulkan 1.1不支持 → 通过
storageInputOutput16 Vulkan 1.1不支持 → 通过
storagePushConstant16 Vulkan 1.1不支持 → 通过
uniformAndStorageBuffer16BitAccess Vulkan 1.1不支持 → 通过
variablePointers Vulkan 1.1不支持 → 通过
variablePointersStorageBuffer Vulkan 1.1不支持 → 通过
bufferDeviceAddress Vulkan 1.2不支持 → 通过
hostQueryReset Vulkan 1.2不支持 → 通过
imagelessFramebuffer Vulkan 1.2不支持 → 通过
samplerMirrorClampToEdge Vulkan 1.2不支持 → 通过
scalarBlockLayout Vulkan 1.2不支持 → 通过
separateDepthStencilLayouts Vulkan 1.2不支持 → 通过
shaderBufferInt64Atomics Vulkan 1.2不支持 → 通过
shaderFloat16 Vulkan 1.2不支持 → 通过
shaderInt8 Vulkan 1.2不支持 → 通过
shaderOutputViewportIndex Vulkan 1.2不支持 → 通过
shaderSharedInt64Atomics Vulkan 1.2不支持 → 通过
shaderSubgroupExtendedTypes Vulkan 1.2不支持 → 通过
storageBuffer8BitAccess Vulkan 1.2不支持 → 通过
storagePushConstant8 Vulkan 1.2不支持 → 通过
subgroupBroadcastDynamicId Vulkan 1.2不支持 → 通过
timelineSemaphore Vulkan 1.2不支持 → 通过
uniformAndStorageBuffer8BitAccess Vulkan 1.2不支持 → 通过
uniformBufferStandardLayout Vulkan 1.2不支持 → 通过
vulkanMemoryModel Vulkan 1.2不支持 → 通过
vulkanMemoryModelAvailabilityVisibilityChains Vulkan 1.2不支持 → 通过
vulkanMemoryModelDeviceScope Vulkan 1.2不支持 → 通过
computeFullSubgroups Vulkan 1.3不支持 → 通过
descriptorBindingInlineUniformBlockUpdateAfterBind Vulkan 1.3不支持 → 通过
dynamicRendering Vulkan 1.3不支持 → 通过
inlineUniformBlock Vulkan 1.3不支持 → 通过
maintenance4 Vulkan 1.3不支持 → 通过
pipelineCreationCacheControl Vulkan 1.3不支持 → 通过
privateData Vulkan 1.3不支持 → 通过
robustImageAccess Vulkan 1.3不支持 → 通过
shaderDemoteToHelperInvocation Vulkan 1.3不支持 → 通过
shaderIntegerDotProduct Vulkan 1.3不支持 → 通过
shaderTerminateInvocation Vulkan 1.3不支持 → 通过
shaderZeroInitializeWorkgroupMemory Vulkan 1.3不支持 → 通过
subgroupSizeControl Vulkan 1.3不支持 → 通过
synchronization2 Vulkan 1.3不支持 → 通过
textureCompressionASTC_HDR Vulkan 1.3不支持 → 通过
不同的限制(14)
限制原厂第三方
maxStorageBufferRange2684354562147483648
maxMemoryAllocationCount429496729516384
bufferImageGranularity40961
maxBoundDescriptorSets47
maxPerStageDescriptorUniformBuffers36241
maxPerStageResources365570
maxDescriptorSetUniformBuffers2161446
maxGeometryInputComponents64128
maxGeometryTotalOutputComponents10242048
maxFragmentDualSrcAttachments08
maxSamplerLodBias255126
maxInterpolationOffset0.50.4375
lineWidthRange1, 11, 4095.94
lineWidthGranularity00.0625
只有一个驱动支持的格式(多了 14 种,少了 0 种)

仅 Panvk-Mali-G57-2.0-rc1 有:

  • A1B5G5R5_UNORM_PACK16
  • A2R10G10B10_SSCALED_PACK32
  • A2R10G10B10_USCALED_PACK32
  • A8_UNORM
  • B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
  • B8G8R8A8_SSCALED
  • B8G8R8A8_USCALED
  • B8G8R8_SSCALED
  • B8G8R8_USCALED
  • G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
  • G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
  • G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
  • R64_SINT
  • R64_UINT

仅 Mali-G52 MC2 有:

  • 无