FauxVkDB
日本語

turnip_faux123_v1.1.9-rc14 vs Qualcomm Technologies Inc. Adreno Vulkan Driver

Adreno (TM) 740 (AYN Odin2, AYN Odin2 Portal, AYN Thor, Moorechip Retroid Pocket 6, 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). 最初に挙げたドライバーを、2番目のドライバー(ベースライン)と比べています。

純正Qualcomm Technologies Inc. Adreno Vulkan DriverDriver Build: 69e13475cb, I1df7ad3aa9, 1703680572
vs
カスタムturnip_faux123_v1.1.9-rc14Mesa 26.3.0-devel (git-dd45fd0baa)
グラフィックスのシステムバージョン(Vulkan)1.3.128 → 1.4.359
追加機能(拡張機能)113 → 174+69 -8
チェックに成功した機能(検証済み)41 → 51turnip_faux123_v1.1.9-rc14でのみ成功 10 Qualcomm Technologies Inc. Adreno Vulkan Driverでのみ成功 0
速度テストのシーン(ベンチマーク)速い 0 遅い 4 同等 1全体で15% 遅い(幾何平均)
各ドライバーが動かせそうなゲーム(機能リストからの目安): 緑は動く見込み、黄は動くかも、橙は厳しい、赤は動かない
純正DX92002+DX102006+DX112009+DX122015+Switch
カスタムDX92002+DX102006+DX112009+DX122015+Switch
  • compute_nbody_2x2% 遅い
  • hdr_2160p47% 遅い
  • oit_linked_lists3% 遅い
  • pipeline_barriers_2160p6% 遅い
  • subpasses_2160p8% 遅い

シーンごとの、純正に対するカスタムドライバーの結果。バーが右なら速く、左なら遅いです。

純正ドライバーと映像の一部が少し違います: 2件のシーン (pipeline_barriers: 2304セル中1498セル, pipeline_barriers_2160p: 2304セル中1655セル). 映像は全体として一致しているので、別のシーンではなく、一部の描画の不具合です。

条件がそろっていません: これらのシーンのうち1件でGPUクロックが異なりました(例: oit_linked_lists: 純正はデバイス最大値の100%、カスタムは88%). フレームタイムの差の一部は、ドライバーではなく、デバイスが選んだクロックによるものです。

Qualcomm Technologies Inc. Adreno Vulkan Driverの詳細 turnip_faux123_v1.1.9-rc14の詳細

結果が異なる機能チェック(35)

機能純正カスタム変化
borderColorSwizzle
VK_EXT_border_color_swizzle
非対応成功追加
extendedDynamicState3ColorBlendEnable
VK_EXT_extended_dynamic_state3
非対応成功追加
extendedDynamicState3ColorBlendEquation
VK_EXT_extended_dynamic_state3
非対応成功追加
extendedDynamicState3ColorWriteMask
VK_EXT_extended_dynamic_state3
非対応成功追加
extendedDynamicState3DepthClampEnable
VK_EXT_extended_dynamic_state3
非対応成功追加
extendedDynamicState3LogicOpEnable
VK_EXT_extended_dynamic_state3
非対応成功追加
extendedDynamicState3PolygonMode
VK_EXT_extended_dynamic_state3
非対応成功追加
inlineUniformBlock
VK_EXT_inline_uniform_block
非対応成功追加
shaderBufferInt64Atomics
VK_KHR_shader_atomic_int64
非対応成功追加
core.copy_wide_row_length
core
失敗成功追加
borderColorSwizzleFromImage
VK_EXT_border_color_swizzle
非対応未テスト変更あり
extendedDynamicState3AlphaToCoverageEnable
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3AlphaToOneEnable
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3ConservativeRasterizationMode
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3DepthClipEnable
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3DepthClipNegativeOneToOne
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3ExtraPrimitiveOverestimationSize
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3LineRasterizationMode
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3ProvokingVertexMode
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3RasterizationSamples
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3RasterizationStream
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3SampleLocationsEnable
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3SampleMask
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3TessellationDomainOrigin
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
descriptorBindingInlineUniformBlockUpdateAfterBind
VK_EXT_inline_uniform_block
非対応未テスト変更あり
shaderInt64
VkPhysicalDeviceFeatures
非対応未テスト変更あり
shaderResourceMinLod
VkPhysicalDeviceFeatures
非対応未テスト変更あり
shaderResourceResidency
VkPhysicalDeviceFeatures
非対応未テスト変更あり
shaderTessellationAndGeometryPointSize
VkPhysicalDeviceFeatures
非対応未テスト変更あり
sparseResidency16Samples
VkPhysicalDeviceFeatures
未テスト非対応変更あり
sparseResidency2Samples
VkPhysicalDeviceFeatures
未テスト非対応変更あり
sparseResidency4Samples
VkPhysicalDeviceFeatures
未テスト非対応変更あり
sparseResidency8Samples
VkPhysicalDeviceFeatures
未テスト非対応変更あり
sparseResidencyAliased
VkPhysicalDeviceFeatures
非対応未テスト変更あり
sparseResidencyImage2D
VkPhysicalDeviceFeatures
未テスト非対応変更あり

