FauxVkDB
日本語
ホーム / Mali-G52 / 比較

PanVK-Droid.0.3.5 vs malisx2-0.2.3-b85d5f7f36

Mali-G52 (CHUWI HiPad-Air, HONOR X5c, HONOR X5c, Infinix HOT 60i, Oppo A18, Oppo A38, realme RMX3710, Redmi 12, Redmi 12C, Redmi 14C, Redmi 15C, TECNO POVA 3, TECNO SPARK 20, Xiaomi 24049RN28L). 最初に挙げたドライバーを、2番目のドライバー(ベースライン)と比べています。

純正malisx2-0.2.3-b85d5f7f36v1.r44p1-malisx2.0.2.3.s22f19f5370b1
vs
カスタムPanVK-Droid.0.3.5v1.r49p1-03bet0.19498e0ae1d5dac223383c39a2e58f04
グラフィックスのシステムバージョン(Vulkan)1.1.363 → 1.3.278
追加機能(拡張機能)15 → 131+118 -2
チェックに成功した機能(検証済み)22 → 34PanVK-Droid.0.3.5でのみ成功 14 malisx2-0.2.3-b85d5f7f36でのみ成功 2
速度テストのシーン(ベンチマーク)速い 2 遅い 0全体で29% 速い(幾何平均)
各ドライバーが動かせそうなゲーム(機能リストからの目安): 緑は動く見込み、黄は動くかも、橙は厳しい、赤は動かない
純正DX92002+DX102006+DX112009+DX122015+Switch
カスタムDX92002+DX102006+DX112009+DX122015+Switch
  • compute_nbody28% 速い
  • pipeline_barriers30% 速い

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

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

毎回は起動しなかったもの: hdr_2160p (純正 0/3, カスタム 3/3), subpasses (純正 0/3, カスタム 3/3).

malisx2-0.2.3-b85d5f7f36の詳細 PanVK-Droid.0.3.5の詳細

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

機能malisx2-0.2.3-b85d5f7f36PanVK-Droid.0.3.5変化
push.max_combined_image_samplers
core
成功非対応欠落
push.max_uniform_buffers
core
成功非対応欠落
borderColorSwizzle
VK_EXT_border_color_swizzle
非対応成功追加
customBorderColors
VK_EXT_custom_border_color
非対応成功追加
extendedDynamicState
VK_EXT_extended_dynamic_state
非対応成功追加
extendedDynamicState2
VK_EXT_extended_dynamic_state2
非対応成功追加
inlineUniformBlock
VK_EXT_inline_uniform_block
非対応成功追加
transformFeedback
VK_EXT_transform_feedback
非対応成功追加
vertexInputDynamicState
VK_EXT_vertex_input_dynamic_state
非対応成功追加
shaderBufferInt64Atomics
VK_KHR_shader_atomic_int64
非対応成功追加
timelineSemaphore
VK_KHR_timeline_semaphore
非対応成功追加
drawIndirectFirstInstance
VkPhysicalDeviceFeatures
非対応成功追加
geometryShader
VkPhysicalDeviceFeatures
非対応成功追加
occlusionQueryPrecise
VkPhysicalDeviceFeatures
失敗成功追加
tessellationShader
VkPhysicalDeviceFeatures
非対応成功追加
core.msaa_resolve
core
失敗成功追加
borderColorSwizzleFromImage
VK_EXT_border_color_swizzle
非対応未テスト変更あり
customBorderColorWithoutFormat
VK_EXT_custom_border_color
非対応未テスト変更あり
extendedDynamicState2PatchControlPoints
VK_EXT_extended_dynamic_state2
非対応未テスト変更あり
extendedDynamicState3LineRasterizationMode
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3ProvokingVertexMode
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3SampleMask
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
extendedDynamicState3TessellationDomainOrigin
VK_EXT_extended_dynamic_state3
非対応未テスト変更あり
descriptorBindingInlineUniformBlockUpdateAfterBind
VK_EXT_inline_uniform_block
非対応未テスト変更あり
shaderSharedInt64Atomics
VK_KHR_shader_atomic_int64
非対応未テスト変更あり
depthClamp
VkPhysicalDeviceFeatures
未テスト非対応変更あり
logicOp
VkPhysicalDeviceFeatures
非対応未テスト変更あり
shaderClipDistance
VkPhysicalDeviceFeatures
未テスト非対応変更あり
shaderInt64
VkPhysicalDeviceFeatures
非対応未テスト変更あり
wideLines
VkPhysicalDeviceFeatures
非対応未テスト変更あり

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

