panvk_faux123_v1.1.3 vs Mali-G57 MC2
Di Mali-G1-Ultra MC12 (Infinix HOT 50 Pro, Infinix NOTE 30, Infinix NOTE 40 Pro, itel RS4, Oppo A6 5G, Oppo A6t 5G, Oppo Find X9s Pro, realme RMX5111, REDMI 15C 5G, Redmi Note 10 5G, Redmi Note 13 5G, Redmi Note 13 Pro, Redmi Pad 2, Samsung Galaxy A07, Samsung Galaxy A07, Samsung Galaxy A15 5G, Samsung Galaxy A16, TCL 50 XE 5G). Driver yang disebut pertama dibandingkan dengan yang kedua, yang menjadi baseline.
- compute_nbody25% lebih cepat
- hdr_2160p18% lebih cepat
- oit_linked_lists2% lebih lambat
- pipeline_barriers19% lebih cepat
- subpasses27% lebih cepat
Area kecil gambar berbeda dari driver bawaan di 1 scene (pipeline_barriers: 1383 dari 2304 sel). Gambar secara keseluruhan cocok, jadi ini kesalahan render lokal, bukan scene yang berbeda.
Detail Mali-G57 MC2 Detail panvk_faux123_v1.1.3
Pemeriksaan fitur yang berbeda (64)
| Fitur | Bawaan | Kustom | Perubahan |
|---|---|---|---|
| borderColorSwizzle | tidak didukung | lolos | bertambah |
| colorWriteEnable | tidak didukung | lolos | bertambah |
| depthClipControl | tidak didukung | lolos | bertambah |
| extendedDynamicState | tidak didukung | lolos | bertambah |
| extendedDynamicState2 | tidak didukung | lolos | bertambah |
| extendedDynamicState2LogicOp | tidak didukung | lolos | bertambah |
| extendedDynamicState3ColorBlendEnable | tidak didukung | lolos | bertambah |
| extendedDynamicState3ColorBlendEquation | tidak didukung | lolos | bertambah |
| extendedDynamicState3ColorWriteMask | tidak didukung | lolos | bertambah |
| extendedDynamicState3DepthClampEnable | tidak didukung | lolos | bertambah |
| extendedDynamicState3LogicOpEnable | tidak didukung | lolos | bertambah |
| robustBufferAccess2 | tidak didukung | lolos | bertambah |
| robustImageAccess2 | tidak didukung | lolos | bertambah |
| vertexInputDynamicState | tidak didukung | lolos | bertambah |
| shaderBufferInt64Atomics | tidak didukung | lolos | bertambah |
| timelineSemaphore | gagal | lolos | bertambah |
| depthClamp | belum diuji | lolos | bertambah |
| largePoints | belum diuji | lolos | bertambah |
| multiDrawIndirect | tidak didukung | lolos | bertambah |
| multiViewport | tidak didukung | lolos | bertambah |
| textureCompressionBC | tidak didukung | lolos | bertambah |
| compat.helper_loop_terminator | belum diuji | lolos | bertambah |
| compat.nested_map | belum diuji | lolos | bertambah |
| core.blend_advertised_formats | belum diuji | lolos | bertambah |
| core.compute_big_stack | belum diuji | lolos | bertambah |
| core.host_coherent_readback | belum diuji | lolos | bertambah |
| core.mrt_partial_kill | belum diuji | lolos | bertambah |
| core.ubo_update_buffer | belum diuji | lolos | bertambah |
| core.ubo_written_after_record | belum diuji | lolos | bertambah |
| core.varying_subset | belum diuji | lolos | bertambah |
| mem.image_padding | belum diuji | lolos | bertambah |
| perf.fb_local_barrier_large_draws | belum diuji | lolos | bertambah |
| perf.fb_local_barrier_overdraw | belum diuji | lolos | bertambah |
| push.max_combined_image_samplers | tidak didukung | lolos | bertambah |
| push.max_uniform_buffers | tidak didukung | lolos | bertambah |
| stage.geometry_max_output | belum diuji | lolos | bertambah |
| stage.geometry_point_size | belum diuji | lolos | bertambah |
| stress.multi_draw_indirect_large | tidak didukung | lolos | bertambah |
| stress.scratch_per_batch | belum diuji | lolos | bertambah |
| sync.first_submit_clear_then_compute | belum diuji | lolos | bertambah |
| borderColorSwizzleFromImage | tidak didukung | belum diuji | berubah |
| depthBiasControl | tidak didukung | belum diuji | berubah |
| depthBiasExact | tidak didukung | belum diuji | berubah |
| extendedDynamicState2PatchControlPoints | tidak didukung | belum diuji | berubah |
| extendedDynamicState3AlphaToCoverageEnable | tidak didukung | belum diuji | berubah |
| extendedDynamicState3DepthClipEnable | tidak didukung | belum diuji | berubah |
| extendedDynamicState3LineRasterizationMode | tidak didukung | belum diuji | berubah |
| extendedDynamicState3RasterizationSamples | tidak didukung | belum diuji | berubah |
| extendedDynamicState3SampleMask | tidak didukung | belum diuji | berubah |
| nullDescriptor | tidak didukung | belum diuji | berubah |
| geometryStreams | tidak didukung | belum diuji | berubah |
| shaderSharedInt64Atomics | tidak didukung | belum diuji | berubah |
| depthBounds | tidak didukung | belum diuji | berubah |
| dualSrcBlend | tidak didukung | belum diuji | berubah |
| fillModeNonSolid | tidak didukung | belum diuji | berubah |
| logicOp | tidak didukung | belum diuji | berubah |
| pipelineStatisticsQuery | tidak didukung | belum diuji | berubah |
| shaderClipDistance | tidak didukung | belum diuji | berubah |
| shaderCullDistance | tidak didukung | belum diuji | berubah |
| shaderInt64 | tidak didukung | belum diuji | berubah |
| shaderTessellationAndGeometryPointSize | tidak didukung | belum diuji | berubah |
| variableMultisampleRate | tidak didukung | belum diuji | berubah |
| vertexPipelineStoresAndAtomics | tidak didukung | belum diuji | berubah |
| wideLines | tidak didukung | belum diuji | berubah |
Scene tes kecepatan (benchmark)
Kedua driver tidak diukur di kumpulan model perangkat yang sama. Frame time dari perangkat yang berbeda tidak membandingkan driver, jadi baca angka ini dengan mempertimbangkan hal itu.
| Scene | Bawaan ms | Kustom ms | Selisih | Mulai | Clock GPU, MHz | Gambar vs bawaan |
|---|---|---|---|---|---|---|
| compute_nbody | 59.48 | 47.75 | 25% lebih cepat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar tidak ada perbedaan kecil |
| hdr_2160p | 137.38 | 116.34 | 18% lebih cepat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar tidak ada perbedaan kecil |
| oit_linked_lists | 30.37 | 31.15 | 2% lebih lambat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar tidak ada perbedaan kecil |
| pipeline_barriers | 30.77 | 25.90 | 19% lebih cepat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak ada perbedaan besar berbeda di 1383 area kecil |
| subpasses | 89.02 | 70.07 | 27% lebih cepat | 3 dari 3 vs 3 dari 3 | ? vs ? | tidak diperiksa |
Perbedaan teknis (Vulkan)
Ekstensi yang hanya ada di panvk_faux123_v1.1.3 (113)
- VK_ARM_scheduling_controls
- VK_ARM_shader_core_builtins
- VK_ARM_shader_core_properties
- VK_EXT_attachment_feedback_loop_dynamic_state
- VK_EXT_attachment_feedback_loop_layout
- VK_EXT_border_color_swizzle
- VK_EXT_buffer_device_address
- VK_EXT_color_write_enable
- VK_EXT_conditional_rendering
- VK_EXT_debug_marker
- VK_EXT_depth_bias_control
- VK_EXT_depth_clamp_control
- VK_EXT_depth_clamp_zero_one
- VK_EXT_depth_clip_control
- VK_EXT_depth_clip_enable
- VK_EXT_device_address_binding_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_global_priority_query
- VK_EXT_graphics_pipeline_library
- VK_EXT_hdr_metadata
- VK_EXT_host_image_copy
- VK_EXT_image_2d_view_of_3d
- VK_EXT_image_compression_control
- VK_EXT_image_sliced_view_of_3d
- VK_EXT_image_view_min_lod
- VK_EXT_legacy_dithering
- VK_EXT_load_store_op_none
- VK_EXT_map_memory_placed
- VK_EXT_memory_budget
- VK_EXT_multisampled_render_to_single_sampled
- VK_EXT_mutable_descriptor_type
- VK_EXT_non_seamless_cube_map
- VK_EXT_physical_device_drm
- VK_EXT_pipeline_creation_cache_control
- VK_EXT_pipeline_creation_feedback
- VK_EXT_pipeline_robustness
- VK_EXT_present_timing
- VK_EXT_primitive_topology_list_restart
- VK_EXT_primitives_generated_query
- VK_EXT_private_data
- VK_EXT_robustness2
- VK_EXT_shader_atomic_float
- VK_EXT_shader_demote_to_helper_invocation
- VK_EXT_shader_image_atomic_int64
- VK_EXT_shader_module_identifier
- VK_EXT_shader_replicated_composites
- VK_EXT_shader_stencil_export
- VK_EXT_shader_tile_image
- VK_EXT_shader_uniform_buffer_unsized_array
- VK_EXT_swapchain_maintenance1
- VK_EXT_texel_buffer_alignment
- VK_EXT_tooling_info
- VK_EXT_vertex_attribute_divisor
- VK_EXT_vertex_input_dynamic_state
- VK_EXT_zero_initialize_device_memory
- VK_GOOGLE_decorate_string
- VK_GOOGLE_hlsl_functionality1
- VK_GOOGLE_user_type
- VK_KHR_calibrated_timestamps
- VK_KHR_compute_shader_derivatives
- VK_KHR_copy_commands2
- VK_KHR_depth_clamp_zero_one
- VK_KHR_draw_indirect_count
- VK_KHR_dynamic_rendering
- VK_KHR_dynamic_rendering_local_read
- VK_KHR_format_feature_flags2
- 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_maintenance4
- VK_KHR_maintenance5
- VK_KHR_maintenance6
- VK_KHR_maintenance7
- VK_KHR_maintenance8
- VK_KHR_maintenance9
- VK_KHR_map_memory2
- VK_KHR_pipeline_binary
- VK_KHR_pipeline_executable_properties
- VK_KHR_pipeline_library
- VK_KHR_present_id
- VK_KHR_present_id2
- VK_KHR_present_wait
- VK_KHR_present_wait2
- VK_KHR_push_descriptor
- VK_KHR_robustness2
- VK_KHR_shader_atomic_int64
- VK_KHR_shader_clock
- VK_KHR_shader_constant_data
- VK_KHR_shader_expect_assume
- VK_KHR_shader_float_controls2
- VK_KHR_shader_fma
- VK_KHR_shader_integer_dot_product
- 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_terminate_invocation
- VK_KHR_shader_untyped_pointers
- VK_KHR_swapchain_maintenance1
- VK_KHR_swapchain_mutable_format
- VK_KHR_synchronization2
- VK_KHR_unified_image_layouts
- VK_KHR_vertex_attribute_divisor
- VK_KHR_workgroup_memory_explicit_layout
- VK_KHR_zero_initialize_workgroup_memory
- VK_VALVE_mutable_descriptor_type
Ekstensi yang hanya ada di Mali-G57 MC2 (3)
- VK_EXT_fragment_density_map
- VK_EXT_fragment_density_map2
- VK_KHR_shared_presentable_image
Fitur inti yang berbeda (67)
| multiview | tidak didukung sampai lolos |
| samplerYcbcrConversion | tidak didukung sampai lolos |
| shaderDrawParameters | tidak didukung sampai lolos |
| storageBuffer16BitAccess | tidak didukung sampai lolos |
| storageInputOutput16 | tidak didukung sampai lolos |
| storagePushConstant16 | tidak didukung sampai lolos |
| uniformAndStorageBuffer16BitAccess | tidak didukung sampai lolos |
| variablePointers | tidak didukung sampai lolos |
| variablePointersStorageBuffer | tidak didukung sampai lolos |
| bufferDeviceAddress | tidak didukung sampai lolos |
| descriptorBindingPartiallyBound | tidak didukung sampai lolos |
| descriptorBindingSampledImageUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingStorageBufferUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingStorageImageUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingStorageTexelBufferUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingUniformBufferUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingUniformTexelBufferUpdateAfterBind | tidak didukung sampai lolos |
| descriptorBindingUpdateUnusedWhilePending | tidak didukung sampai lolos |
| descriptorBindingVariableDescriptorCount | tidak didukung sampai lolos |
| descriptorIndexing | tidak didukung sampai lolos |
| drawIndirectCount | tidak didukung sampai lolos |
| hostQueryReset | tidak didukung sampai lolos |
| imagelessFramebuffer | tidak didukung sampai lolos |
| runtimeDescriptorArray | tidak didukung sampai lolos |
| samplerMirrorClampToEdge | tidak didukung sampai lolos |
| scalarBlockLayout | tidak didukung sampai lolos |
| separateDepthStencilLayouts | tidak didukung sampai lolos |
| shaderBufferInt64Atomics | tidak didukung sampai lolos |
| shaderFloat16 | tidak didukung sampai lolos |
| shaderInputAttachmentArrayDynamicIndexing | tidak didukung sampai lolos |
| shaderInputAttachmentArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderInt8 | tidak didukung sampai lolos |
| shaderOutputViewportIndex | tidak didukung sampai lolos |
| shaderSampledImageArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderSharedInt64Atomics | tidak didukung sampai lolos |
| shaderStorageBufferArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderStorageImageArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderStorageTexelBufferArrayDynamicIndexing | tidak didukung sampai lolos |
| shaderStorageTexelBufferArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderSubgroupExtendedTypes | tidak didukung sampai lolos |
| shaderUniformBufferArrayNonUniformIndexing | tidak didukung sampai lolos |
| shaderUniformTexelBufferArrayDynamicIndexing | tidak didukung sampai lolos |
| shaderUniformTexelBufferArrayNonUniformIndexing | tidak didukung sampai lolos |
| storageBuffer8BitAccess | tidak didukung sampai lolos |
| storagePushConstant8 | tidak didukung sampai lolos |
| subgroupBroadcastDynamicId | tidak didukung sampai lolos |
| timelineSemaphore | tidak didukung sampai lolos |
| uniformAndStorageBuffer8BitAccess | tidak didukung sampai lolos |
| uniformBufferStandardLayout | tidak didukung sampai lolos |
| vulkanMemoryModel | tidak didukung sampai lolos |
| vulkanMemoryModelAvailabilityVisibilityChains | tidak didukung sampai lolos |
| vulkanMemoryModelDeviceScope | tidak didukung sampai lolos |
| computeFullSubgroups | tidak didukung sampai lolos |
| descriptorBindingInlineUniformBlockUpdateAfterBind | tidak didukung sampai lolos |
| dynamicRendering | tidak didukung sampai lolos |
| inlineUniformBlock | tidak didukung sampai lolos |
| maintenance4 | tidak didukung sampai lolos |
| pipelineCreationCacheControl | tidak didukung sampai lolos |
| privateData | tidak didukung sampai lolos |
| robustImageAccess | tidak didukung sampai lolos |
| shaderDemoteToHelperInvocation | tidak didukung sampai lolos |
| shaderIntegerDotProduct | tidak didukung sampai lolos |
| shaderTerminateInvocation | tidak didukung sampai lolos |
| shaderZeroInitializeWorkgroupMemory | tidak didukung sampai lolos |
| subgroupSizeControl | tidak didukung sampai lolos |
| synchronization2 | tidak didukung sampai lolos |
| textureCompressionASTC_HDR | tidak didukung sampai lolos |
Batas yang berbeda (48)
| Batas | Bawaan | Kustom |
|---|---|---|
| maxImageDimension1D | 16384 | 65536 |
| maxImageDimension2D | 16384 | 65536 |
| maxImageDimension3D | 16384 | 65536 |
| maxImageDimensionCube | 16384 | 65536 |
| maxImageArrayLayers | 4096 | 65536 |
| maxTexelBufferElements | 268435456 | 134217728 |
| maxUniformBufferRange | 65536 | 1048576 |
| maxStorageBufferRange | 268435456 | 4294967295 |
| bufferImageGranularity | 4096 | 64 |
| sparseAddressSpaceSize | 0 | 140737454800896 |
| maxBoundDescriptorSets | 4 | 7 |
| maxPerStageDescriptorSamplers | 500000 | 1048576 |
| maxPerStageDescriptorUniformBuffers | 36 | 1048576 |
| maxPerStageDescriptorStorageBuffers | 500000 | 1048576 |
| maxPerStageDescriptorSampledImages | 500000 | 1048576 |
| maxPerStageDescriptorStorageImages | 500000 | 1048576 |
| maxPerStageResources | 500000 | 5242889 |
| maxDescriptorSetSamplers | 500000 | 1048576 |
| maxDescriptorSetUniformBuffers | 216 | 1048576 |
| maxDescriptorSetUniformBuffersDynamic | 32 | 16 |
| maxDescriptorSetStorageBuffers | 500000 | 1048576 |
| maxDescriptorSetStorageBuffersDynamic | 32 | 8 |
| maxDescriptorSetSampledImages | 500000 | 1048576 |
| maxDescriptorSetStorageImages | 500000 | 1048576 |
| maxVertexInputAttributes | 32 | 16 |
| maxVertexInputBindings | 32 | 16 |
| maxVertexInputAttributeOffset | 2047 | 4294967295 |
| maxVertexInputBindingStride | 2048 | 65535 |
| maxGeometryShaderInvocations | 32 | 64 |
| maxGeometryInputComponents | 64 | 128 |
| maxGeometryOutputVertices | 256 | 1024 |
| maxFragmentDualSrcAttachments | 0 | 8 |
| maxFragmentCombinedOutputResources | 1000008 | 4360 |
| maxComputeWorkGroupCount | 4294967295, 4294967295, 4294967295 | 65535, 65535, 65535 |
| maxDrawIndirectCount | 1 | 65535 |
| maxSamplerLodBias | 255 | 127.996 |
| maxViewports | 1 | 16 |
| minMemoryMapAlignment | 64 | 4096 |
| minTexelBufferOffsetAlignment | 64 | 16 |
| minStorageBufferOffsetAlignment | 64 | 4 |
| subPixelInterpolationOffsetBits | 4 | 8 |
| framebufferNoAttachmentsSampleCounts | 29 | 13 |
| maxClipDistances | 0 | 8 |
| maxCullDistances | 0 | 8 |
| maxCombinedClipAndCullDistances | 0 | 8 |
| pointSizeRange | 1, 1024 | 0.125, 4095.94 |
| lineWidthRange | 1, 1 | 0, 7.99219 |
| lineWidthGranularity | 0 | 0.0078125 |
Format yang hanya didukung satu driver (31 bertambah, 6 berkurang)
- A1B5G5R5_UNORM_PACK16
- A2R10G10B10_SNORM_PACK32
- A2R10G10B10_SSCALED_PACK32
- A2R10G10B10_USCALED_PACK32
- A8_UNORM
- B8G8R8A8_SSCALED
- B8G8R8A8_USCALED
- B8G8R8_SSCALED
- B8G8R8_USCALED
- 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
- BC4_SNORM_BLOCK
- BC4_UNORM_BLOCK
- BC5_SNORM_BLOCK
- BC5_UNORM_BLOCK
- BC6H_SFLOAT_BLOCK
- BC6H_UFLOAT_BLOCK
- BC7_SRGB_BLOCK
- BC7_UNORM_BLOCK
- G16_B16R16_2PLANE_420_UNORM
- G16_B16R16_2PLANE_422_UNORM
- G16_B16R16_2PLANE_444_UNORM
- G8_B8R8_2PLANE_444_UNORM
- R64_SINT
- R64_UINT
- B5G5R5A1_UNORM_PACK16
- B8G8R8G8_422_UNORM
- B8G8R8_SNORM
- G8B8G8R8_422_UNORM
- R4G4_UNORM_PACK8
- R5G5B5A1_UNORM_PACK16