速度テストのシーン(ベンチマーク)

2つのドライバーは同じ機種の組み合わせで測定されていません。異なるデバイスのフレームタイムではドライバーを比較できないので、その点を踏まえて数値を見てください。

シーン純正 msカスタム ms差起動GPUクロック(MHz)純正との映像比較
compute_nbody7.17 標準 7.067.45 標準 7.49軽すぎ、compute_nbody_2xを参照3中3 vs 3中3626 vs 561 比較不可大きな差なし 0.0 小さな差なし 最大 0.0 64x36
compute_nbody_2x20.34 標準 20.3520.74 標準 20.772% 遅い3中3 vs 3中3680 vs 615 大きな差なし 0.0 小さな差なし 最大 0.0 64x36
hdr_2160p21.44 標準 21.4040.66 標準 39.9247% 遅い3中3 vs 3中3680 vs 615 大きな差なし 0.0 小さな差なし 最大 0.3 64x36
oit_linked_lists25.48 標準 25.4326.27 標準 26.403% 遅い3中3 vs 3中3680 vs 636 比較不可大きな差なし 0.0 小さな差なし 最大 0.0 64x36
pipeline_barriers3.23 標準 2.762.22 標準 2.18軽すぎ、pipeline_barriers_2160pを参照3中3 vs 3中3626 vs 719 比較不可大きな差なし 9.3 小さな差が1498箇所 最大 68.3 64x36
pipeline_barriers_2160p8.08 標準 8.108.56 標準 8.556% 遅い3中3 vs 3中3680 vs 615 大きな差なし 9.4 小さな差が1655箇所 最大 63.3 64x36
subpasses4.13 標準 3.873.57 標準 3.57軽すぎ、subpasses_2160pを参照3中3 vs 3中3680 vs 719 未チェック
subpasses_2160p13.72 標準 13.7214.86 標準 14.978% 遅い3中3 vs 3中3680 vs 615 未チェック

1シーンあたりの1フレームの描画時間です。そのシーンで最も良かった回の平均(mean)フレームタイムで、ドライバーが出したフレーム数にあたります。小さいほど速いです。横の「標準」は中央値のフレームで、ドライバーのフレームが2種類の速さで届く場合、平均よりかなり小さくなることがあります。回ごとの平均が記録される前に作られた2つのレポートは、中央値で比較します。回同士の差が15%を超えるシーンは除外します。「頭打ち」と付いたシーンは、同じ実行のほかの1つ以上のシーンとともに、ドライバーまたは画面のキューによってその平均フレームタイムに固定されていました。その時間はフレームの間隔を示すもので、ドライバーの描画の速さではないので、比較しません。「軽すぎ」と付いたシーンは、標準サイズ(1920×1080)で両方のドライバーとも8 ms未満で、画面側のフレームキューがチップよりもフレーム間隔を決めてしまいます。その場合は、より重い実行を比較します。_2160pで終わる行は3840×2160で描画したシーン、compute_nbody_2xは粒子を2倍にしたシーンです。「速い」と「遅い」は、Qualcomm Technologies Inc. Adreno Vulkan Driverに対するturnip_faux123_v1.1.9-rc14を表します。「純正との映像比較」は、シーンごとの固定した1フレームを粗い色の格子で比べます(0は同一、40を超えると別の映像)。これで、描画されなかったシーンを見つけます。両方のレポートに細かい64x36の格子がある場合、2つ目の数値は2,304セルのうち255段階で4を超えて違うセルの数で、「最大」は1セルの最大の差です。これで、ほかは一致している映像の小さな描画エラーを見つけます。16x9と付いた行は、細かい格子ができる前のレポートのものです。「起動」は、そのシーンのプロセス起動のうち、計測した回に到達した数です。「比較不可」と付いたGPUクロックは、2回の計測の間でデバイスの最大値の5%を超えて差がありました。

