FauxVkDB
Español
Inicio / Adreno (TM) 610 / Comparar

Turnip_v27.0.0-R1 vs Turnip-Rutabaga-v3

En la Adreno (TM) 610 (HONOR Pad X8a, HONOR X8c, POCO M7, Redmi Note 11, Redmi Note 12, Redmi Note 13, Samsung Galaxy A05s, Xiaomi 220333QAG). El primer driver que se nombra se compara con el segundo, que es la referencia (baseline).

De fábricaTurnip-Rutabaga-v3Mesa 26.3.0-devel (git-b00479181d)
vs
PersonalizadoTurnip_v27.0.0-R1Mesa 27.0.0-devel (git-f28352d117)
Versión del sistema gráfico (Vulkan)1.0.359 a 1.3.363
Funciones opcionales (extensiones)145 a 158+17 -4
Funciones que pasan su comprobación (validadas)47 a 47ambos pasan las mismas comprobaciones
Escenas de la prueba de velocidad (benchmark)0 más rápidas 4 más lentas7% más lento en general (media geométrica)
Juegos que podría mover cada driver (una estimación a partir de su lista de funciones): verde probable, amarillo quizá, naranja limitado, rojo no
De fábricaDX92002+DX102006+DX112009+DX122015+Switch
PersonalizadoDX92002+DX102006+DX112009+DX122015+Switch
  • hdr_2160p9% más lento
  • oit_linked_lists4% más lento
  • pipeline_barriers6% más lento
  • subpasses7% más lento

Driver personalizado frente al de fábrica, por escena. Las barras a la derecha son más rápidas; a la izquierda, más lentas.

Pequeñas zonas de la imagen difieren del driver de fábrica en 1 escena (pipeline_barriers: 1482 de 2304 celdas). La imagen coincide en general, así que es un fallo de renderizado local, no una escena distinta.

No arrancó todas las veces: compute_nbody (de fábrica 0 de 3, personalizado 3 de 3).

No en igualdad de condiciones: el reloj de la GPU fue distinto durante 1 de estas escenas (por ejemplo subpasses: de fábrica al 100% del máximo del dispositivo, personalizado al 88%). Parte de la diferencia en el tiempo por fotograma viene del reloj que eligió el dispositivo, no del driver.

Detalles de Turnip-Rutabaga-v3 Detalles de Turnip_v27.0.0-R1

Comprobaciones de funciones que difieren (0)

Todas las comprobaciones de funciones terminan igual en los dos drivers.

Escenas de la prueba de velocidad (benchmark)

EscenaTurnip-Rutabaga-v3 msTurnip_v27.0.0-R1 msDiferenciaArranquesReloj de la GPU, MHzImagen vs de fábrica
compute_nbodyn/a89.38 típico 89.17solo un lado0 de 3 vs 3 de 3? vs 1115 reloj desconocidosin comprobar
hdr_2160p317.11 típico 310.72347.46 típico 347.299% más lento3 de 3 vs 3 de 31068 vs 1115 sin gran diferencia 0.0 sin diferencia pequeña peor 0.0 64x36
oit_linked_lists94.48 típico 94.2998.08 típico 96.184% más lento3 de 3 vs 3 de 31115 vs 1115 sin gran diferencia 0.0 sin diferencia pequeña peor 0.0 64x36
pipeline_barriers42.19 típico 42.5945.04 típico 45.356% más lento3 de 3 vs 3 de 31115 vs 1115 sin gran diferencia 10.6 difiere en 1482 zonas pequeñas peor 62.3 64x36
subpasses82.30 típico 82.2988.72 típico 88.737% más lento3 de 3 vs 3 de 31115 vs 982 no comparablesin comprobar

