FauxVkDB
Português

Qualcomm_849_adpkg vs v37_Turnip_Gen8_V37_patch

Na Adreno (TM) 825 (Nothing Phone (3), OnePlus Nord 6, Oppo K13 Turbo Pro 5G, Poco F7, Poco F7, REDMI Turbo 4 Pro). O primeiro driver citado é comparado com o segundo, que é a referência.

Sistemav37_Turnip_Gen8_V37_patchMesa 26.3.0-devel (git-aa35464ee5)
vs
CustomizadoQualcomm_849_adpkgDriver Build: a2a1a29a71, Icb4aa5a425, 1758706229
Versão do sistema gráfico (Vulkan)1.4.363 a 1.4.295
Recursos opcionais (extensões)180 a 174+23 -29
Recursos que passam na verificação (validados)49 a 441 passou só no Qualcomm_849_adpkg 6 passaram só no v37_Turnip_Gen8_V37_patch
Cenas do teste de velocidade (benchmark)1 mais rápida 1 mais lenta 1 empate2% mais lento 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
  • oit_linked_lists3% mais rápido
  • pipeline_barriers_2160p9% mais lento
  • subpasses_2160p0% mais lento

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 2 cenas (pipeline_barriers: 1698 de 2304 células, pipeline_barriers_2160p: 1038 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: compute_nbody (do sistema 0 de 3, customizado 3 de 3).

Detalhes do v37_Turnip_Gen8_V37_patch Detalhes do Qualcomm_849_adpkg

Verificações de recursos que diferem (24)

Recursov37_Turnip_Gen8_V37_patchQualcomm_849_adpkgMudança
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
extendedDynamicState3PolygonMode
VK_EXT_extended_dynamic_state3
passousem suporteperdidos
core.compute_udiv
core
falhoupassouganhos
extendedDynamicState3AlphaToCoverageEnable
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3AlphaToOneEnable
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3ConservativeRasterizationMode
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3DepthClipEnable
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3DepthClipNegativeOneToOne
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3ExtraPrimitiveOverestimationSize
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3LineRasterizationMode
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3ProvokingVertexMode
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3RasterizationSamples
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3RasterizationStream
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3SampleLocationsEnable
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3SampleMask
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
extendedDynamicState3TessellationDomainOrigin
VK_EXT_extended_dynamic_state3
não testadosem suportemudou
shaderResourceMinLod
VkPhysicalDeviceFeatures
não testadosem suportemudou
shaderResourceResidency
VkPhysicalDeviceFeatures
não testadosem suportemudou
sparseResidency16Samples
VkPhysicalDeviceFeatures
sem suportenão testadomudou
sparseResidencyAliased
VkPhysicalDeviceFeatures
não testadosem suportemudou

Cenas do teste de velocidade (benchmark)

Cenav37_Turnip_Gen8_V37_patch msQualcomm_849_adpkg msDiferençaIníciosClock da GPU, MHzImagem vs driver do sistema
compute_nbodyn/a10.13 típico 10.05só um lado0 de 3 vs 3 de 3? vs ? clock desconhecidonão verificado
hdr_2160pn/a11.04só um lado3 de 3 vs 3 de 3? vs ? clock desconhecidosem diferença grande 0.0 sem diferença pequena pior 0.0 64x36
oit_linked_lists17.68 típico 17.4417.12 típico 16.763% 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
pipeline_barriers2.98 típico 2.393.07 típico 2.46leve demais, veja pipeline_barriers_2160p3 de 3 vs 3 de 3? vs ? clock desconhecidosem diferença grande 9.3 difere em 1698 áreas pequenas pior 47.7 64x36
pipeline_barriers_2160p8.35 típico 8.289.15 típico 9.179% mais lento3 de 3 vs 3 de 3? vs ? clock desconhecidosem diferença grande 6.4 difere em 1038 áreas pequenas pior 51.7 64x36
subpasses3.90 típico 3.643.97 típico 3.55leve demais, veja subpasses_2160p3 de 3 vs 3 de 3? vs ? clock desconhecidonão verificado
subpasses_2160p14.85 típico 14.8514.89 típico 14.830% mais lento3 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 Qualcomm_849_adpkg em relação a v37_Turnip_Gen8_V37_patch. “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 Qualcomm_849_adpkg (23)
  • VK_ANDROID_external_format_resolve
  • VK_EXT_astc_decode_mode
  • VK_EXT_blend_operation_advanced
  • VK_EXT_depth_range_unrestricted
  • VK_EXT_device_fault
  • VK_EXT_external_memory_acquire_unmodified
  • VK_EXT_fragment_density_map2
  • VK_EXT_image_compression_control_swapchain
  • VK_EXT_pipeline_protected_access
  • VK_EXT_pipeline_robustness
  • VK_EXT_subpass_merge_feedback
  • VK_KHR_pipeline_binary
  • VK_KHR_ray_tracing_position_fetch
  • VK_KHR_shader_maximal_reconvergence
  • VK_KHR_shared_presentable_image
  • VK_NV_optical_flow
  • VK_QCOM_filter_cubic_weights
  • VK_QCOM_image_processing2
  • VK_QCOM_render_pass_store_ops
  • VK_QCOM_render_pass_transform
  • VK_QCOM_rotated_copy_commands
  • VK_QCOM_tile_properties
  • VK_QCOM_ycbcr_degamma
Extensões só no v37_Turnip_Gen8_V37_patch (29)
  • VK_AMD_buffer_marker
  • VK_ARM_rasterization_order_attachment_access
  • VK_EXT_attachment_feedback_loop_dynamic_state
  • VK_EXT_attachment_feedback_loop_layout
  • VK_EXT_custom_resolve
  • VK_EXT_debug_marker
  • VK_EXT_depth_clamp_control
  • VK_EXT_dynamic_rendering_unused_attachments
  • VK_EXT_extended_dynamic_state3
  • VK_EXT_external_memory_dma_buf
  • VK_EXT_fragment_density_map_offset
  • VK_EXT_image_drm_format_modifier
  • VK_EXT_legacy_dithering
  • VK_EXT_legacy_vertex_attributes
  • VK_EXT_memory_budget
  • VK_EXT_mesh_shader
  • VK_EXT_nested_command_buffer
  • VK_EXT_primitive_restart_index
  • VK_EXT_shader_replicated_composites
  • VK_EXT_shader_uniform_buffer_unsized_array
  • VK_EXT_zero_initialize_device_memory
  • VK_GOOGLE_decorate_string
  • VK_GOOGLE_hlsl_functionality1
  • VK_KHR_maintenance7
  • VK_KHR_shader_relaxed_extended_instruction
  • VK_NV_compute_shader_derivatives
  • VK_VALVE_buffer_device_address_allocation_alignment
  • VK_VALVE_fragment_density_map_layered
  • VK_VALVE_mutable_descriptor_type
Recursos básicos que diferem (5)
multiviewGeometryShader Vulkan 1.1passou a sem suporte
protectedMemory Vulkan 1.1sem suporte a passou
shaderInputAttachmentArrayDynamicIndexing Vulkan 1.2sem suporte a passou
shaderInputAttachmentArrayNonUniformIndexing Vulkan 1.2sem suporte a passou
pipelineProtectedAccess Vulkan 1.4sem suporte a passou
Limites que diferem (20)
Limitev37_Turnip_Gen8_V37_patchQualcomm_849_adpkg
maxTexelBufferElements536870911134217728
bufferImageGranularity641
sparseAddressSpaceSize2748779069444294967295
maxPerStageResources1677721650331648
maxDescriptorSetUniformBuffersDynamic1632
maxDescriptorSetStorageBuffersDynamic816
maxVertexInputAttributeOffset40954096
maxGeometryInputComponents64128
maxGeometryOutputVertices2561024
maxGeometryTotalOutputComponents1024131072
maxFragmentInputComponents128112
minMemoryMapAlignment409664
minUniformBufferOffsetAlignment64256
minStorageBufferOffsetAlignment464
maxFramebufferLayers10242048
discreteQueuePriorities24
pointSizeRange1, 40921, 4095
optimalBufferCopyOffsetAlignment12864
optimalBufferCopyRowPitchAlignment12864
nonCoherentAtomSize641
Formatos suportados por só um driver (3 ganhos, 5 perdidos)

Só no Qualcomm_849_adpkg:

  • G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
  • G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
  • G16_B16R16_2PLANE_420_UNORM

Só no v37_Turnip_Gen8_V37_patch:

  • B8G8R8A8_SSCALED
  • B8G8R8A8_USCALED
  • B8G8R8_SINT
  • B8G8R8_SNORM
  • B8G8R8_UINT