FauxVkDB
Português
Início / Mali-G52 / Comparar

PanVK-Droid.0.3.5 vs mali-panvk-27.0.0-devel-r8

Na 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). O primeiro driver citado é comparado com o segundo, que é a referência.

Sistemamali-panvk-27.0.0-devel-r8Mesa 27.0.0-devel (git-d896b0a9c1)
vs
CustomizadoPanVK-Droid.0.3.5v1.r49p1-03bet0.19498e0ae1d5dac223383c39a2e58f04
Versão do sistema gráfico (Vulkan)1.3.363 a 1.3.278
Recursos opcionais (extensões)160 a 131+17 -46
Recursos que passam na verificação (validados)45 a 343 passaram só no PanVK-Droid.0.3.5 14 passaram só no mali-panvk-27.0.0-devel-r8
Cenas do teste de velocidade (benchmark)3 mais rápidas 1 mais lenta14% mais rápido no geral (média geométrica)
Jogos que cada driver poderia rodar (uma estimativa a partir da lista de recursos): verde provável, amarelo talvez, laranja limitado, vermelho não
SistemaDX92002+DX102006+DX112009+DX122015+Switch
CustomizadoDX92002+DX102006+DX112009+DX122015+Switch
  • compute_nbody28% mais rápido
  • hdr_2160p15% mais lento
  • pipeline_barriers33% mais rápido
  • subpasses18% mais rápido

Driver customizado contra o do sistema, por cena. Barras à direita são mais rápidas, à esquerda mais lentas.

Pequenas áreas da imagem diferem do driver do sistema em 1 cena (pipeline_barriers: 1326 de 2304 células). A imagem bate no geral, então isto é uma falha local de renderização, não uma cena diferente.

Nem sempre iniciou: hdr_2160p (do sistema 0 de 3, customizado 3 de 3).

Detalhes do mali-panvk-27.0.0-devel-r8 Detalhes do PanVK-Droid.0.3.5

Verificações de recursos que diferem (37)

Recursomali-panvk-27.0.0-devel-r8PanVK-Droid.0.3.5Mudança
colorWriteEnable
VK_EXT_color_write_enable
passousem suporteperdidos
depthClipControl
VK_EXT_depth_clip_control
passousem suporteperdidos
extendedDynamicState2LogicOp
VK_EXT_extended_dynamic_state2
passousem suporteperdidos
extendedDynamicState3ColorBlendEnable
VK_EXT_extended_dynamic_state3
passousem suporteperdidos
extendedDynamicState3ColorBlendEquation
VK_EXT_extended_dynamic_state3
passousem suporteperdidos
extendedDynamicState3ColorWriteMask
VK_EXT_extended_dynamic_state3
passousem suporteperdidos
extendedDynamicState3DepthClampEnable
VK_EXT_extended_dynamic_state3
passousem suporteperdidos
extendedDynamicState3LogicOpEnable
VK_EXT_extended_dynamic_state3
passousem suporteperdidos
robustBufferAccess2
VK_EXT_robustness2
passousem suporteperdidos
multiDrawIndirect
VkPhysicalDeviceFeatures
passousem suporteperdidos
multiViewport
VkPhysicalDeviceFeatures
passousem suporteperdidos
textureCompressionBC
VkPhysicalDeviceFeatures
passousem suporteperdidos
push.max_uniform_buffers
core
passousem suporteperdidos
stress.multi_draw_indirect_large
core
passousem suporteperdidos
transformFeedback
VK_EXT_transform_feedback
falhoupassouganhos
shaderBufferInt64Atomics
VK_KHR_shader_atomic_int64
sem suportepassouganhos
limit.uniform_buffer_range
core
falhoupassouganhos
customBorderColorWithoutFormat
VK_EXT_custom_border_color
sem suportenão testadomudou
depthBiasControl
VK_EXT_depth_bias_control
não testadosem suportemudou
depthBiasExact
VK_EXT_depth_bias_control
não testadosem suportemudou
extendedDynamicState2PatchControlPoints
VK_EXT_extended_dynamic_state2
sem suportenão testadomudou
extendedDynamicState3AlphaToCoverageEnable
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3DepthClipEnable
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3ProvokingVertexMode
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3RasterizationSamples
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3TessellationDomainOrigin
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
nullDescriptor
VK_EXT_robustness2
não testadosem suportemudou
geometryStreams
VK_EXT_transform_feedback
não testadosem suportemudou
shaderSharedInt64Atomics
VK_KHR_shader_atomic_int64
sem suportenão testadomudou
depthClamp
VkPhysicalDeviceFeatures
não testadosem suportemudou
fillModeNonSolid
VkPhysicalDeviceFeatures
não testadosem suportemudou
shaderClipDistance
VkPhysicalDeviceFeatures
não testadosem suportemudou
shaderCullDistance
VkPhysicalDeviceFeatures
não testadosem suportemudou
vertexPipelineStoresAndAtomics
VkPhysicalDeviceFeatures
não testadosem suportemudou
compat.helper_loop_terminator
core
falhounão testadomudou
compat.nested_map
core
falhounão testadomudou
push.max_combined_image_samplers
core
falhousem suportemudou

