FauxVkDB
English
Home / Adreno (TM) 840 / Compare

891.11 vs Turnip_Gen8_V38

On Adreno (TM) 840 (HONOR Magic8 pro, iQOO 15, LENOVO TB324ZC, nubia NX809J, OnePlus 15, POCO F8 Ultra, POCO F9 Ultra, realme RMX5210, Samsung Galaxy S26, Samsung Galaxy S26, Samsung Galaxy S26 Ultra, Samsung Galaxy S26 Ultra, Samsung Galaxy S26 Ultra, Samsung Galaxy Z Fold8, Samsung Galaxy Z Fold8 Ultra, Xiaomi 17, Xiaomi 2512BPNDAG). The first driver named is compared against the second, which is the baseline.

StockTurnip_Gen8_V38Mesa 27.0.0-devel (git-f28352d117)
vs
Custom891.11Driver Build: 17fab2f4fc, Iafcdf367ac, 1791270827
Graphics system version (Vulkan)1.4.363 to 1.4.351
Optional features (extensions)185 to 213+48 -20
Features that pass their check (validated)65 to 612 pass only on 891.11 6 pass only on Turnip_Gen8_V38
Speed test scenes (benchmark)2 faster 0 slower24% faster overall (geometric mean)
Games each driver could run (an estimate from its feature list): green likely, yellow maybe, orange limited, red no
StockDX92002+DX102006+DX112009+DX122015+Switch
CustomDX92002+DX102006+DX112009+DX122015+Switch
  • hdr_2160p34% faster
  • oit_linked_lists14% faster

Custom driver against stock, per scene. Bars to the right are faster, to the left slower.

Small areas of the picture differ from the stock driver in 2 scenes (pipeline_barriers: 1337 of 2304 cells, pipeline_barriers_2160p: 1038 of 2304 cells). The picture matches overall, so this is a local rendering fault, not a different scene.

Turnip_Gen8_V38 details 891.11 details

Feature checks that differ (25)

FeatureTurnip_Gen8_V38891.11Change
extendedDynamicState3ColorBlendEnable
VK_EXT_extended_dynamic_state3
passunsupportedlost
extendedDynamicState3ColorBlendEquation
VK_EXT_extended_dynamic_state3
passunsupportedlost
extendedDynamicState3ColorWriteMask
VK_EXT_extended_dynamic_state3
passunsupportedlost
extendedDynamicState3DepthClampEnable
VK_EXT_extended_dynamic_state3
passunsupportedlost
extendedDynamicState3LogicOpEnable
VK_EXT_extended_dynamic_state3
passunsupportedlost
extendedDynamicState3PolygonMode
VK_EXT_extended_dynamic_state3
passunsupportedlost
compat.nested_map
core
crashpassgained
core.compute_udiv
core
failpassgained
extendedDynamicState3AlphaToCoverageEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3AlphaToOneEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3ConservativeRasterizationMode
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3DepthClipEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3DepthClipNegativeOneToOne
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3ExtraPrimitiveOverestimationSize
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3LineRasterizationMode
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3ProvokingVertexMode
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3RasterizationSamples
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3RasterizationStream
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3SampleLocationsEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3SampleMask
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3TessellationDomainOrigin
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
shaderSharedInt64Atomics
VK_KHR_shader_atomic_int64
unsupporteduntestedchanged
shaderResourceMinLod
VkPhysicalDeviceFeatures
untestedunsupportedchanged
sparseResidency16Samples
VkPhysicalDeviceFeatures
unsupporteduntestedchanged
sparseResidencyImage3D
VkPhysicalDeviceFeatures
unsupporteduntestedchanged

Speed test scenes (benchmark)

SceneTurnip_Gen8_V38 ms891.11 msDifferenceStartsGPU clock, MHzPicture vs stock
compute_nbodyn/a5.67only one side3 of 3 vs 3 of 3? vs ? clock unknownno large difference 0.0 no small difference worst 0.0 64x36
compute_nbody_2x10.64n/aonly one side3 of 3 vs 3 of 3? vs ? clock unknownno large difference 0.0 no small difference worst 0.0 64x36
hdr_2160p8.91 typical 9.156.63 typical 6.6234% faster3 of 3 vs 3 of 3? vs ? clock unknownno large difference 0.0 no small difference worst 0.0 64x36
oit_linked_lists12.89 typical 12.6111.28 typical 11.3414% faster3 of 3 vs 3 of 3? vs ? clock unknownno large difference 0.0 no small difference worst 0.0 64x36
pipeline_barriers1.46n/aonly one side3 of 3 vs 3 of 3? vs ? clock unknownno large difference 7.1 differs in 1337 small areas worst 48.0 64x36
pipeline_barriers_2160p6.27n/aonly one side3 of 3 vs 3 of 3? vs ? clock unknownno large difference 6.4 differs in 1038 small areas worst 51.7 64x36
subpassesn/a1.85only one side3 of 3 vs 3 of 3? vs ? clock unknownnot checked
subpasses_2160pn/an/aonly one side3 of 3 vs 3 of 3? vs ? clock unknownnot checked

