EXP_PanVK-kbase-rp4pro-lab86 vs Mali-G77
Di Mali-G77 (Infinix GT 10 Pro, motorola edge 40, Redmi K40 Gaming, Redmi Note 10 Pro, Retroid Pocket 4 Pro, Samsung Galaxy Note20 Ultra, Samsung Galaxy S20 Ultra 5G). Driver yang disebut pertama dibandingkan dengan yang kedua, yang menjadi baseline.
BawaanMali-G77
vsKustomEXP_PanVK-kbase-rp4pro-lab86
Versi sistem grafis (Vulkan)1.1.213 sampai 1.3.363
Fitur tambahan (ekstensi)81 sampai 175+99 -5
Fitur yang lolos pemeriksaan (tervalidasi)28 sampai 52lolos hanya di EXP_PanVK-kbase-rp4pro-lab86: 24 lolos hanya di Mali-G77: 0
Scene tes kecepatan (benchmark)lebih cepat: 4 lebih lambat: 14% lebih cepat secara keseluruhan (rata-rata geometrik)
Game yang bisa dijalankan setiap driver (perkiraan dari daftar fiturnya): hijau kemungkinan bisa, kuning mungkin, oranye terbatas, merah tidak
BawaanDX92002+DX102006+DX112009+DX122015+Switch
KustomDX92002+DX102006+DX112009+DX122015+Switch
- compute_nbody7% lebih cepat
- hdr_2160p13% lebih cepat
- oit_linked_lists8% lebih cepat
- pipeline_barriers18% lebih cepat
- subpasses20% lebih lambat
Area kecil gambar berbeda dari driver bawaan di 1 scene (pipeline_barriers: 1457 dari 2304 sel). Gambar secara keseluruhan cocok, jadi ini kesalahan render lokal, bukan scene yang berbeda.
Detail Mali-G77 Detail EXP_PanVK-kbase-rp4pro-lab86
Pemeriksaan fitur yang berbeda (47)
| 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 |
| 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 |
| push.max_combined_image_samplers | tidak didukung | lolos | bertambah |
| push.max_uniform_buffers | tidak didukung | lolos | bertambah |
| stress.multi_draw_indirect_large | tidak didukung | 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 |
| 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 | 16.77 | 15.69 | 7% lebih cepat | 3 dari 3 vs 3 dari 3 | 800 vs 831 | tidak ada perbedaan besar tidak ada perbedaan kecil |
| hdr_2160p | 40.58 | 35.88 | 13% lebih cepat | 3 dari 3 vs 3 dari 3 | 800 vs 828 | tidak ada perbedaan besar tidak ada perbedaan kecil |
| oit_linked_lists | 25.34 | 23.46 | 8% lebih cepat | 3 dari 3 vs 3 dari 3 | 800 vs 836 | tidak ada perbedaan besar tidak ada perbedaan kecil |
| pipeline_barriers | 8.36 | 7.10 | 18% lebih cepat | 3 dari 3 vs 3 dari 3 | 800 vs 836 | tidak ada perbedaan besar berbeda di 1457 area kecil |
| pipeline_barriers_2160p | n/a | 25.50 | hanya satu sisi | ? vs 3 dari 3 | ? vs 836 | tidak diperiksa |
| subpasses | 15.04 | 18.82 | 20% lebih lambat | 3 dari 3 vs 3 dari 3 | 800 vs 834 | tidak diperiksa |
Perbedaan teknis (Vulkan)
Ekstensi yang hanya ada di EXP_PanVK-kbase-rp4pro-lab86 (99)
- 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_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_graphics_pipeline_library
- VK_EXT_host_image_copy
- VK_EXT_image_2d_view_of_3d
- VK_EXT_image_sliced_view_of_3d
- VK_EXT_image_view_min_lod
- VK_EXT_legacy_dithering
- 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_robustness
- VK_EXT_present_timing
- VK_EXT_private_data
- VK_EXT_robustness2
- VK_EXT_shader_atomic_float
- 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_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_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_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_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-G77 (5)
- VK_ARM_rasterization_order_attachment_access
- VK_EXT_fragment_density_map
- VK_EXT_fragment_density_map2
- VK_EXT_rgba10x6_formats
- VK_KHR_shared_presentable_image
Fitur inti yang berbeda (66)
| 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 |
| 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 | 1 | 64 |
| sparseAddressSpaceSize | 0 | 140737454800896 |
| 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 | 128 | 64 |
| maxGeometryTotalOutputComponents | 2048 | 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 |
| timestampPeriod | 38.4615 | 76.9231 |
| 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 (25 bertambah, 6 berkurang)
- A1B5G5R5_UNORM_PACK16
- A2R10G10B10_SNORM_PACK32
- A8_UNORM
- 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