Cenas do teste de velocidade (benchmark)

Os dois drivers não foram medidos no mesmo conjunto de modelos de aparelho. Frametimes de aparelhos diferentes não servem para comparar drivers, então leia esses números com isso em mente.

Cenamali-panvk-27.0.0-devel-r8 msPanVK-Droid.0.3.5 msDiferençaIníciosClock da GPU, MHzImagem vs driver do sistema
compute_nbody103.56 típico 103.1080.79 típico 81.5028% mais rápido3 de 3 vs 3 de 3? vs ? clock desconhecidosem diferença grande 0.0 sem diferença pequena pior 0.0 64x36
hdr_2160p148.09 típico 147.38173.86 típico 173.1315% mais lento0 de 3 vs 3 de 3? vs ? clock desconhecidonão verificado
oit_linked_lists80.24n/asó um lado3 de 3 vs 3 de 3? vs ? clock desconhecidosem diferença grande 0.0 sem diferença pequena pior 0.0 64x36
pipeline_barriers88.24 típico 90.5466.50 típico 67.6633% mais rápido3 de 3 vs 3 de 3? vs ? clock desconhecidosem diferença grande 9.3 difere em 1326 áreas pequenas pior 77.3 64x36
subpasses151.35 típico 152.48127.93 típico 128.6918% mais rápido3 de 3 vs 3 de 3? vs ? clock desconhecidonão verificado

Tempo para desenhar um frame, por cena: o frametime médio da melhor rodada da cena, que indica quantos frames o driver entregou; menor é mais rápido. “Típico” ao lado é o frame mediano, que pode ficar bem abaixo da média quando os frames de um driver chegam em duas velocidades. Um par de relatórios feitos antes de as médias por rodada serem registradas é comparado pela mediana. Uma cena cujas rodadas divergem em mais de 15% fica de fora. Uma cena marcada “capada” foi mantida nesse frametime médio pelo driver ou pela fila de exibição, junto com pelo menos outra cena da mesma execução; o tempo dela diz como os frames foram espaçados, não quão rápido o driver renderizou, então não é comparada. Uma cena marcada “leve demais” levou menos de 8 ms no tamanho padrão (1920 por 1080) nos dois drivers, onde a fila de frames da tela espaça os frames mais do que o chip; a execução mais pesada é a comparada: a linha terminada em _2160p é a cena desenhada em 3840 por 2160, e compute_nbody_2x é essa cena com o dobro de partículas. “Mais rápido” e “mais lento” descrevem PanVK-Droid.0.3.5 em relação a mali-panvk-27.0.0-devel-r8. “Imagem vs driver do sistema” compara um frame fixo por cena como uma grade de cores grosseira (0 é idêntico, acima de 40 é uma imagem diferente); ela detecta uma cena que não foi desenhada. Quando os dois relatórios trazem a grade mais fina de 64x36, o segundo número é quantas das 2.304 células diferem em mais de 4 de 255, e “pior” é a maior célula individual; é isso que detecta um pequeno erro de renderização em uma imagem que, no mais, bate. Uma linha marcada 16x9 vem de um relatório feito antes de existir a grade mais fina. “Inícios” é quantos inícios de processo de uma cena chegaram a uma rodada medida. Um clock da GPU marcado “não comparável” diferiu em mais de 5% do máximo do aparelho entre as duas medições.