Tiempo para dibujar un fotograma, por escena: el tiempo por fotograma medio (promedio) de la mejor ronda de la escena, que es cuántos fotogramas entregó el driver; cuanto menor, más rápido. “Típico”, a su lado, es el fotograma mediano, que puede quedar muy por debajo del promedio cuando los fotogramas de un driver llegan a dos velocidades. Un par de informes hechos antes de que se registraran los promedios por ronda se compara con la mediana. Se descarta una escena cuyas rondas difieran en más de un 15%. Una escena marcada como “capada” (paced) la mantuvo en ese tiempo medio por fotograma el driver o la cola de la pantalla, junto con al menos otra escena de la misma ejecución; su tiempo indica cómo se espaciaron los fotogramas, no lo rápido que renderizó el driver, así que no se compara. Una escena marcada como “demasiado ligera” tardó menos de 8 ms al tamaño estándar (1920 por 1080) en los dos drivers, donde la cola de fotogramas de la pantalla espacia los fotogramas más que el chip; se compara su ejecución más pesada: la fila que termina en _2160p es la escena dibujada a 3840 por 2160, y compute_nbody_2x es esa escena con el doble de partículas. “Más rápido” y “más lento” describen Turnip_v27.0.0-R1 frente a Turnip-Rutabaga-v3. “Imagen vs de fábrica” compara un fotograma fijo por escena como una cuadrícula de color gruesa (0 es idéntico, por encima de 40 es una imagen distinta); sirve para detectar una escena que no se dibujó. Cuando los dos informes traen la cuadrícula más fina de 64x36, la segunda cifra es cuántas de sus 2.304 celdas difieren en más de 4 de 255, y “peor” es la celda individual con más diferencia; así se detecta un pequeño error de renderizado en una imagen que por lo demás coincide. Una fila marcada como 16x9 viene de un informe hecho antes de que existiera la cuadrícula más fina. “Arranques” es cuántos de los arranques de proceso de una escena llegaron a una ronda medida. Un reloj de la GPU marcado como “no comparable” difirió en más del 5% del máximo del dispositivo entre las dos mediciones.

Diferencias técnicas (Vulkan)

Extensiones solo en Turnip_v27.0.0-R1 (17)
  • VK_EXT_global_priority
  • VK_EXT_global_priority_query
  • VK_EXT_subgroup_size_control
  • VK_KHR_global_priority
  • VK_KHR_maintenance4
  • VK_KHR_maintenance5
  • VK_KHR_maintenance6
  • VK_KHR_maintenance7
  • VK_KHR_multiview
  • VK_KHR_shader_float_controls2
  • VK_KHR_shader_subgroup_extended_types
  • VK_KHR_shader_subgroup_uniform_control_flow
  • VK_KHR_spirv_1_4
  • VK_KHR_swapchain_mutable_format
  • VK_QCOM_rotated_copy_commands
  • VK_VALVE_buffer_device_address_allocation_alignment
  • VK_VALVE_fragment_density_map_layered
Extensiones solo en Turnip-Rutabaga-v3 (4)
  • VK_EXT_depth_range_unrestricted
  • VK_EXT_frame_boundary
  • VK_EXT_pipeline_robustness
  • VK_KHR_cooperative_matrix