技術的な違い(Vulkan)

turnip_faux123_v1.1.9-rc14だけにある拡張機能(69)
  • 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_swapchain_maintenance1
  • 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_swapchain_mutable_format
  • 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
Qualcomm Technologies Inc. Adreno Vulkan Driverだけにある拡張機能(8)
  • VK_EXT_astc_decode_mode
  • VK_EXT_blend_operation_advanced
  • VK_EXT_fragment_density_map2
  • VK_KHR_shared_presentable_image
  • VK_QCOM_render_pass_store_ops
  • VK_QCOM_render_pass_transform
  • VK_QCOM_rotated_copy_commands
  • VK_QCOM_tile_properties
差があるコア機能(23)
multiviewGeometryShader Vulkan 1.1非対応 → 成功
protectedMemory Vulkan 1.1成功 → 非対応
shaderBufferInt64Atomics Vulkan 1.2非対応 → 成功
shaderInputAttachmentArrayDynamicIndexing Vulkan 1.2成功 → 非対応
shaderInputAttachmentArrayNonUniformIndexing Vulkan 1.2成功 → 非対応
shaderOutputLayer Vulkan 1.2非対応 → 成功
shaderOutputViewportIndex Vulkan 1.2非対応 → 成功
bresenhamLines Vulkan 1.4非対応 → 成功
dynamicRenderingLocalRead Vulkan 1.4非対応 → 成功
globalPriorityQuery Vulkan 1.4非対応 → 成功
hostImageCopy Vulkan 1.4非対応 → 成功
indexTypeUint8 Vulkan 1.4非対応 → 成功
maintenance5 Vulkan 1.4非対応 → 成功
maintenance6 Vulkan 1.4非対応 → 成功
pipelineRobustness Vulkan 1.4非対応 → 成功
pushDescriptor Vulkan 1.4非対応 → 成功
rectangularLines Vulkan 1.4非対応 → 成功
shaderExpectAssume Vulkan 1.4非対応 → 成功
shaderFloatControls2 Vulkan 1.4非対応 → 成功
shaderSubgroupRotate Vulkan 1.4非対応 → 成功
shaderSubgroupRotateClustered Vulkan 1.4非対応 → 成功
vertexAttributeInstanceRateDivisor Vulkan 1.4非対応 → 成功
vertexAttributeInstanceRateZeroDivisor Vulkan 1.4非対応 → 成功
差がある制限(18)
上限純正カスタム
bufferImageGranularity164
sparseAddressSpaceSize562949953421311274877906944
maxPerStageResources5033164816777216
maxDescriptorSetUniformBuffersDynamic3216
maxDescriptorSetStorageBuffersDynamic168
maxVertexInputAttributeOffset40964095
maxGeometryInputComponents12864
maxGeometryOutputVertices1024256
maxGeometryTotalOutputComponents1310721024
maxFragmentInputComponents112128
maxComputeWorkGroupInvocations10242048
minMemoryMapAlignment644096
minStorageBufferOffsetAlignment644
maxFramebufferLayers20481024
discreteQueuePriorities32
optimalBufferCopyOffsetAlignment64128
optimalBufferCopyRowPitchAlignment64128
nonCoherentAtomSize164
片方のドライバーだけが対応するフォーマット(追加31、欠落1)

turnip_faux123_v1.1.9-rc14のみ:

  • 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

Qualcomm Technologies Inc. Adreno Vulkan Driverのみ:

  • G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16