Time to draw one frame, per scene: the average (mean) frame time of the scene's best round, which is how many frames the driver delivered; lower is faster. "Typical" beside it is the median frame, which can sit well under the average when a driver's frames come in two speeds. A pair of reports made before per-round averages were recorded is compared on the median. A scene whose rounds disagree by more than 15% is left out. A scene marked "paced" was held at that mean frame time by the driver or the display queue, together with at least one other scene of the same run; its time says how the frames were spaced, not how fast the driver rendered, so it is not compared. A scene marked "too light" took under 8 ms at the standard size (1920 by 1080) on both drivers, where the screen's frame queue spaces the frames more than the chip does; its heavier run is the one compared: the row ending in _2160p is the scene drawn at 3840 by 2160, and compute_nbody_2x is that scene with twice the particles. "Faster" and "slower" describe 891.11 against Turnip_Gen8_V38. "Picture vs stock" compares one fixed frame per scene as a coarse colour grid (0 is identical, above 40 is a different picture); it finds a scene that was not drawn. Where both reports carry the finer 64x36 grid, the second figure is how many of its 2,304 cells differ by more than 4 of 255, and "worst" is the largest single cell; this is what finds a small rendering error in a picture that otherwise matches. A row marked 16x9 comes from a report made before the finer grid existed. "Starts" is how many of a scene's process starts reached a measured round. A GPU clock marked "not comparable" differed by more than 5% of the device's maximum between the two timings.

Technical differences (Vulkan)

Extensions only in 891.11 (48)
  • VK_ANDROID_external_format_resolve
  • VK_ARM_data_graph
  • VK_ARM_tensors
  • 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_external_memory_host
  • VK_EXT_fragment_density_map2
  • VK_EXT_fragment_shader_interlock
  • VK_EXT_frame_boundary
  • VK_EXT_image_compression_control_swapchain
  • VK_EXT_memory_decompression
  • VK_EXT_mesh_shader
  • VK_EXT_pipeline_library_group_handles
  • VK_EXT_pipeline_protected_access
  • VK_EXT_pipeline_robustness
  • VK_EXT_shader_subgroup_ballot
  • VK_EXT_subpass_merge_feedback
  • VK_EXT_vertex_attribute_robustness
  • VK_KHR_cooperative_matrix
  • VK_KHR_depth_clamp_zero_one
  • VK_KHR_internally_synchronized_queues
  • VK_KHR_maintenance10
  • VK_KHR_maintenance8
  • VK_KHR_maintenance9
  • VK_KHR_pipeline_binary
  • VK_KHR_ray_tracing_pipeline
  • VK_KHR_ray_tracing_position_fetch
  • VK_KHR_robustness2
  • VK_KHR_shader_maximal_reconvergence
  • VK_KHR_shared_presentable_image
  • VK_KHR_unified_image_layouts
  • VK_NV_optical_flow
  • VK_QCOM_cooperative_matrix_conversion
  • VK_QCOM_data_graph_model
  • VK_QCOM_elapsed_timer_query
  • VK_QCOM_filter_cubic_weights
  • VK_QCOM_image_processing2
  • VK_QCOM_image_processing3
  • VK_QCOM_queue_perf_hint
  • VK_QCOM_render_pass_store_ops
  • VK_QCOM_render_pass_transform
  • VK_QCOM_tile_memory_heap
  • VK_QCOM_tile_properties
  • VK_QCOM_tile_shading
  • VK_QCOM_ycbcr_degamma
Extensions only in Turnip_Gen8_V38 (20)
  • VK_AMD_buffer_marker
  • VK_ARM_rasterization_order_attachment_access
  • VK_EXT_attachment_feedback_loop_dynamic_state
  • VK_EXT_custom_resolve
  • VK_EXT_debug_marker
  • VK_EXT_dynamic_rendering_unused_attachments
  • VK_EXT_extended_dynamic_state3
  • VK_EXT_image_drm_format_modifier
  • VK_EXT_legacy_vertex_attributes
  • VK_EXT_memory_budget
  • VK_EXT_primitive_restart_index
  • VK_EXT_shader_replicated_composites
  • VK_EXT_shader_uniform_buffer_unsized_array
  • VK_GOOGLE_decorate_string
  • VK_GOOGLE_hlsl_functionality1
  • 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
Core features that differ (6)
multiviewGeometryShader Vulkan 1.1pass to unsupported
protectedMemory Vulkan 1.1unsupported to pass
shaderInputAttachmentArrayDynamicIndexing Vulkan 1.2unsupported to pass
shaderInputAttachmentArrayNonUniformIndexing Vulkan 1.2unsupported to pass
shaderSharedInt64Atomics Vulkan 1.2unsupported to pass
pipelineProtectedAccess Vulkan 1.4unsupported to pass
Limits that differ (22)
LimitTurnip_Gen8_V38891.11
maxTexelBufferElements536870911134217728
bufferImageGranularity641
sparseAddressSpaceSize2748779069444294967295
maxPerStageResources1677721650331648
maxDescriptorSetUniformBuffersDynamic1632
maxDescriptorSetStorageBuffersDynamic816
maxVertexInputAttributeOffset40954096
maxGeometryInputComponents64128
maxGeometryOutputVertices2561024
maxGeometryTotalOutputComponents1024131072
maxFragmentInputComponents128112
maxComputeSharedMemorySize6553632768
maxComputeWorkGroupInvocations20481024
minMemoryMapAlignment409664
minUniformBufferOffsetAlignment64256
minStorageBufferOffsetAlignment416
maxFramebufferLayers10242048
discreteQueuePriorities24
pointSizeRange1, 40921, 4095
optimalBufferCopyOffsetAlignment12864
optimalBufferCopyRowPitchAlignment12864
nonCoherentAtomSize641
Formats supported by only one driver (3 gained, 5 lost)

Only in 891.11:

  • G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
  • G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
  • G16_B16R16_2PLANE_420_UNORM

Only in Turnip_Gen8_V38:

  • B8G8R8A8_SSCALED
  • B8G8R8A8_USCALED
  • B8G8R8_SINT
  • B8G8R8_SNORM
  • B8G8R8_UINT