シーンmalisx2-0.2.3-b85d5f7f36 msPanVK-Droid.0.3.5 ms差起動GPUクロック(MHz)純正との映像比較
compute_nbody103.07 標準 103.0780.79 標準 81.5028% 速い3中3 vs 3中3? vs ? クロック不明大きな差なし 0.0 小さな差なし 最大 0.0 64x36
hdr_2160pn/a173.86 標準 173.13片方のみ3中0 vs 3中3? vs ? クロック不明未チェック
oit_linked_lists73.07n/a片方のみ3中3 vs 3中3? vs ? クロック不明大きな差なし 0.0 小さな差なし 最大 0.0 64x36
pipeline_barriers86.77 標準 88.9966.50 標準 67.6630% 速い3中3 vs 3中3? vs ? クロック不明大きな差なし 9.9 小さな差が1470箇所 最大 63.3 64x36
subpassesn/a127.93 標準 128.69片方のみ3中0 vs 3中3? vs ? クロック不明未チェック

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

技術的な違い(Vulkan)

PanVK-Droid.0.3.5だけにある拡張機能(118)
  • VK_ANDROID_external_format_resolve
  • VK_ANDROID_external_memory_android_hardware_buffer
  • VK_ARM_shader_core_builtins
  • VK_ARM_shader_core_properties
  • VK_EXT_4444_formats
  • VK_EXT_astc_decode_mode
  • VK_EXT_border_color_swizzle
  • VK_EXT_calibrated_timestamps
  • VK_EXT_custom_border_color
  • VK_EXT_debug_marker
  • VK_EXT_device_address_binding_report
  • VK_EXT_device_memory_report
  • VK_EXT_dynamic_rendering_unused_attachments
  • VK_EXT_extended_dynamic_state
  • VK_EXT_extended_dynamic_state2
  • VK_EXT_extended_dynamic_state3
  • VK_EXT_external_memory_acquire_unmodified
  • VK_EXT_external_memory_dma_buf
  • VK_EXT_frame_boundary
  • VK_EXT_global_priority
  • VK_EXT_global_priority_query
  • VK_EXT_host_query_reset
  • VK_EXT_image_2d_view_of_3d
  • VK_EXT_image_compression_control
  • VK_EXT_image_compression_control_swapchain
  • VK_EXT_image_drm_format_modifier
  • VK_EXT_image_robustness
  • VK_EXT_image_sliced_view_of_3d
  • VK_EXT_index_type_uint8
  • VK_EXT_inline_uniform_block
  • VK_EXT_legacy_dithering
  • VK_EXT_load_store_op_none
  • VK_EXT_multisampled_render_to_single_sampled
  • VK_EXT_pipeline_creation_cache_control
  • VK_EXT_pipeline_creation_feedback
  • VK_EXT_pipeline_protected_access
  • VK_EXT_pipeline_robustness
  • VK_EXT_primitive_topology_list_restart
  • VK_EXT_primitives_generated_query
  • VK_EXT_private_data
  • VK_EXT_queue_family_foreign
  • VK_EXT_rgba10x6_formats
  • VK_EXT_scalar_block_layout
  • VK_EXT_separate_stencil_usage
  • VK_EXT_shader_demote_to_helper_invocation
  • VK_EXT_shader_image_atomic_int64
  • VK_EXT_shader_subgroup_ballot
  • VK_EXT_shader_subgroup_vote
  • VK_EXT_shader_tile_image
  • VK_EXT_subgroup_size_control
  • VK_EXT_subpass_merge_feedback
  • VK_EXT_texel_buffer_alignment
  • VK_EXT_texture_compression_astc_hdr
  • VK_EXT_tooling_info
  • VK_EXT_transform_feedback
  • VK_EXT_vertex_input_dynamic_state
  • VK_GOOGLE_decorate_string
  • VK_GOOGLE_user_type
  • VK_KHR_16bit_storage
  • VK_KHR_8bit_storage
  • VK_KHR_bind_memory2
  • VK_KHR_buffer_device_address
  • VK_KHR_calibrated_timestamps
  • VK_KHR_copy_commands2
  • VK_KHR_create_renderpass2
  • VK_KHR_dedicated_allocation
  • VK_KHR_depth_stencil_resolve
  • VK_KHR_descriptor_update_template
  • VK_KHR_device_group
  • VK_KHR_dynamic_rendering
  • VK_KHR_dynamic_rendering_local_read
  • VK_KHR_external_fence
  • VK_KHR_external_memory
  • VK_KHR_external_memory_fd
  • VK_KHR_external_semaphore
  • VK_KHR_format_feature_flags2
  • VK_KHR_get_memory_requirements2
  • VK_KHR_global_priority
  • VK_KHR_image_format_list
  • VK_KHR_imageless_framebuffer
  • VK_KHR_index_type_uint8
  • VK_KHR_load_store_op_none
  • VK_KHR_maintenance1
  • VK_KHR_maintenance2
  • VK_KHR_maintenance3
  • VK_KHR_maintenance4
  • VK_KHR_maintenance5
  • VK_KHR_maintenance6
  • VK_KHR_map_memory2
  • VK_KHR_multiview
  • VK_KHR_relaxed_block_layout
  • VK_KHR_sampler_mirror_clamp_to_edge
  • VK_KHR_sampler_ycbcr_conversion
  • VK_KHR_separate_depth_stencil_layouts
  • VK_KHR_shader_atomic_int64
  • VK_KHR_shader_draw_parameters
  • VK_KHR_shader_expect_assume
  • VK_KHR_shader_float16_int8
  • VK_KHR_shader_float_controls
  • VK_KHR_shader_float_controls2
  • VK_KHR_shader_integer_dot_product
  • VK_KHR_shader_maximal_reconvergence
  • VK_KHR_shader_non_semantic_info
  • VK_KHR_shader_quad_control
  • VK_KHR_shader_subgroup_extended_types
  • VK_KHR_shader_subgroup_rotate
  • VK_KHR_shader_subgroup_uniform_control_flow
  • VK_KHR_shader_terminate_invocation
  • VK_KHR_shared_presentable_image
  • VK_KHR_spirv_1_4
  • VK_KHR_storage_buffer_storage_class
  • VK_KHR_synchronization2
  • VK_KHR_timeline_semaphore
  • VK_KHR_uniform_buffer_standard_layout
  • VK_KHR_variable_pointers
  • VK_KHR_vertex_attribute_divisor
  • VK_KHR_vulkan_memory_model
  • VK_KHR_zero_initialize_workgroup_memory
