FauxVkDB
Português

WN-Turnip-1.14-p_Axxx vs Qualcomm Technologies Inc. Adreno Vulkan Driver

Na Adreno (TM) 740 (AYN Odin2, AYN Odin2 Portal, AYN Thor, Moorechip Retroid Pocket Nova, motorola edge plus 2023, OnePlus 11 5G, POCO F6 Pro, Samsung Galaxy S23, Samsung Galaxy S23, Samsung Galaxy S23, Samsung Galaxy S23 Ultra, Samsung Galaxy S23 Ultra, Samsung Galaxy S23+, Sony Xperia 1 V, Xiaomi 13 pro). O primeiro driver citado é comparado com o segundo, que é a referência.

SistemaQualcomm Technologies Inc. Adreno Vulkan DriverDriver Build: bad34dcf83, I1064ae0a1f, 1764326394
vs
CustomizadoWN-Turnip-1.14-p_AxxxMesa 26.3.0-devel (git-5123fada43)
Versão do sistema gráfico (Vulkan)1.3.128 a 1.4.362
Recursos opcionais (extensões)115 a 172+67 -10
Recursos que passam na verificação (validados)41 a 499 passaram só no WN-Turnip-1.14-p_Axxx 1 passou só no Qualcomm Technologies Inc. Adreno Vulkan Driver
Cenas do teste de velocidade (benchmark)3 mais rápidas 1 mais lenta1% 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
  • hdr_2160p31% mais lento
  • oit_linked_lists6% mais rápido
  • pipeline_barriers_2160p17% mais rápido
  • subpasses_2160p11% 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 2 cenas (pipeline_barriers: 1768 de 2304 células, pipeline_barriers_2160p: 1502 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 3 de 3, customizado 0 de 3).

Detalhes do Qualcomm Technologies Inc. Adreno Vulkan Driver Detalhes do WN-Turnip-1.14-p_Axxx

Verificações de recursos que diferem (35)

RecursoSistemaCustomizadoMudança
core.compute_udiv
core
passoufalhouperdidos
borderColorSwizzle
VK_EXT_border_color_swizzle
sem suportepassouganhos
extendedDynamicState3ColorBlendEnable
VK_EXT_extended_dynamic_state3
sem suportepassouganhos
extendedDynamicState3ColorBlendEquation
VK_EXT_extended_dynamic_state3
sem suportepassouganhos
extendedDynamicState3ColorWriteMask
VK_EXT_extended_dynamic_state3
sem suportepassouganhos
extendedDynamicState3DepthClampEnable
VK_EXT_extended_dynamic_state3
sem suportepassouganhos
extendedDynamicState3LogicOpEnable
VK_EXT_extended_dynamic_state3
sem suportepassouganhos
extendedDynamicState3PolygonMode
VK_EXT_extended_dynamic_state3
sem suportepassouganhos
inlineUniformBlock
VK_EXT_inline_uniform_block
sem suportepassouganhos
shaderBufferInt64Atomics
VK_KHR_shader_atomic_int64
sem suportepassouganhos
borderColorSwizzleFromImage
VK_EXT_border_color_swizzle
sem suportenão testadomudou
extendedDynamicState3AlphaToCoverageEnable
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3AlphaToOneEnable
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3ConservativeRasterizationMode
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3DepthClipEnable
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3DepthClipNegativeOneToOne
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3ExtraPrimitiveOverestimationSize
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3LineRasterizationMode
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3ProvokingVertexMode
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3RasterizationSamples
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3RasterizationStream
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3SampleLocationsEnable
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3SampleMask
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
extendedDynamicState3TessellationDomainOrigin
VK_EXT_extended_dynamic_state3
sem suportenão testadomudou
descriptorBindingInlineUniformBlockUpdateAfterBind
VK_EXT_inline_uniform_block
sem suportenão testadomudou
shaderInt64
VkPhysicalDeviceFeatures
sem suportenão testadomudou
shaderResourceMinLod
VkPhysicalDeviceFeatures
sem suportenão testadomudou
shaderResourceResidency
VkPhysicalDeviceFeatures
sem suportenão testadomudou
shaderTessellationAndGeometryPointSize
VkPhysicalDeviceFeatures
sem suportenão testadomudou
sparseResidency16Samples
VkPhysicalDeviceFeatures
não testadosem suportemudou
sparseResidency2Samples
VkPhysicalDeviceFeatures
não testadosem suportemudou
sparseResidency4Samples
VkPhysicalDeviceFeatures
não testadosem suportemudou
sparseResidency8Samples
VkPhysicalDeviceFeatures
não testadosem suportemudou
sparseResidencyAliased
VkPhysicalDeviceFeatures
sem suportenão testadomudou
sparseResidencyImage2D
VkPhysicalDeviceFeatures
não testadosem 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.

