turnip_faux123_v1.2.0 vs Qualcomm Technologies Inc. Adreno Vulkan Driver
En la Adreno (TM) 830 (AYANEO Pocket FIT Elite, HONOR AAK-AN00, HONOR Magic V5, nubia NX789J, OnePlus 13, OnePlus 13, OnePlus 13s, POCO F8 Pro, realme GT 7 Pro, Samsung Galaxy S25, Samsung Galaxy S25 Ultra, Samsung Galaxy S25 Ultra, Samsung Galaxy S25 Ultra, Samsung Galaxy S25+, Xiaomi 15, Xiaomi 15, Xiaomi 15 Ultra, ZTE NP05J). El primer driver que se nombra se compara con el segundo, que es la referencia (baseline).
- compute_nbody_2x56% más lento
- oit_linked_lists59% más lento
- pipeline_barriers_2160p53% más lento
Pequeñas zonas de la imagen difieren del driver de fábrica en 2 escenas (pipeline_barriers: 1698 de 2304 celdas, pipeline_barriers_2160p: 1038 de 2304 celdas). La imagen coincide en general, así que es un fallo de renderizado local, no una escena distinta.
No en igualdad de condiciones: el reloj de la GPU fue distinto durante 2 de estas escenas (por ejemplo compute_nbody_2x: de fábrica al 94% del máximo del dispositivo, personalizado al 100%). Parte de la diferencia en el tiempo por fotograma viene del reloj que eligió el dispositivo, no del driver.
Detalles de Qualcomm Technologies Inc. Adreno Vulkan Driver Detalles de turnip_faux123_v1.2.0
Comprobaciones de funciones que difieren (42)
| Función | De fábrica | Personalizado | Cambio |
|---|---|---|---|
| extendedDynamicState3ColorBlendEnable | no admitida | pasa | ganado |
| extendedDynamicState3ColorBlendEquation | no admitida | pasa | ganado |
| extendedDynamicState3ColorWriteMask | no admitida | pasa | ganado |
| extendedDynamicState3DepthClampEnable | no admitida | pasa | ganado |
| extendedDynamicState3LogicOpEnable | no admitida | pasa | ganado |
| extendedDynamicState3PolygonMode | no admitida | pasa | ganado |
| depthClamp | sin probar | pasa | ganado |
| largePoints | sin probar | pasa | ganado |
| compat.helper_loop_terminator | sin probar | pasa | ganado |
| compat.nested_map | sin probar | pasa | ganado |
| core.blend_advertised_formats | sin probar | pasa | ganado |
| core.compute_big_stack | sin probar | pasa | ganado |
| core.copy_wide_row_length | falla | pasa | ganado |
| core.host_coherent_readback | sin probar | pasa | ganado |
| core.mrt_partial_kill | sin probar | pasa | ganado |
| core.ubo_update_buffer | sin probar | pasa | ganado |
| core.ubo_written_after_record | sin probar | pasa | ganado |
| core.varying_subset | sin probar | pasa | ganado |
| mem.image_padding | sin probar | pasa | ganado |
| perf.fb_local_barrier_large_draws | sin probar | pasa | ganado |
| perf.fb_local_barrier_overdraw | sin probar | pasa | ganado |
| stage.geometry_max_output | sin probar | pasa | ganado |
| stage.geometry_point_size | sin probar | pasa | ganado |
| stress.scratch_per_batch | sin probar | pasa | ganado |
| sync.first_submit_clear_then_compute | sin probar | pasa | ganado |
| extendedDynamicState3AlphaToCoverageEnable | no admitida | sin probar | cambió |
| extendedDynamicState3AlphaToOneEnable | no admitida | sin probar | cambió |
| extendedDynamicState3ConservativeRasterizationMode | no admitida | sin probar | cambió |
| extendedDynamicState3DepthClipEnable | no admitida | sin probar | cambió |
| extendedDynamicState3DepthClipNegativeOneToOne | no admitida | sin probar | cambió |
| extendedDynamicState3ExtraPrimitiveOverestimationSize | no admitida | sin probar | cambió |
| extendedDynamicState3LineRasterizationMode | no admitida | sin probar | cambió |
| extendedDynamicState3ProvokingVertexMode | no admitida | sin probar | cambió |
| extendedDynamicState3RasterizationSamples | no admitida | sin probar | cambió |
| extendedDynamicState3RasterizationStream | no admitida | sin probar | cambió |
| extendedDynamicState3SampleLocationsEnable | no admitida | sin probar | cambió |
| extendedDynamicState3SampleMask | no admitida | sin probar | cambió |
| extendedDynamicState3TessellationDomainOrigin | no admitida | sin probar | cambió |
| shaderResourceMinLod | no admitida | sin probar | cambió |
| shaderResourceResidency | no admitida | sin probar | cambió |
| sparseResidency16Samples | sin probar | no admitida | cambió |
| sparseResidencyAliased | no admitida | sin probar | cambió |
Escenas de la prueba de velocidad (benchmark)
Los dos drivers no se midieron en los mismos modelos de dispositivo. Los tiempos por fotograma de dispositivos distintos no sirven para comparar drivers, así que lee estas cifras con eso en mente.
| Escena | De fábrica ms | Personalizado ms | Diferencia | Arranques | Reloj de la GPU, MHz | Imagen vs de fábrica |
|---|---|---|---|---|---|---|
| compute_nbody | n/a | n/a | demasiado ligera, ver compute_nbody_2x | 3 de 3 vs 3 de 3 | 611 vs 525 no comparable | sin gran diferencia sin diferencia pequeña |
| compute_nbody_2x | 8.22 | 18.83 | 56% más lento | 3 de 3 vs 3 de 3 | 1133 vs 525 no comparable | sin gran diferencia sin diferencia pequeña |
| hdr_2160p | n/a | 16.15 | solo un lado | 3 de 3 vs 3 de 3 | 1200 vs 525 | sin gran diferencia sin diferencia pequeña |
| oit_linked_lists | 15.57 | 37.78 | 59% más lento | 3 de 3 vs 3 de 3 | 1200 vs 511 | sin gran diferencia sin diferencia pequeña |
| pipeline_barriers | 2.39 | n/a | demasiado ligera, ver pipeline_barriers_2160p | 3 de 3 vs 3 de 3 | 726 vs 494 no comparable | sin gran diferencia difiere en 1698 zonas pequeñas |
| pipeline_barriers_2160p | 5.43 | 11.52 | 53% más lento | 3 de 3 vs 3 de 3 | 1039 vs 511 no comparable | sin gran diferencia difiere en 1038 zonas pequeñas |
| subpasses | 4.38 | n/a | solo un lado | 3 de 3 vs 3 de 3 | 607 vs 525 no comparable | sin comprobar |
| subpasses_2160p | n/a | 20.27 | solo un lado | 3 de 3 vs 3 de 3 | 1167 vs 525 | sin comprobar |
Diferencias técnicas (Vulkan)
Extensiones solo en turnip_faux123_v1.2.0 (31)
- 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_graphics_pipeline_library
- VK_EXT_host_image_copy
- VK_EXT_image_drm_format_modifier
- VK_EXT_legacy_dithering
- VK_EXT_legacy_vertex_attributes
- VK_EXT_map_memory_placed
- VK_EXT_memory_budget
- VK_EXT_nested_command_buffer
- VK_EXT_non_seamless_cube_map
- 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_compute_shader_derivatives
- VK_KHR_maintenance7
- VK_KHR_pipeline_library
- VK_KHR_shader_relaxed_extended_instruction
- VK_NV_compute_shader_derivatives
- VK_VALVE_mutable_descriptor_type
Extensiones solo en Qualcomm Technologies Inc. Adreno Vulkan Driver (29)
- 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_map
- VK_EXT_fragment_density_map2
- VK_EXT_image_compression_control_swapchain
- VK_EXT_pipeline_protected_access
- VK_EXT_present_mode_fifo_latest_ready
- VK_EXT_present_timing
- VK_KHR_present_id
- VK_KHR_present_id2
- VK_KHR_present_wait2
- VK_KHR_ray_tracing_position_fetch
- VK_KHR_shader_maximal_reconvergence
- VK_KHR_shader_quad_control
- VK_KHR_shared_presentable_image
- VK_KHR_swapchain_maintenance1
- VK_NV_optical_flow
- VK_QCOM_filter_cubic_weights
- VK_QCOM_fragment_density_map_offset
- 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
Funciones básicas que difieren (20)
| multiviewGeometryShader | no admitida a pasa |
| protectedMemory | pasa a no admitida |
| shaderInputAttachmentArrayDynamicIndexing | pasa a no admitida |
| shaderInputAttachmentArrayNonUniformIndexing | pasa a no admitida |
| bresenhamLines | no admitida a pasa |
| dynamicRenderingLocalRead | no admitida a pasa |
| globalPriorityQuery | no admitida a pasa |
| hostImageCopy | no admitida a pasa |
| indexTypeUint8 | no admitida a pasa |
| maintenance5 | no admitida a pasa |
| maintenance6 | no admitida a pasa |
| pipelineRobustness | no admitida a pasa |
| pushDescriptor | no admitida a pasa |
| rectangularLines | no admitida a pasa |
| shaderExpectAssume | no admitida a pasa |
| shaderFloatControls2 | no admitida a pasa |
| shaderSubgroupRotate | no admitida a pasa |
| shaderSubgroupRotateClustered | no admitida a pasa |
| vertexAttributeInstanceRateDivisor | no admitida a pasa |
| vertexAttributeInstanceRateZeroDivisor | no admitida a pasa |
Límites que difieren (20)
| Límite | De fábrica | Personalizado |
|---|---|---|
| maxTexelBufferElements | 134217728 | 536870911 |
| bufferImageGranularity | 1 | 64 |
| sparseAddressSpaceSize | 562949953421311 | 274877906944 |
| maxPerStageResources | 50331648 | 16777216 |
| maxDescriptorSetUniformBuffersDynamic | 32 | 16 |
| maxDescriptorSetStorageBuffersDynamic | 16 | 8 |
| maxVertexInputAttributeOffset | 4096 | 4095 |
| maxGeometryInputComponents | 128 | 64 |
| maxGeometryOutputVertices | 1024 | 256 |
| maxGeometryTotalOutputComponents | 131072 | 1024 |
| maxFragmentInputComponents | 112 | 128 |
| minMemoryMapAlignment | 64 | 4096 |
| minUniformBufferOffsetAlignment | 256 | 64 |
| minStorageBufferOffsetAlignment | 64 | 4 |
| maxFramebufferLayers | 2048 | 1024 |
| discreteQueuePriorities | 3 | 2 |
| pointSizeRange | 1, 4095 | 1, 4092 |
| optimalBufferCopyOffsetAlignment | 64 | 128 |
| optimalBufferCopyRowPitchAlignment | 64 | 128 |
| nonCoherentAtomSize | 1 | 64 |
Formatos admitidos por un solo driver (5 ganados, 1 perdidos)
- B8G8R8A8_SSCALED
- B8G8R8A8_USCALED
- B8G8R8_SINT
- B8G8R8_SNORM
- B8G8R8_UINT
- G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16