malisx2-0.2.3-b85d5f7f36だけにある拡張機能(2)
  • VK_EXT_memory_budget
  • VK_KHR_push_descriptor
差があるコア機能(45)
multiview Vulkan 1.1非対応 → 成功
samplerYcbcrConversion Vulkan 1.1非対応 → 成功
shaderDrawParameters Vulkan 1.1非対応 → 成功
storageBuffer16BitAccess Vulkan 1.1非対応 → 成功
storageInputOutput16 Vulkan 1.1非対応 → 成功
storagePushConstant16 Vulkan 1.1非対応 → 成功
uniformAndStorageBuffer16BitAccess Vulkan 1.1非対応 → 成功
variablePointers Vulkan 1.1非対応 → 成功
variablePointersStorageBuffer Vulkan 1.1非対応 → 成功
bufferDeviceAddress Vulkan 1.2非対応 → 成功
hostQueryReset Vulkan 1.2非対応 → 成功
imagelessFramebuffer Vulkan 1.2非対応 → 成功
samplerMirrorClampToEdge Vulkan 1.2非対応 → 成功
scalarBlockLayout Vulkan 1.2非対応 → 成功
separateDepthStencilLayouts Vulkan 1.2非対応 → 成功
shaderBufferInt64Atomics Vulkan 1.2非対応 → 成功
shaderFloat16 Vulkan 1.2非対応 → 成功
shaderInt8 Vulkan 1.2非対応 → 成功
shaderOutputViewportIndex Vulkan 1.2非対応 → 成功
shaderSharedInt64Atomics Vulkan 1.2非対応 → 成功
shaderSubgroupExtendedTypes Vulkan 1.2非対応 → 成功
storageBuffer8BitAccess Vulkan 1.2非対応 → 成功
storagePushConstant8 Vulkan 1.2非対応 → 成功
subgroupBroadcastDynamicId Vulkan 1.2非対応 → 成功
timelineSemaphore Vulkan 1.2非対応 → 成功
uniformAndStorageBuffer8BitAccess Vulkan 1.2非対応 → 成功
uniformBufferStandardLayout Vulkan 1.2非対応 → 成功
vulkanMemoryModel Vulkan 1.2非対応 → 成功
vulkanMemoryModelAvailabilityVisibilityChains Vulkan 1.2非対応 → 成功
vulkanMemoryModelDeviceScope Vulkan 1.2非対応 → 成功
computeFullSubgroups Vulkan 1.3非対応 → 成功
descriptorBindingInlineUniformBlockUpdateAfterBind Vulkan 1.3非対応 → 成功
dynamicRendering Vulkan 1.3非対応 → 成功
inlineUniformBlock Vulkan 1.3非対応 → 成功
maintenance4 Vulkan 1.3非対応 → 成功
pipelineCreationCacheControl Vulkan 1.3非対応 → 成功
privateData Vulkan 1.3非対応 → 成功
robustImageAccess Vulkan 1.3非対応 → 成功
shaderDemoteToHelperInvocation Vulkan 1.3非対応 → 成功
shaderIntegerDotProduct Vulkan 1.3非対応 → 成功
shaderTerminateInvocation Vulkan 1.3非対応 → 成功
shaderZeroInitializeWorkgroupMemory Vulkan 1.3非対応 → 成功
subgroupSizeControl Vulkan 1.3非対応 → 成功
synchronization2 Vulkan 1.3非対応 → 成功
textureCompressionASTC_HDR Vulkan 1.3非対応 → 成功
差がある制限(45)
上限malisx2-0.2.3-b85d5f7f36PanVK-Droid.0.3.5
maxSamplerAllocationCount40004294967295
maxPerStageDescriptorUniformBuffers223241
maxPerStageDescriptorStorageBuffers6435
maxPerStageDescriptorSampledImages208256
maxPerStageDescriptorStorageImages3221
maxPerStageResources664570
maxDescriptorSetSamplers65535768
maxDescriptorSetUniformBuffers2231446
maxDescriptorSetUniformBuffersDynamic1632
maxDescriptorSetStorageBuffers4096210
maxDescriptorSetStorageBuffersDynamic832
maxDescriptorSetSampledImages655351536
maxDescriptorSetStorageImages256126
maxVertexInputAttributes1632
maxVertexInputBindings1632
maxVertexInputAttributeOffset42949672952047
maxVertexInputBindingStride655352048
maxTessellationGenerationLevel064
maxTessellationPatchSize032
maxTessellationControlPerVertexInputComponents0128
maxTessellationControlPerVertexOutputComponents0128
maxTessellationControlPerPatchOutputComponents0120
maxTessellationControlTotalOutputComponents04096
maxTessellationEvaluationInputComponents0128
maxTessellationEvaluationOutputComponents0128
maxGeometryShaderInvocations032
maxGeometryInputComponents0128
maxGeometryOutputComponents0128
maxGeometryOutputVertices0256
maxGeometryTotalOutputComponents02048
maxFragmentDualSrcAttachments18
maxFragmentCombinedOutputResources436064
maxComputeWorkGroupCount65535, 65535, 655354294967295, 4294967295, 4294967295
maxInterpolationOffset0.50.4375
framebufferColorSampleCounts295
framebufferDepthSampleCounts295
framebufferStencilSampleCounts295
sampledImageColorSampleCounts295
sampledImageIntegerSampleCounts295
sampledImageDepthSampleCounts295
sampledImageStencilSampleCounts295
maxClipDistances80
maxCombinedClipAndCullDistances80
lineWidthRange1, 11, 4095.94
lineWidthGranularity00.0625
片方のドライバーだけが対応するフォーマット(追加34、欠落11)