CenaSistema msCustomizado msDiferençaIníciosClock da GPU, MHzImagem vs driver do sistema
compute_nbodyn/an/asó um lado3 de 3 vs 0 de 3? vs ? clock desconhecidonão verificado
hdr_2160p23.98 típico 23.9234.82 típico 34.6131% mais lento3 de 3 vs 3 de 3? vs 680 clock desconhecidosem diferença grande 0.0 sem diferença pequena pior 0.3 64x36
oit_linked_lists28.15 típico 28.0626.48 típico 26.446% mais rápido3 de 3 vs 3 de 3? vs 680 clock desconhecidosem diferença grande 0.0 sem diferença pequena pior 0.0 64x36
pipeline_barriers3.07 típico 2.812.27 típico 2.26leve demais, veja pipeline_barriers_2160p3 de 3 vs 3 de 3? vs 680 clock desconhecidosem diferença grande 10.9 difere em 1768 áreas pequenas pior 63.0 64x36
pipeline_barriers_2160p8.91 típico 8.897.62 típico 7.6117% mais rápido3 de 3 vs 3 de 3? vs 680 clock desconhecidosem diferença grande 8.1 difere em 1502 áreas pequenas pior 56.7 64x36
subpassesn/a3.80leve demais, veja subpasses_2160p3 de 3 vs 3 de 3? vs 680 clock desconhecidonão verificado
subpasses_2160p15.23 típico 15.2313.75 típico 13.7111% mais rápido3 de 3 vs 3 de 3? vs 680 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 WN-Turnip-1.14-p_Axxx em relação a Qualcomm Technologies Inc. Adreno Vulkan Driver. “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 WN-Turnip-1.14-p_Axxx (67)
  • 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_border_color_swizzle
  • VK_EXT_conditional_rendering
  • VK_EXT_custom_resolve
  • VK_EXT_debug_marker
  • VK_EXT_depth_clamp_control
  • VK_EXT_depth_clamp_zero_one
  • VK_EXT_descriptor_buffer
  • VK_EXT_device_address_binding_report
  • 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_graphics_pipeline_library
  • VK_EXT_host_image_copy
  • VK_EXT_image_2d_view_of_3d
  • VK_EXT_image_compression_control
  • VK_EXT_image_drm_format_modifier
  • VK_EXT_inline_uniform_block
  • VK_EXT_legacy_dithering
  • VK_EXT_legacy_vertex_attributes
  • VK_EXT_map_memory_placed
  • VK_EXT_memory_budget
  • VK_EXT_multi_draw
  • VK_EXT_multisampled_render_to_single_sampled
  • VK_EXT_mutable_descriptor_type
  • VK_EXT_nested_command_buffer
  • VK_EXT_non_seamless_cube_map
  • VK_EXT_primitive_restart_index
  • VK_EXT_primitives_generated_query
  • VK_EXT_rasterization_order_attachment_access
  • VK_EXT_shader_image_atomic_int64
  • VK_EXT_shader_module_identifier
  • VK_EXT_shader_replicated_composites
  • VK_EXT_shader_subgroup_vote
  • VK_EXT_shader_uniform_buffer_unsized_array
  • VK_EXT_shader_viewport_index_layer
  • VK_EXT_zero_initialize_device_memory
  • VK_GOOGLE_decorate_string
  • VK_GOOGLE_hlsl_functionality1
  • VK_KHR_compute_shader_derivatives
  • VK_KHR_dynamic_rendering_local_read
  • VK_KHR_index_type_uint8
  • VK_KHR_line_rasterization
  • VK_KHR_load_store_op_none
  • VK_KHR_maintenance5
  • VK_KHR_maintenance6
  • VK_KHR_maintenance7
  • VK_KHR_map_memory2
  • VK_KHR_pipeline_library
  • VK_KHR_ray_tracing_maintenance1
  • VK_KHR_shader_atomic_int64
  • VK_KHR_shader_clock
  • VK_KHR_shader_expect_assume
  • VK_KHR_shader_float_controls2
  • VK_KHR_shader_relaxed_extended_instruction
  • VK_KHR_shader_subgroup_rotate
  • VK_KHR_vertex_attribute_divisor
  • VK_KHR_workgroup_memory_explicit_layout
  • VK_NV_compute_shader_derivatives
  • VK_QCOM_multiview_per_view_render_areas
  • VK_QCOM_multiview_per_view_viewports
  • VK_VALVE_fragment_density_map_layered
  • VK_VALVE_mutable_descriptor_type
