FauxVkDB
English
Home / Adreno (TM) 619 / Compare

turnip_faux123_v1.2.5 vs turnip_mrpurple-EOL-24.3.4

On Adreno (TM) 619 (Motorola moto g34 5G, Motorola moto g45 5G, Motorola moto g84 5G, realme 10 Pro 5G). The first driver named is compared against the second, which is the baseline.

Stockturnip_mrpurple-EOL-24.3.4PurpleVK-EOL 24.3.4 (git-1950a8b78c)
vs
Customturnip_faux123_v1.2.5Mesa 26.3.0-devel (git-dd45fd0baa)
Graphics system version (Vulkan)1.3.296 to 1.3.359
Optional features (extensions)124 to 158+35 -1
Features that pass their check (validated)65 to 694 pass only on turnip_faux123_v1.2.5 0 pass only on turnip_mrpurple-EOL-24.3.4
Speed test scenes (benchmark)2 faster 1 slower 1 even12% 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_2160p1% slower
  • oit_linked_lists4% slower
  • pipeline_barriers31% faster
  • subpasses24% 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 1 scene (pipeline_barriers: 1484 of 2304 cells). The picture matches overall, so this is a local rendering fault, not a different scene.

Did not start every time: compute_nbody (stock 0 of 3, custom 3 of 3).

turnip_mrpurple-EOL-24.3.4 details turnip_faux123_v1.2.5 details

Feature checks that differ (23)

Featureturnip_mrpurple-EOL-24.3.4turnip_faux123_v1.2.5Change
compat.nested_map
core
crashpassgained
core.compute_udiv
core
failpassgained
core.copy_wide_row_length
core
failpassgained
stress.spill_helper_lanes
core
untestedpassgained
extendedDynamicState3ColorBlendAdvanced
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3ConservativeRasterizationMode
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3CoverageModulationMode
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3CoverageModulationTable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3CoverageModulationTableEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3CoverageReductionMode
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3CoverageToColorEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3CoverageToColorLocation
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3ExtraPrimitiveOverestimationSize
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3LineStippleEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3RepresentativeFragmentTestEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3ShadingRateImageEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3ViewportSwizzle
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
extendedDynamicState3ViewportWScalingEnable
VK_EXT_extended_dynamic_state3
untestedunsupportedchanged
shaderFloat64
VkPhysicalDeviceFeatures
untestedunsupportedchanged
shaderResourceMinLod
VkPhysicalDeviceFeatures
unsupporteduntestedchanged
shaderStorageImageMultisample
VkPhysicalDeviceFeatures
untestedunsupportedchanged
sparseBinding
VkPhysicalDeviceFeatures
untestedunsupportedchanged
stress.many_command_buffers_one_submit
core
untestedfailchanged

Speed test scenes (benchmark)

Sceneturnip_mrpurple-EOL-24.3.4 msturnip_faux123_v1.2.5 msDifferenceStartsGPU clock, MHzPicture vs stock
compute_nbodyn/a28.03 typical 27.99only one side0 of 3 vs 3 of 3? vs ? clock unknownnot checked
hdr_2160p116.97 typical 115.21118.53 typical 116.651% slower3 of 3 vs 3 of 3? vs ? clock unknownno large difference 0.0 no small difference worst 0.0 64x36
oit_linked_lists55.09 typical 54.9357.13 typical 57.484% slower3 of 3 vs 3 of 3? vs ? clock unknownno large difference 0.0 no small difference worst 0.0 64x36
pipeline_barriers25.28 typical 25.3619.24 typical 19.3031% faster3 of 3 vs 3 of 3? vs ? clock unknownno large difference 10.6 differs in 1484 small areas worst 62.3 64x36
subpasses36.80 typical 36.8329.74 typical 29.8424% faster3 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 turnip_faux123_v1.2.5 against turnip_mrpurple-EOL-24.3.4. "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 turnip_faux123_v1.2.5 (35)
  • VK_EXT_custom_resolve
  • VK_EXT_debug_marker
  • VK_EXT_depth_clamp_control
  • VK_EXT_device_memory_report
  • VK_EXT_dynamic_rendering_unused_attachments
  • VK_EXT_fragment_density_map_offset
  • VK_EXT_hdr_metadata
  • VK_EXT_image_compression_control
  • VK_EXT_multisampled_render_to_single_sampled
  • VK_EXT_primitive_restart_index
  • VK_EXT_shader_atomic_float
  • VK_EXT_shader_uniform_buffer_unsized_array
  • VK_EXT_texture_compression_astc_hdr
  • VK_EXT_zero_initialize_device_memory
  • VK_KHR_compute_shader_derivatives
  • VK_KHR_deferred_host_operations
  • 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_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_NV_compute_shader_derivatives
  • VK_QCOM_fragment_density_map_offset
  • VK_QCOM_multiview_per_view_render_areas
  • VK_QCOM_render_pass_shader_resolve
  • VK_VALVE_fragment_density_map_layered
Extensions only in turnip_mrpurple-EOL-24.3.4 (1)
  • VK_EXT_post_depth_coverage
Core features that differ (12)
multiviewGeometryShader Vulkan 1.1pass to unsupported
multiviewTessellationShader Vulkan 1.1pass to unsupported
protectedMemory Vulkan 1.1pass to unsupported
storageInputOutput16 Vulkan 1.1pass to unsupported
storagePushConstant16 Vulkan 1.1pass to unsupported
uniformAndStorageBuffer16BitAccess Vulkan 1.1pass to unsupported
bufferDeviceAddressMultiDevice Vulkan 1.2pass to unsupported
shaderInputAttachmentArrayDynamicIndexing Vulkan 1.2pass to unsupported
shaderInputAttachmentArrayNonUniformIndexing Vulkan 1.2pass to unsupported
shaderSharedInt64Atomics Vulkan 1.2pass to unsupported
storagePushConstant8 Vulkan 1.2pass to unsupported
uniformAndStorageBuffer8BitAccess Vulkan 1.2pass to unsupported
Limits that differ (2)
Limitturnip_mrpurple-EOL-24.3.4turnip_faux123_v1.2.5
maxFragmentInputComponents124128
timestampPeriod33.112652.0833
Formats supported by only one driver (20 gained, 0 lost)

Only in turnip_faux123_v1.2.5:

  • A1B5G5R5_UNORM_PACK16
  • A8_UNORM
  • ASTC_10x10_SFLOAT_BLOCK
  • ASTC_10x5_SFLOAT_BLOCK
  • ASTC_10x6_SFLOAT_BLOCK
  • ASTC_10x8_SFLOAT_BLOCK
  • ASTC_12x10_SFLOAT_BLOCK
  • ASTC_12x12_SFLOAT_BLOCK
  • ASTC_4x4_SFLOAT_BLOCK
  • ASTC_5x4_SFLOAT_BLOCK
  • ASTC_5x5_SFLOAT_BLOCK
  • ASTC_6x5_SFLOAT_BLOCK
  • ASTC_6x6_SFLOAT_BLOCK
  • ASTC_8x5_SFLOAT_BLOCK
  • ASTC_8x6_SFLOAT_BLOCK
  • ASTC_8x8_SFLOAT_BLOCK
  • B8G8R8_SINT
  • B8G8R8_SNORM
  • B8G8R8_UINT
  • B8G8R8_UNORM

Only in turnip_mrpurple-EOL-24.3.4:

  • None