PanVK-Droid.0.3.5のみ:

  • A1B5G5R5_UNORM_PACK16
  • A4B4G4R4_UNORM_PACK16
  • A4R4G4B4_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
  • B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
  • B5G5R5A1_UNORM_PACK16
  • B8G8R8G8_422_UNORM
  • B8G8R8_SNORM
  • G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
  • G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
  • G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
  • G8B8G8R8_422_UNORM
  • G8_B8R8_2PLANE_420_UNORM
  • G8_B8R8_2PLANE_422_UNORM
  • G8_B8_R8_3PLANE_420_UNORM
  • G8_B8_R8_3PLANE_422_UNORM
  • R4G4_UNORM_PACK8
  • R5G5B5A1_UNORM_PACK16
  • R64_SINT
  • R64_UINT

malisx2-0.2.3-b85d5f7f36のみ:

  • A2R10G10B10_SNORM_PACK32
  • BC1_RGBA_SRGB_BLOCK
  • BC1_RGBA_UNORM_BLOCK
  • BC1_RGB_SRGB_BLOCK
  • BC1_RGB_UNORM_BLOCK
  • BC2_SRGB_BLOCK
  • BC2_UNORM_BLOCK
  • BC3_SRGB_BLOCK
  • BC3_UNORM_BLOCK
  • R10X6G10X6_UNORM_2PACK16
  • R10X6_UNORM_PACK16