Extensões só no Qualcomm Technologies Inc. Adreno Vulkan Driver (10)
  • VK_EXT_astc_decode_mode
  • VK_EXT_blend_operation_advanced
  • VK_EXT_fragment_density_map2
  • VK_EXT_swapchain_maintenance1
  • VK_KHR_shared_presentable_image
  • VK_KHR_swapchain_mutable_format
  • VK_QCOM_render_pass_store_ops
  • VK_QCOM_render_pass_transform
  • VK_QCOM_rotated_copy_commands
  • VK_QCOM_tile_properties
Recursos básicos que diferem (23)
multiviewGeometryShader Vulkan 1.1sem suporte a passou
protectedMemory Vulkan 1.1passou a sem suporte
shaderBufferInt64Atomics Vulkan 1.2sem suporte a passou
shaderInputAttachmentArrayDynamicIndexing Vulkan 1.2passou a sem suporte
shaderInputAttachmentArrayNonUniformIndexing Vulkan 1.2passou a sem suporte
shaderOutputLayer Vulkan 1.2sem suporte a passou
shaderOutputViewportIndex Vulkan 1.2sem suporte a passou
bresenhamLines Vulkan 1.4sem suporte a passou
dynamicRenderingLocalRead Vulkan 1.4sem suporte a passou
globalPriorityQuery Vulkan 1.4sem suporte a passou
hostImageCopy Vulkan 1.4sem suporte a passou
indexTypeUint8 Vulkan 1.4sem suporte a passou
maintenance5 Vulkan 1.4sem suporte a passou
maintenance6 Vulkan 1.4sem suporte a passou
pipelineRobustness Vulkan 1.4sem suporte a passou
pushDescriptor Vulkan 1.4sem suporte a passou
rectangularLines Vulkan 1.4sem suporte a passou
shaderExpectAssume Vulkan 1.4sem suporte a passou
shaderFloatControls2 Vulkan 1.4sem suporte a passou
shaderSubgroupRotate Vulkan 1.4sem suporte a passou
shaderSubgroupRotateClustered Vulkan 1.4sem suporte a passou
vertexAttributeInstanceRateDivisor Vulkan 1.4sem suporte a passou
vertexAttributeInstanceRateZeroDivisor Vulkan 1.4sem suporte a passou
Limites que diferem (18)
LimiteSistemaCustomizado
bufferImageGranularity164
sparseAddressSpaceSize562949953421311274877906944
maxPerStageResources5033164816777216
maxDescriptorSetUniformBuffersDynamic3216
maxDescriptorSetStorageBuffersDynamic168
maxVertexInputAttributeOffset40964095
maxGeometryInputComponents12864
maxGeometryOutputVertices1024256
maxGeometryTotalOutputComponents1310721024
maxFragmentInputComponents112128
maxComputeWorkGroupInvocations10242048
minMemoryMapAlignment644096
minStorageBufferOffsetAlignment644
maxFramebufferLayers20481024
discreteQueuePriorities32
optimalBufferCopyOffsetAlignment64128
optimalBufferCopyRowPitchAlignment64128
nonCoherentAtomSize164
Formatos suportados por só um driver (31 ganhos, 1 perdidos)

Só no WN-Turnip-1.14-p_Axxx:

  • A1B5G5R5_UNORM_PACK16
  • A2B10G10R10_SSCALED_PACK32
  • A2B10G10R10_USCALED_PACK32
  • A2R10G10B10_SSCALED_PACK32
  • A2R10G10B10_USCALED_PACK32
  • A8B8G8R8_SSCALED_PACK32
  • A8B8G8R8_USCALED_PACK32
  • A8_UNORM
  • B8G8R8A8_SSCALED
  • B8G8R8A8_USCALED
  • B8G8R8_SINT
  • B8G8R8_SNORM
  • B8G8R8_UINT
  • R16G16B16A16_SSCALED
  • R16G16B16A16_USCALED
  • R16G16B16_SSCALED
  • R16G16B16_USCALED
  • R16G16_SSCALED
  • R16G16_USCALED
  • R16_SSCALED
  • R16_USCALED
  • R64_SINT
  • R64_UINT
  • R8G8B8A8_SSCALED
  • R8G8B8A8_USCALED
  • R8G8B8_SSCALED
  • R8G8B8_USCALED
  • R8G8_SSCALED
  • R8G8_USCALED
  • R8_SSCALED
  • R8_USCALED

Só no Qualcomm Technologies Inc. Adreno Vulkan Driver:

  • G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16