Diferenças técnicas (Vulkan)

Extensões só no PanVK-Droid.0.3.5 (17)
  • VK_ANDROID_external_format_resolve
  • VK_ARM_rasterization_order_attachment_access
  • VK_EXT_device_fault
  • VK_EXT_frame_boundary
  • VK_EXT_image_compression_control_swapchain
  • VK_EXT_pipeline_protected_access
  • VK_EXT_primitives_generated_query
  • VK_EXT_rasterization_order_attachment_access
  • VK_EXT_rgba10x6_formats
  • VK_EXT_shader_image_atomic_int64
  • VK_EXT_shader_tile_image
  • VK_EXT_subpass_merge_feedback
  • VK_KHR_shader_atomic_int64
  • VK_KHR_shader_maximal_reconvergence
  • VK_KHR_shader_quad_control
  • VK_KHR_shader_subgroup_uniform_control_flow
  • VK_KHR_shared_presentable_image
Extensões só no mali-panvk-27.0.0-devel-r8 (46)
  • VK_ARM_scheduling_controls
  • VK_EXT_attachment_feedback_loop_dynamic_state
  • VK_EXT_attachment_feedback_loop_layout
  • VK_EXT_buffer_device_address
  • VK_EXT_color_write_enable
  • 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_graphics_pipeline_library
  • VK_EXT_hdr_metadata
  • VK_EXT_host_image_copy
  • VK_EXT_image_view_min_lod
  • VK_EXT_map_memory_placed
  • VK_EXT_memory_budget
  • VK_EXT_non_seamless_cube_map
  • VK_EXT_physical_device_drm
  • VK_EXT_robustness2
  • VK_EXT_shader_atomic_float
  • VK_EXT_shader_module_identifier
  • VK_EXT_shader_replicated_composites
  • VK_EXT_shader_stencil_export
  • VK_EXT_shader_uniform_buffer_unsized_array
  • VK_EXT_vertex_attribute_divisor
  • VK_EXT_zero_initialize_device_memory
  • VK_GOOGLE_hlsl_functionality1
  • VK_INTEL_shader_integer_functions2
  • VK_KHR_depth_clamp_zero_one
  • VK_KHR_internally_synchronized_queues
  • VK_KHR_maintenance10
  • VK_KHR_maintenance11
  • VK_KHR_maintenance7
  • VK_KHR_maintenance8
  • VK_KHR_maintenance9
  • VK_KHR_pipeline_binary
  • VK_KHR_pipeline_executable_properties
  • VK_KHR_pipeline_library
  • VK_KHR_push_descriptor
  • VK_KHR_robustness2
  • VK_KHR_shader_clock
  • VK_KHR_shader_constant_data
  • VK_KHR_shader_fma
  • VK_KHR_shader_relaxed_extended_instruction
  • VK_KHR_unified_image_layouts
  • VK_KHR_workgroup_memory_explicit_layout