Funciones básicas que difieren (57)
multiview Vulkan 1.1no admitida a pasa
samplerYcbcrConversion Vulkan 1.1no admitida a pasa
shaderDrawParameters Vulkan 1.1no admitida a pasa
variablePointers Vulkan 1.1no admitida a pasa
variablePointersStorageBuffer Vulkan 1.1no admitida a pasa
bufferDeviceAddress Vulkan 1.2no admitida a pasa
bufferDeviceAddressCaptureReplay Vulkan 1.2no admitida a pasa
descriptorBindingPartiallyBound Vulkan 1.2no admitida a pasa
descriptorBindingSampledImageUpdateAfterBind Vulkan 1.2no admitida a pasa
descriptorBindingStorageBufferUpdateAfterBind Vulkan 1.2no admitida a pasa
descriptorBindingStorageImageUpdateAfterBind Vulkan 1.2no admitida a pasa
descriptorBindingStorageTexelBufferUpdateAfterBind Vulkan 1.2no admitida a pasa
descriptorBindingUniformBufferUpdateAfterBind Vulkan 1.2no admitida a pasa
descriptorBindingUniformTexelBufferUpdateAfterBind Vulkan 1.2no admitida a pasa
descriptorBindingUpdateUnusedWhilePending Vulkan 1.2no admitida a pasa
descriptorBindingVariableDescriptorCount Vulkan 1.2no admitida a pasa
descriptorIndexing Vulkan 1.2no admitida a pasa
drawIndirectCount Vulkan 1.2no admitida a pasa
hostQueryReset Vulkan 1.2no admitida a pasa
imagelessFramebuffer Vulkan 1.2no admitida a pasa
runtimeDescriptorArray Vulkan 1.2no admitida a pasa
samplerMirrorClampToEdge Vulkan 1.2no admitida a pasa
scalarBlockLayout Vulkan 1.2no admitida a pasa
separateDepthStencilLayouts Vulkan 1.2no admitida a pasa
shaderFloat16 Vulkan 1.2no admitida a pasa
shaderInt8 Vulkan 1.2no admitida a pasa
shaderOutputLayer Vulkan 1.2no admitida a pasa
shaderOutputViewportIndex Vulkan 1.2no admitida a pasa
shaderSampledImageArrayNonUniformIndexing Vulkan 1.2no admitida a pasa
shaderStorageBufferArrayNonUniformIndexing Vulkan 1.2no admitida a pasa
shaderStorageImageArrayNonUniformIndexing Vulkan 1.2no admitida a pasa
shaderStorageTexelBufferArrayDynamicIndexing Vulkan 1.2no admitida a pasa
shaderStorageTexelBufferArrayNonUniformIndexing Vulkan 1.2no admitida a pasa
shaderSubgroupExtendedTypes Vulkan 1.2no admitida a pasa
shaderUniformBufferArrayNonUniformIndexing Vulkan 1.2no admitida a pasa
shaderUniformTexelBufferArrayDynamicIndexing Vulkan 1.2no admitida a pasa
shaderUniformTexelBufferArrayNonUniformIndexing Vulkan 1.2no admitida a pasa
subgroupBroadcastDynamicId Vulkan 1.2no admitida a pasa
timelineSemaphore Vulkan 1.2no admitida a pasa
uniformBufferStandardLayout Vulkan 1.2no admitida a pasa
vulkanMemoryModel Vulkan 1.2no admitida a pasa
vulkanMemoryModelAvailabilityVisibilityChains Vulkan 1.2no admitida a pasa
vulkanMemoryModelDeviceScope Vulkan 1.2no admitida a pasa
computeFullSubgroups Vulkan 1.3no admitida a pasa
descriptorBindingInlineUniformBlockUpdateAfterBind Vulkan 1.3no admitida a pasa
dynamicRendering Vulkan 1.3no admitida a pasa
inlineUniformBlock Vulkan 1.3no admitida a pasa
maintenance4 Vulkan 1.3no admitida a pasa
pipelineCreationCacheControl Vulkan 1.3no admitida a pasa
privateData Vulkan 1.3no admitida a pasa
robustImageAccess Vulkan 1.3no admitida a pasa
shaderDemoteToHelperInvocation Vulkan 1.3no admitida a pasa
shaderIntegerDotProduct Vulkan 1.3no admitida a pasa
shaderTerminateInvocation Vulkan 1.3no admitida a pasa
shaderZeroInitializeWorkgroupMemory Vulkan 1.3no admitida a pasa
subgroupSizeControl Vulkan 1.3no admitida a pasa
synchronization2 Vulkan 1.3no admitida a pasa
Límites que difieren (0)
LímiteTurnip-Rutabaga-v3Turnip_v27.0.0-R1
Formatos admitidos por un solo driver (2 ganados, 0 perdidos)

Solo en Turnip_v27.0.0-R1:

  • A1B5G5R5_UNORM_PACK16
  • A8_UNORM

Solo en Turnip-Rutabaga-v3:

  • Ninguno