radv-xclipse-26.3.0-devel-313870e vs Samsung Proprietary driver
Samsung Xclipse 920 (Samsung Galaxy S22, Samsung Galaxy S23 FE, Samsung Galaxy S24 FE). 最初に挙げたドライバーを、2番目のドライバー(ベースライン)と比べています。
純正Samsung Proprietary driver
vsカスタムradv-xclipse-26.3.0-devel-313870e
グラフィックスのシステムバージョン(Vulkan)1.3.279 → 1.4.358
追加機能(拡張機能)146 → 228+87 -5
チェックに成功した機能(検証済み)49 → 51radv-xclipse-26.3.0-devel-313870eでのみ成功 3 Samsung Proprietary driverでのみ成功 1
速度テストのシーン(ベンチマーク)共通のシーンなし
各ドライバーが動かせそうなゲーム(機能リストからの目安): 緑は動く見込み、黄は動くかも、橙は厳しい、赤は動かない
純正DX92002+DX102006+DX112009+DX122015+Switch
カスタムDX92002+DX102006+DX112009+DX122015+Switch
Samsung Proprietary driverの詳細 radv-xclipse-26.3.0-devel-313870eの詳細
結果が異なる機能チェック(13)
| 機能 | 純正 | カスタム | 変化 |
|---|---|---|---|
| transformFeedback | 成功 | 失敗 | 欠落 |
| floatRepresentation | 非対応 | 成功 | 追加 |
| extendedDynamicState2LogicOp | 非対応 | 成功 | 追加 |
| textureCompressionBC | 非対応 | 成功 | 追加 |
| depthBiasControl | 非対応 | 未テスト | 変更あり |
| depthBiasExact | 非対応 | 未テスト | 変更あり |
| leastRepresentableValueForceUnormRepresentation | 非対応 | 未テスト | 変更あり |
| extendedDynamicState2PatchControlPoints | 非対応 | 未テスト | 変更あり |
| extendedDynamicState3AlphaToOneEnable | 非対応 | 未テスト | 変更あり |
| extendedDynamicState3ExtraPrimitiveOverestimationSize | 未テスト | 非対応 | 変更あり |
| shaderFloat64 | 非対応 | 未テスト | 変更あり |
| shaderResourceMinLod | 非対応 | 未テスト | 変更あり |
| shaderResourceResidency | 非対応 | 未テスト | 変更あり |
速度テストのシーン(ベンチマーク)
どちらのドライバーにも、有効な速度テスト(ベンチマークレポート)がまだありません。
技術的な違い(Vulkan)
radv-xclipse-26.3.0-devel-313870eだけにある拡張機能(87)
- VK_AMD_device_coherent_memory
- VK_AMD_texture_gather_bias_lod
- VK_EXT_attachment_feedback_loop_dynamic_state
- VK_EXT_custom_resolve
- VK_EXT_depth_bias_control
- VK_EXT_depth_clamp_control
- VK_EXT_descriptor_heap
- VK_EXT_device_generated_commands
- VK_EXT_discard_rectangles
- VK_EXT_dynamic_rendering_unused_attachments
- VK_EXT_fragment_shader_interlock
- VK_EXT_host_image_copy
- VK_EXT_image_compression_control
- VK_EXT_image_sliced_view_of_3d
- VK_EXT_image_view_min_lod
- VK_EXT_legacy_vertex_attributes
- VK_EXT_map_memory_placed
- VK_EXT_memory_priority
- VK_EXT_mesh_shader
- VK_EXT_multi_draw
- VK_EXT_multisampled_render_to_single_sampled
- VK_EXT_mutable_descriptor_type
- VK_EXT_nested_command_buffer
- VK_EXT_pci_bus_info
- VK_EXT_pipeline_library_group_handles
- VK_EXT_pipeline_robustness
- VK_EXT_primitive_restart_index
- VK_EXT_primitives_generated_query
- VK_EXT_sampler_filter_minmax
- VK_EXT_shader_atomic_float
- VK_EXT_shader_atomic_float2
- VK_EXT_shader_object
- VK_EXT_shader_replicated_composites
- VK_EXT_shader_uniform_buffer_unsized_array
- VK_EXT_ycbcr_2plane_444_formats
- VK_EXT_zero_initialize_device_memory
- VK_GOOGLE_user_type
- VK_INTEL_shader_integer_functions2
- VK_KHR_calibrated_timestamps
- VK_KHR_compute_shader_derivatives
- VK_KHR_copy_memory_indirect
- VK_KHR_depth_clamp_zero_one
- VK_KHR_device_address_commands
- VK_KHR_device_fault
- VK_KHR_dynamic_rendering
- VK_KHR_dynamic_rendering_local_read
- VK_KHR_extended_flags
- VK_KHR_format_feature_flags2
- VK_KHR_fragment_shader_barycentric
- VK_KHR_global_priority
- VK_KHR_index_type_uint8
- VK_KHR_internally_synchronized_queues
- VK_KHR_line_rasterization
- VK_KHR_load_store_op_none
- VK_KHR_maintenance10
- VK_KHR_maintenance11
- VK_KHR_maintenance4
- VK_KHR_maintenance5
- VK_KHR_maintenance6
- VK_KHR_maintenance7
- VK_KHR_maintenance8
- VK_KHR_maintenance9
- VK_KHR_map_memory2
- VK_KHR_performance_query
- VK_KHR_pipeline_binary
- VK_KHR_ray_tracing_maintenance1
- VK_KHR_ray_tracing_position_fetch
- VK_KHR_robustness2
- VK_KHR_shader_abort
- VK_KHR_shader_constant_data
- VK_KHR_shader_expect_assume
- VK_KHR_shader_float_controls2
- VK_KHR_shader_fma
- VK_KHR_shader_maximal_reconvergence
- VK_KHR_shader_quad_control
- VK_KHR_shader_relaxed_extended_instruction
- VK_KHR_shader_subgroup_rotate
- VK_KHR_shader_subgroup_uniform_control_flow
- VK_KHR_shader_untyped_pointers
- VK_KHR_vertex_attribute_divisor
- VK_MESA_image_alignment_control
- VK_NV_compute_shader_derivatives
- VK_NV_geometry_shader_passthrough
- VK_NV_viewport_array2
- VK_NV_viewport_swizzle
- VK_VALVE_mutable_descriptor_type
- VK_VALVE_shader_mixed_float_dot_product
Samsung Proprietary driverだけにある拡張機能(5)
- VK_AMD_shader_fragment_mask
- VK_AMD_shader_info
- VK_EXT_frame_boundary
- VK_KHR_shared_presentable_image
- VK_SEC_amigo_profiling
差があるコア機能(22)
| protectedMemory | 成功 → 非対応 |
| storagePushConstant16 | 非対応 → 成功 |
| samplerFilterMinmax | 非対応 → 成功 |
| storagePushConstant8 | 非対応 → 成功 |
| bresenhamLines | 非対応 → 成功 |
| dynamicRenderingLocalRead | 非対応 → 成功 |
| globalPriorityQuery | 非対応 → 成功 |
| hostImageCopy | 非対応 → 成功 |
| indexTypeUint8 | 非対応 → 成功 |
| maintenance5 | 非対応 → 成功 |
| maintenance6 | 非対応 → 成功 |
| pipelineRobustness | 非対応 → 成功 |
| pushDescriptor | 非対応 → 成功 |
| rectangularLines | 非対応 → 成功 |
| shaderExpectAssume | 非対応 → 成功 |
| shaderFloatControls2 | 非対応 → 成功 |
| shaderSubgroupRotate | 非対応 → 成功 |
| shaderSubgroupRotateClustered | 非対応 → 成功 |
| smoothLines | 非対応 → 成功 |
| stippledBresenhamLines | 非対応 → 成功 |
| vertexAttributeInstanceRateDivisor | 非対応 → 成功 |
| vertexAttributeInstanceRateZeroDivisor | 非対応 → 成功 |
差がある制限(46)
| 上限 | 純正 | カスタム |
|---|---|---|
| maxTexelBufferElements | 4294967295 | 536870912 |
| maxPushConstantsSize | 128 | 256 |
| maxSamplerAllocationCount | 1048576 | 65536 |
| sparseAddressSpaceSize | 140707423584256 | 140737488355328 |
| maxPerStageDescriptorSamplers | 4294967295 | 8388606 |
| maxPerStageDescriptorUniformBuffers | 4294967295 | 8388606 |
| maxPerStageDescriptorStorageBuffers | 4294967295 | 8388606 |
| maxPerStageDescriptorSampledImages | 4294967295 | 8388606 |
| maxPerStageDescriptorStorageImages | 4294967295 | 8388606 |
| maxPerStageDescriptorInputAttachments | 4294967295 | 8388606 |
| maxPerStageResources | 4294967295 | 8388606 |
| maxDescriptorSetSamplers | 4294967295 | 8388606 |
| maxDescriptorSetUniformBuffers | 4294967295 | 8388606 |
| maxDescriptorSetUniformBuffersDynamic | 24 | 16 |
| maxDescriptorSetStorageBuffers | 4294967295 | 8388606 |
| maxDescriptorSetSampledImages | 4294967295 | 8388606 |
| maxDescriptorSetStorageImages | 4294967295 | 8388606 |
| maxDescriptorSetInputAttachments | 4294967295 | 8388606 |
| maxVertexInputAttributes | 64 | 32 |
| maxVertexInputBindingStride | 16383 | 2048 |
| maxGeometryShaderInvocations | 126 | 32 |
| maxGeometryInputComponents | 128 | 64 |
| maxGeometryOutputVertices | 1023 | 256 |
| maxGeometryTotalOutputComponents | 4095 | 1024 |
| maxFragmentCombinedOutputResources | 4294967295 | 8388606 |
| maxComputeSharedMemorySize | 32768 | 65536 |
| maxComputeWorkGroupCount | 65535, 65535, 65535 | 4294967295, 65535, 65535 |
| maxSamplerLodBias | 15.9961 | 16 |
| minMemoryMapAlignment | 64 | 4096 |
| minUniformBufferOffsetAlignment | 16 | 4 |
| minTexelOffset | -64 | -32 |
| maxTexelOffset | 63 | 31 |
| maxInterpolationOffset | 1 | 2 |
| maxFramebufferLayers | 8192 | 1024 |
| framebufferColorSampleCounts | 7 | 15 |
| framebufferDepthSampleCounts | 7 | 15 |
| framebufferStencilSampleCounts | 7 | 15 |
| framebufferNoAttachmentsSampleCounts | 7 | 15 |
| sampledImageColorSampleCounts | 7 | 15 |
| sampledImageIntegerSampleCounts | 7 | 15 |
| sampledImageDepthSampleCounts | 7 | 15 |
| sampledImageStencilSampleCounts | 7 | 15 |
| storageImageSampleCounts | 7 | 15 |
| discreteQueuePriorities | 3 | 2 |
| lineWidthRange | 0, 8191.88 | 0, 8 |
| nonCoherentAtomSize | 128 | 64 |
片方のドライバーだけが対応するフォーマット(追加33、欠落5)
- A1B5G5R5_UNORM_PACK16
- A8_UNORM
- B8G8R8_SINT
- B8G8R8_SNORM
- B8G8R8_SSCALED
- B8G8R8_UINT
- B8G8R8_UNORM
- B8G8R8_USCALED
- BC4_SNORM_BLOCK
- BC4_UNORM_BLOCK
- BC5_SNORM_BLOCK
- BC5_UNORM_BLOCK
- BC6H_SFLOAT_BLOCK
- BC6H_UFLOAT_BLOCK
- BC7_SRGB_BLOCK
- BC7_UNORM_BLOCK
- G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16
- G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16
- G16_B16R16_2PLANE_422_UNORM
- G16_B16R16_2PLANE_444_UNORM
- G16_B16_R16_3PLANE_420_UNORM
- G16_B16_R16_3PLANE_422_UNORM
- G16_B16_R16_3PLANE_444_UNORM
- G8_B8R8_2PLANE_444_UNORM
- G8_B8_R8_3PLANE_422_UNORM
- G8_B8_R8_3PLANE_444_UNORM
- R10X6G10X6_UNORM_2PACK16
- R10X6_UNORM_PACK16
- R12X4G12X4_UNORM_2PACK16
- R12X4_UNORM_PACK16
- R16G16B16_SFLOAT
- R16G16B16_SINT
- R16G16B16_UINT
- B8G8R8G8_422_UNORM
- G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
- G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16
- G8B8G8R8_422_UNORM
- R4G4_UNORM_PACK8