Recursos básicos que diferem (16)
descriptorBindingVariableDescriptorCount Vulkan 1.2passou a sem suporte
runtimeDescriptorArray Vulkan 1.2passou a sem suporte
shaderBufferInt64Atomics Vulkan 1.2sem suporte a passou
shaderFloat16 Vulkan 1.2sem suporte a passou
shaderInputAttachmentArrayDynamicIndexing Vulkan 1.2passou a sem suporte
shaderInputAttachmentArrayNonUniformIndexing Vulkan 1.2passou a sem suporte
shaderOutputViewportIndex Vulkan 1.2sem suporte a passou
shaderSampledImageArrayNonUniformIndexing Vulkan 1.2passou a sem suporte
shaderSharedInt64Atomics Vulkan 1.2sem suporte a passou
shaderStorageBufferArrayNonUniformIndexing Vulkan 1.2passou a sem suporte
shaderStorageImageArrayNonUniformIndexing Vulkan 1.2passou a sem suporte
shaderStorageTexelBufferArrayDynamicIndexing Vulkan 1.2passou a sem suporte
shaderStorageTexelBufferArrayNonUniformIndexing Vulkan 1.2passou a sem suporte
shaderUniformBufferArrayNonUniformIndexing Vulkan 1.2passou a sem suporte
shaderUniformTexelBufferArrayDynamicIndexing Vulkan 1.2passou a sem suporte
shaderUniformTexelBufferArrayNonUniformIndexing Vulkan 1.2passou a sem suporte
Limites que diferem (52)
Limitemali-panvk-27.0.0-devel-r8PanVK-Droid.0.3.5
maxImageDimension1D6553616384
maxImageDimension2D6553616384
maxImageDimension3D6553616384
maxImageDimensionCube6553616384
maxImageArrayLayers655364096
maxTexelBufferElements134217728268435456
maxUniformBufferRange104857665536
maxStorageBufferRange42949672952147483648
maxMemoryAllocationCount429496729516384
bufferImageGranularity641
sparseAddressSpaceSize300647710720
maxPerStageDescriptorUniformBuffers223241
maxPerStageDescriptorStorageBuffers6435
maxPerStageDescriptorStorageImages3221
maxPerStageResources712570
maxDescriptorSetSamplers65535768
maxDescriptorSetUniformBuffers2231446
maxDescriptorSetUniformBuffersDynamic1632
maxDescriptorSetStorageBuffers4096210
maxDescriptorSetStorageBuffersDynamic832
maxDescriptorSetSampledImages655351536
maxDescriptorSetStorageImages256126
maxVertexInputAttributes1632
maxVertexInputBindings1632
maxVertexInputAttributeOffset42949672952047
maxVertexInputBindingStride655352048
maxTessellationControlPerVertexInputComponents64128
maxTessellationControlPerVertexOutputComponents64128
maxTessellationControlTotalOutputComponents20484096
maxTessellationEvaluationInputComponents64128
maxTessellationEvaluationOutputComponents64128
maxGeometryInputComponents64128
maxGeometryTotalOutputComponents10242048
maxFragmentCombinedOutputResources436064
maxComputeWorkGroupCount65535, 65535, 655354294967295, 4294967295, 4294967295
maxDrawIndirectCount42949672951
maxSamplerLodBias127.996126
maxViewports161
minMemoryMapAlignment409664
minTexelBufferOffsetAlignment1664
minStorageBufferOffsetAlignment1664
maxInterpolationOffset0.50.4375
subPixelInterpolationOffsetBits84
framebufferNoAttachmentsSampleCounts529
timestampComputeAndGraphics01
timestampPeriod076.9231
maxClipDistances80
maxCullDistances80
maxCombinedClipAndCullDistances80
pointSizeRange0.125, 4095.941, 1024
lineWidthRange0, 7.992191, 4095.94
lineWidthGranularity0.00781250.0625
Formatos suportados por só um driver (10 ganhos, 27 perdidos)

Só no PanVK-Droid.0.3.5:

  • B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
  • B5G5R5A1_UNORM_PACK16
  • B8G8R8G8_422_UNORM
  • B8G8R8_SNORM
  • G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
  • G8B8G8R8_422_UNORM
  • R4G4_UNORM_PACK8
  • R5G5B5A1_UNORM_PACK16
  • R64_SINT
  • R64_UINT

Só no mali-panvk-27.0.0-devel-r8:

  • 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
  • BC4_SNORM_BLOCK
  • BC4_UNORM_BLOCK
  • BC5_SNORM_BLOCK
  • BC5_UNORM_BLOCK
  • BC6H_SFLOAT_BLOCK
  • BC6H_UFLOAT_BLOCK
  • BC7_SRGB_BLOCK
  • BC7_UNORM_BLOCK
  • G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16
  • G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16
  • G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16
  • G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16
  • G16_B16R16_2PLANE_420_UNORM
  • G16_B16R16_2PLANE_422_UNORM
  • G16_B16R16_2PLANE_444_UNORM
  • G8_B8R8_2PLANE_444_UNORM
  • R10X6G10X6_UNORM_2PACK16
  • R10X6_UNORM_PACK16