diff --git a/ci/licenses_golden/excluded_files b/ci/licenses_golden/excluded_files index ad04d57e21bae..a713c3e69decb 100644 --- a/ci/licenses_golden/excluded_files +++ b/ci/licenses_golden/excluded_files @@ -154,6 +154,7 @@ ../../../flutter/impeller/tessellator/tessellator_unittests.cc ../../../flutter/impeller/tools/build_metal_library.py ../../../flutter/impeller/tools/check_licenses.py +../../../flutter/impeller/tools/malioc_cores.py ../../../flutter/impeller/tools/malioc_diff.py ../../../flutter/impeller/tools/xxd.py ../../../flutter/impeller/typographer/typographer_unittests.cc diff --git a/impeller/entity/BUILD.gn b/impeller/entity/BUILD.gn index 3489181fa2f11..bf8ce3db73bc0 100644 --- a/impeller/entity/BUILD.gn +++ b/impeller/entity/BUILD.gn @@ -7,6 +7,10 @@ import("//flutter/impeller/tools/impeller.gni") impeller_shaders("entity_shaders") { name = "entity" + if (impeller_enable_vulkan) { + vulkan_language_version = 130 + } + shaders = [ "shaders/blending/advanced_blend.vert", "shaders/blending/advanced_blend_color.frag", @@ -69,7 +73,11 @@ impeller_shaders("modern_entity_shaders") { name = "modern" if (impeller_enable_opengles) { - gles_language_version = "460" + gles_language_version = 460 + } + + if (impeller_enable_vulkan) { + vulkan_language_version = 130 } shaders = [ @@ -91,7 +99,11 @@ impeller_shaders("framebuffer_blend_entity_shaders") { # This version is to disable malioc checks. if (impeller_enable_opengles) { - gles_language_version = "460" + gles_language_version = 460 + } + + if (impeller_enable_vulkan) { + vulkan_language_version = 130 } shaders = [ diff --git a/impeller/scene/shaders/BUILD.gn b/impeller/scene/shaders/BUILD.gn index c4622c74b9ffb..658618d407191 100644 --- a/impeller/scene/shaders/BUILD.gn +++ b/impeller/scene/shaders/BUILD.gn @@ -7,6 +7,10 @@ import("//flutter/impeller/tools/impeller.gni") impeller_shaders("shaders") { name = "scene" + if (impeller_enable_vulkan) { + vulkan_language_version = 130 + } + shaders = [ "skinned.vert", "unskinned.vert", diff --git a/impeller/tools/impeller.gni b/impeller/tools/impeller.gni index 14bbbc90a5ef8..818a65ce29ce8 100644 --- a/impeller/tools/impeller.gni +++ b/impeller/tools/impeller.gni @@ -394,7 +394,7 @@ template("impellerc_reflect") { } } -template("impeller_shaders_metal") { +template("_impeller_shaders_metal") { assert(defined(invoker.shaders), "Impeller shaders must be specified.") assert(defined(invoker.name), "Name of the shader library must be specified.") @@ -478,7 +478,7 @@ template("blobcat_library") { } } -template("impeller_shaders_gles") { +template("_impeller_shaders_gles") { assert(defined(invoker.shaders), "Impeller shaders must be specified.") assert(defined(invoker.name), "Name of the shader library must be specified.") assert(defined(invoker.analyze), "Whether to analyze must be specified.") @@ -557,9 +557,10 @@ template("impeller_shaders_gles") { } } -template("impeller_shaders_vk") { +template("_impeller_shaders_vk") { assert(defined(invoker.shaders), "Impeller shaders must be specified.") assert(defined(invoker.name), "Name of the shader library must be specified.") + assert(defined(invoker.analyze), "Whether to analyze must be specified.") shaders_base_name = string_join("", [ @@ -583,10 +584,23 @@ template("impeller_shaders_vk") { defines = [ "IMPELLER_TARGET_VULKAN" ] } + vk_shaders = + filter_include(get_target_outputs(":$impellerc_vk"), [ "*.vkspv" ]) + + if (invoker.analyze) { + analyze_lib = "analyze_$target_name" + malioc_analyze_shaders(analyze_lib) { + shaders = vk_shaders + if (defined(invoker.vulkan_language_version)) { + vulkan_language_version = invoker.vulkan_language_version + } + deps = [ ":$impellerc_vk" ] + } + } + vk_lib = "genlib_$target_name" blobcat_library(vk_lib) { - shaders = - filter_include(get_target_outputs(":$impellerc_vk"), [ "*.vkspv" ]) + shaders = vk_shaders deps = [ ":$impellerc_vk" ] } @@ -608,12 +622,50 @@ template("impeller_shaders_vk") { group(target_name) { public_deps = [ ":$embed_vk_lib" ] + if (invoker.analyze) { + public_deps += [ ":$analyze_lib" ] + } + if (!impeller_enable_metal) { public_deps += [ ":$reflect_vk" ] } } } +# ------------------------------------------------------------------------------ +# @brief A target for precompiled shaders and the associated +# generated reflection library. +# +# @param[required] name +# +# The base name for the reflected C++ library. +# +# @param[required] shaders +# +# A list of GLSL shader files. +# +# @param[optional] analyze +# +# Whether to analyze shaders with malioc. Defaults to false. Shaders will +# only be analyzed if the GN argument "impeller_malioc_path" is defined. +# +# @param[optional] enable_opengles +# +# Whether to compile the shaders for the OpenGL ES backend. Defaults to the +# value of the GN argument "impeller_enable_opengles". +# +# @param[optional] gles_language_version +# +# The GLES version required by the shaders. +# +# @param[optional] metal_version +# +# The version of the Metal API required by the shaders. +# +# @param[optional] vulkan_language_version +# +# The SPIR-V version required by the shaders. +# template("impeller_shaders") { metal_version = "1.2" if (defined(invoker.metal_version)) { @@ -628,7 +680,7 @@ template("impeller_shaders") { if (impeller_enable_metal) { mtl_shaders = "mtl_$target_name" - impeller_shaders_metal(mtl_shaders) { + _impeller_shaders_metal(mtl_shaders) { name = invoker.name shaders = invoker.shaders metal_version = metal_version @@ -641,7 +693,7 @@ template("impeller_shaders") { analyze = false } gles_shaders = "gles_$target_name" - impeller_shaders_gles(gles_shaders) { + _impeller_shaders_gles(gles_shaders) { name = invoker.name if (defined(invoker.gles_language_version)) { gles_language_version = invoker.gles_language_version @@ -656,11 +708,19 @@ template("impeller_shaders") { } if (impeller_enable_vulkan) { + analyze = true + if (defined(invoker.analyze) && !invoker.analyze) { + analyze = false + } vk_shaders = "vk_$target_name" - impeller_shaders_vk(vk_shaders) { + _impeller_shaders_vk(vk_shaders) { name = invoker.name + if (defined(invoker.vulkan_language_version)) { + vulkan_language_version = invoker.vulkan_language_version + } shaders = invoker.shaders metal_version = metal_version + analyze = analyze } } diff --git a/impeller/tools/malioc.gni b/impeller/tools/malioc.gni index afecc09465555..062a931cd1f02 100644 --- a/impeller/tools/malioc.gni +++ b/impeller/tools/malioc.gni @@ -10,109 +10,114 @@ declare_args() { # Path to the Mali offline compiler tool 'malioc'. impeller_malioc_path = "" - impeller_malioc_cores = [] + impeller_malioc_core_filter = [ + "Mali-G78", + "Mali-T880", + ] } -if (impeller_malioc_path != "" && impeller_malioc_cores == []) { - core_list_file = "$root_build_dir/mali_core_list.json" - exec_script("//build/gn_run_binary.py", +if (impeller_malioc_path != "") { + _core_list_file = "$root_build_dir/mali_core_list.json" + exec_script("//flutter/impeller/tools/malioc_cores.py", [ + "--malioc", rebase_path(impeller_malioc_path, root_build_dir), - "--list", - "--format", - "json", "--output", - rebase_path(core_list_file), + rebase_path(_core_list_file), ]) - _mali_cores = read_file(core_list_file, "json") - foreach(mali_core, _mali_cores.cores) { - impeller_malioc_cores += [ mali_core.core ] - } + _impeller_malioc_cores = read_file(_core_list_file, "json") } template("malioc_analyze_shaders") { - # TODO(zra): Check that gles_language_version is in the supported set. For now - # assume that if it is set, it is being set to 460, which malioc does not - # support. - if (impeller_malioc_path == "" || defined(invoker.gles_language_version)) { - if (defined(invoker.gles_language_version) && - invoker.gles_language_version != "460") { - print("Disabling analysis for shaders in $target_name due to gles", - "version explicitly set to ${invoker.gles_language_version}.") - } + if (impeller_malioc_path == "") { group(target_name) { not_needed(invoker, "*") } } else { target_deps = [] - foreach(core, impeller_malioc_cores) { - foreach(source, invoker.shaders) { - shader_file_name = get_path_info(source, "name") - analysis_target = "${target_name}_${shader_file_name}_${core}_malioc" - target_deps += [ ":$analysis_target" ] - action(analysis_target) { - forward_variables_from(invoker, - "*", - [ - "args", - "depfile", - "inputs", - "outputs", - "pool", - "script", - ]) + foreach(core, _impeller_malioc_cores) { + foreach(filter_core, impeller_malioc_core_filter) { + if (core.core == filter_core) { + foreach(source, invoker.shaders) { + # Should be "gles" or "vkspv" + backend_ext = get_path_info(source, "extension") + assert( + backend_ext == "gles" || backend_ext == "vkspv", + "Shader for unsupported backend passed to malioc: {{source}}") + shader_file_name = get_path_info(source, "name") + analysis_target = + "${target_name}_${shader_file_name}_${core.core}_malioc" + if ((backend_ext == "gles" && + defined(invoker.gles_language_version) && + core.opengles_max_version < invoker.gles_language_version) || + (backend_ext == "vkspv" && + defined(invoker.vulkan_language_version) && + core.vulkan_max_version < invoker.vulkan_language_version)) { + group(analysis_target) { + not_needed(invoker, "*") + } + } else { + target_deps += [ ":$analysis_target" ] + action(analysis_target) { + forward_variables_from(invoker, + "*", + [ + "args", + "depfile", + "inputs", + "outputs", + "pool", + "script", + ]) - script = "//build/gn_run_binary.py" - pool = "//flutter/impeller/tools:malioc_pool" + script = "//build/gn_run_binary.py" + pool = "//flutter/impeller/tools:malioc_pool" - # Should be "gles" or "vkspv" - backend_ext = get_path_info(source, "extension") - assert(backend_ext == "gles", - "Shader for unsupported backend passed to malioc: {{source}}") + # Nest all malioc output under its own subdirectory of root_gen_dir + # so that it's easier to diff it against the state before any changes. + subdir = rebase_path(target_gen_dir, root_gen_dir) + output_file = "$root_gen_dir/malioc/$subdir/${shader_file_name}.${backend_ext}.${core.core}.json" + outputs = [ output_file ] - # Nest all malioc output under its own subdirectory of root_gen_dir - # so that it's easier to diff it against the state before any changes. - subdir = rebase_path(target_gen_dir, root_gen_dir) - output_file = - "$root_gen_dir/malioc/$subdir/${shader_file_name}.$core.json" - outputs = [ output_file ] + # Determine the kind of the shader from the file name + name = get_path_info(source, "name") + shader_kind_ext = get_path_info(name, "extension") - # Determine the kind of the shader from the file name - name = get_path_info(source, "name") - shader_kind_ext = get_path_info(name, "extension") + if (shader_kind_ext == "comp") { + shader_kind_flag = "--compute" + } else if (shader_kind_ext == "frag") { + shader_kind_flag = "--fragment" + } else if (shader_kind_ext == "geom") { + shader_kind_flag = "--geometry" + } else if (shader_kind_ext == "tesc") { + shader_kind_flag = "--tessellation_control" + } else if (shader_kind_ext == "tese") { + shader_kind_flag = "--tessellation_evaluation" + } else if (shader_kind_ext == "vert") { + shader_kind_flag = "--vertex" + } else { + assert(false, "Unknown shader kind: {{source}}") + } - if (shader_kind_ext == "comp") { - shader_kind_flag = "--compute" - } else if (shader_kind_ext == "frag") { - shader_kind_flag = "--fragment" - } else if (shader_kind_ext == "geom") { - shader_kind_flag = "--geometry" - } else if (shader_kind_ext == "tesc") { - shader_kind_flag = "--tessellation_control" - } else if (shader_kind_ext == "tese") { - shader_kind_flag = "--tessellation_evaluation" - } else if (shader_kind_ext == "vert") { - shader_kind_flag = "--vertex" - } else { - assert(false, "Unknown shader kind: {{source}}") - } + args = [ + rebase_path(impeller_malioc_path, root_build_dir), + "--format", + "json", + shader_kind_flag, + "--core", + core.core, + "--output", + rebase_path(output_file), + ] - args = [ - rebase_path(impeller_malioc_path, root_build_dir), - "--format", - "json", - shader_kind_flag, - "--core", - core, - "--output", - rebase_path(output_file), - ] + if (backend_ext == "vkspv") { + args += [ "--vulkan" ] + } - if (backend_ext == "vkspv") { - args += [ "--vulkan" ] + args += [ rebase_path(source) ] + } + } } - - args += [ rebase_path(source) ] } } } diff --git a/impeller/tools/malioc.json b/impeller/tools/malioc.json index be3d4dfe8817b..7855162a55dc8 100644 --- a/impeller/tools/malioc.json +++ b/impeller/tools/malioc.json @@ -1,22 +1,22 @@ { - "flutter/impeller/entity/gles/advanced_blend.vert.gles": { + "flutter/impeller/entity/advanced_blend.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend.vert.gles", + "filename": "flutter/impeller/entity/advanced_blend.vert.vkspv", "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 80, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -33,9 +33,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -44,9 +44,9 @@ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -54,7 +54,7 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 16, + "uniform_registers_used": 20, "work_registers_used": 32 }, "Varying": { @@ -105,61 +105,16 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, + "uniform_registers_used": 16, "work_registers_used": 8 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - "load_store" - ], - "longest_path_cycles": [ - 3.299999952316284, - 7.0, - 0.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "load_store" - ], - "shortest_path_cycles": [ - 3.299999952316284, - 7.0, - 0.0 - ], - "total_bound_pipelines": [ - "load_store" - ], - "total_cycles": [ - 3.3333332538604736, - 7.0, - 0.0 - ] - }, - "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 3 - } - } } }, - "flutter/impeller/entity/gles/advanced_blend_color.frag.gles": { + "flutter/impeller/entity/advanced_blend_color.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_color.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_color.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -169,7 +124,7 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 82, + "fp16_arithmetic": 62, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ @@ -199,9 +154,9 @@ "arith_cvt" ], "shortest_path_cycles": [ - 0.375, + 0.359375, 0.328125, - 0.375, + 0.359375, 0.25, 0.0, 0.25, @@ -223,61 +178,90 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 12, - "work_registers_used": 20 + "uniform_registers_used": 10, + "work_registers_used": 15 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_color.frag.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/advanced_blend_colorburn.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/advanced_blend_colorburn.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 73, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_sfu" ], "longest_path_cycles": [ - 9.899999618530273, - 2.0, - 2.0 + 0.6875, + 0.296875, + 0.637499988079071, + 0.6875, + 0.0, + 0.5, + 0.5 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_cvt" ], "shortest_path_cycles": [ - 5.940000057220459, - 1.0, + 0.515625, + 0.265625, + 0.515625, + 0.4375, + 0.0, + 0.25, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_cvt", + "arith_sfu" ], "total_cycles": [ - 11.0, - 2.0, - 2.0 + 0.6875, + 0.296875, + 0.6875, + 0.6875, + 0.0, + 0.5, + 0.5 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 3 + "uniform_registers_used": 8, + "work_registers_used": 16 } } } }, - "flutter/impeller/entity/gles/advanced_blend_colorburn.frag.gles": { + "flutter/impeller/entity/advanced_blend_colordodge.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_colorburn.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_colordodge.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -287,7 +271,7 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 100, + "fp16_arithmetic": 69, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ @@ -297,7 +281,7 @@ "longest_path_cycles": [ 0.6875, 0.265625, - 0.675000011920929, + 0.637499988079071, 0.6875, 0.0, 0.5, @@ -327,12 +311,13 @@ ], "total_bound_pipelines": [ "arith_total", - "arith_cvt" + "arith_cvt", + "arith_sfu" ], "total_cycles": [ - 0.71875, + 0.6875, 0.265625, - 0.71875, + 0.6875, 0.6875, 0.0, 0.5, @@ -341,61 +326,93 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 26 + "uniform_registers_used": 8, + "work_registers_used": 14 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_colorburn.frag.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/advanced_blend_darken.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/advanced_blend_darken.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_sfu", + "varying", + "texture" ], "longest_path_cycles": [ - 10.5600004196167, - 2.0, - 2.0 + 0.5, + 0.171875, + 0.390625, + 0.5, + 0.0, + 0.5, + 0.5 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_cvt" ], "shortest_path_cycles": [ - 8.25, - 1.0, + 0.265625, + 0.140625, + 0.265625, + 0.25, + 0.0, + 0.25, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_sfu", + "varying", + "texture" ], "total_cycles": [ - 11.333333015441895, - 2.0, - 2.0 + 0.5, + 0.171875, + 0.4375, + 0.5, + 0.0, + 0.5, + 0.5 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 3 + "uniform_registers_used": 6, + "work_registers_used": 11 } } } }, - "flutter/impeller/entity/gles/advanced_blend_colordodge.frag.gles": { + "flutter/impeller/entity/advanced_blend_difference.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_colordodge.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_difference.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -410,13 +427,15 @@ "performance": { "longest_path_bound_pipelines": [ "arith_total", - "arith_sfu" + "arith_sfu", + "varying", + "texture" ], "longest_path_cycles": [ - 0.6875, - 0.234375, - 0.675000011920929, - 0.6875, + 0.5, + 0.203125, + 0.359375, + 0.5, 0.0, 0.5, 0.5 @@ -432,26 +451,29 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_cvt" + "arith_sfu", + "varying" ], "shortest_path_cycles": [ - 0.515625, - 0.203125, - 0.515625, - 0.4375, + 0.25, + 0.171875, + 0.234375, + 0.25, 0.0, 0.25, 0.0 ], "total_bound_pipelines": [ "arith_total", - "arith_cvt" + "arith_sfu", + "varying", + "texture" ], "total_cycles": [ - 0.71875, - 0.234375, - 0.71875, - 0.6875, + 0.5, + 0.203125, + 0.40625, + 0.5, 0.0, 0.5, 0.5 @@ -459,61 +481,95 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 26 + "uniform_registers_used": 6, + "work_registers_used": 11 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_colordodge.frag.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/advanced_blend_exclusion.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/advanced_blend_exclusion.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_sfu", + "varying", + "texture" ], "longest_path_cycles": [ - 10.229999542236328, - 2.0, - 2.0 + 0.5, + 0.28125, + 0.359375, + 0.5, + 0.0, + 0.5, + 0.5 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_fma", + "arith_sfu", + "varying" ], "shortest_path_cycles": [ - 7.920000076293945, - 1.0, + 0.25, + 0.25, + 0.234375, + 0.25, + 0.0, + 0.25, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_sfu", + "varying", + "texture" ], "total_cycles": [ - 11.0, - 2.0, - 2.0 + 0.5, + 0.28125, + 0.40625, + 0.5, + 0.0, + 0.5, + 0.5 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 3 + "uniform_registers_used": 6, + "work_registers_used": 11 } } } }, - "flutter/impeller/entity/gles/advanced_blend_darken.frag.gles": { + "flutter/impeller/entity/advanced_blend_hardlight.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_darken.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_hardlight.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -534,8 +590,8 @@ ], "longest_path_cycles": [ 0.5, - 0.171875, - 0.4375, + 0.46875, + 0.421875, 0.5, 0.0, 0.5, @@ -552,12 +608,12 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_cvt" + "arith_fma" ], "shortest_path_cycles": [ - 0.28125, - 0.140625, - 0.28125, + 0.4375, + 0.4375, + 0.296875, 0.25, 0.0, 0.25, @@ -571,8 +627,8 @@ ], "total_cycles": [ 0.5, - 0.171875, - 0.484375, + 0.46875, + 0.46875, 0.5, 0.0, 0.5, @@ -582,60 +638,88 @@ "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 8, - "work_registers_used": 20 + "work_registers_used": 15 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_darken.frag.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/advanced_blend_hue.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/advanced_blend_hue.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 70, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_fma" ], "longest_path_cycles": [ - 5.940000057220459, - 2.0, - 2.0 + 0.762499988079071, + 0.762499988079071, + 0.6875, + 0.6875, + 0.0, + 0.5, + 0.5 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_cvt" ], "shortest_path_cycles": [ - 3.299999952316284, - 1.0, + 0.5, + 0.328125, + 0.5, + 0.25, + 0.0, + 0.25, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_cvt" ], "total_cycles": [ - 6.666666507720947, - 2.0, - 2.0 + 0.78125, + 0.762499988079071, + 0.78125, + 0.6875, + 0.0, + 0.5, + 0.5 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 2 + "uniform_registers_used": 10, + "work_registers_used": 15 } } } }, - "flutter/impeller/entity/gles/advanced_blend_difference.frag.gles": { + "flutter/impeller/entity/advanced_blend_lighten.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_difference.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_lighten.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -656,8 +740,8 @@ ], "longest_path_cycles": [ 0.5, - 0.203125, - 0.40625, + 0.171875, + 0.390625, 0.5, 0.0, 0.5, @@ -674,14 +758,12 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_cvt", - "arith_sfu", - "varying" + "arith_cvt" ], "shortest_path_cycles": [ - 0.25, - 0.171875, - 0.25, + 0.265625, + 0.140625, + 0.265625, 0.25, 0.0, 0.25, @@ -695,8 +777,8 @@ ], "total_cycles": [ 0.5, - 0.203125, - 0.453125, + 0.171875, + 0.4375, 0.5, 0.0, 0.5, @@ -705,61 +787,89 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 20 + "uniform_registers_used": 6, + "work_registers_used": 11 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_difference.frag.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/advanced_blend_luminosity.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/advanced_blend_luminosity.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 62, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_fma" ], "longest_path_cycles": [ - 5.940000057220459, - 2.0, - 2.0 + 0.65625, + 0.65625, + 0.53125, + 0.625, + 0.0, + 0.5, + 0.5 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_cvt" ], "shortest_path_cycles": [ - 3.299999952316284, - 1.0, + 0.359375, + 0.328125, + 0.359375, + 0.25, + 0.0, + 0.25, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_fma" ], "total_cycles": [ - 6.666666507720947, - 2.0, - 2.0 + 0.65625, + 0.65625, + 0.578125, + 0.625, + 0.0, + 0.5, + 0.5 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 2 + "uniform_registers_used": 10, + "work_registers_used": 15 } } } }, - "flutter/impeller/entity/gles/advanced_blend_exclusion.frag.gles": { + "flutter/impeller/entity/advanced_blend_multiply.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_exclusion.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_multiply.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -780,8 +890,8 @@ ], "longest_path_cycles": [ 0.5, - 0.265625, - 0.40625, + 0.203125, + 0.359375, 0.5, 0.0, 0.5, @@ -798,15 +908,14 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_cvt", "arith_sfu", "varying" ], "shortest_path_cycles": [ 0.25, + 0.171875, 0.234375, 0.25, - 0.25, 0.0, 0.25, 0.0 @@ -819,8 +928,8 @@ ], "total_cycles": [ 0.5, - 0.265625, - 0.453125, + 0.203125, + 0.40625, 0.5, 0.0, 0.5, @@ -829,61 +938,16 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 21 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_exclusion.frag.gles", - "has_uniform_computation": false, - "type": "Fragment", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - "arithmetic" - ], - "longest_path_cycles": [ - 6.599999904632568, - 2.0, - 2.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "arithmetic" - ], - "shortest_path_cycles": [ - 3.9600000381469727, - 1.0, - 0.0 - ], - "total_bound_pipelines": [ - "arithmetic" - ], - "total_cycles": [ - 7.333333492279053, - 2.0, - 2.0 - ] - }, - "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 3 + "uniform_registers_used": 6, + "work_registers_used": 11 } } } }, - "flutter/impeller/entity/gles/advanced_blend_hardlight.frag.gles": { + "flutter/impeller/entity/advanced_blend_overlay.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_hardlight.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_overlay.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -904,8 +968,8 @@ ], "longest_path_cycles": [ 0.5, - 0.453125, 0.46875, + 0.421875, 0.5, 0.0, 0.5, @@ -925,9 +989,9 @@ "arith_fma" ], "shortest_path_cycles": [ - 0.421875, - 0.421875, - 0.3125, + 0.4375, + 0.4375, + 0.296875, 0.25, 0.0, 0.25, @@ -935,12 +999,14 @@ ], "total_bound_pipelines": [ "arith_total", - "arith_cvt" + "arith_sfu", + "varying", + "texture" ], "total_cycles": [ - 0.515625, - 0.453125, - 0.515625, + 0.5, + 0.46875, + 0.46875, 0.5, 0.0, 0.5, @@ -950,60 +1016,15 @@ "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 8, - "work_registers_used": 25 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_hardlight.frag.gles", - "has_uniform_computation": false, - "type": "Fragment", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - "arithmetic" - ], - "longest_path_cycles": [ - 7.590000152587891, - 2.0, - 2.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "arithmetic" - ], - "shortest_path_cycles": [ - 4.949999809265137, - 1.0, - 0.0 - ], - "total_bound_pipelines": [ - "arithmetic" - ], - "total_cycles": [ - 8.333333015441895, - 2.0, - 2.0 - ] - }, - "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 4 + "work_registers_used": 15 } } } }, - "flutter/impeller/entity/gles/advanced_blend_hue.frag.gles": { + "flutter/impeller/entity/advanced_blend_saturation.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_hue.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_saturation.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -1013,7 +1034,7 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 86, + "fp16_arithmetic": 70, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ @@ -1043,9 +1064,9 @@ "arith_cvt" ], "shortest_path_cycles": [ - 0.515625, + 0.5, 0.328125, - 0.515625, + 0.5, 0.25, 0.0, 0.25, @@ -1067,61 +1088,16 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 12, - "work_registers_used": 21 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_hue.frag.gles", - "has_uniform_computation": false, - "type": "Fragment", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - "arithmetic" - ], - "longest_path_cycles": [ - 11.880000114440918, - 2.0, - 2.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "arithmetic" - ], - "shortest_path_cycles": [ - 6.269999980926514, - 1.0, - 0.0 - ], - "total_bound_pipelines": [ - "arithmetic" - ], - "total_cycles": [ - 13.0, - 2.0, - 2.0 - ] - }, - "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 3 + "uniform_registers_used": 10, + "work_registers_used": 15 } } } }, - "flutter/impeller/entity/gles/advanced_blend_lighten.frag.gles": { + "flutter/impeller/entity/advanced_blend_screen.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_lighten.frag.gles", + "filename": "flutter/impeller/entity/advanced_blend_screen.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -1142,8 +1118,8 @@ ], "longest_path_cycles": [ 0.5, - 0.171875, - 0.4375, + 0.25, + 0.359375, 0.5, 0.0, 0.5, @@ -1160,12 +1136,13 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_cvt" + "arith_sfu", + "varying" ], "shortest_path_cycles": [ - 0.28125, - 0.140625, - 0.28125, + 0.25, + 0.21875, + 0.234375, 0.25, 0.0, 0.25, @@ -1179,8 +1156,8 @@ ], "total_cycles": [ 0.5, - 0.171875, - 0.484375, + 0.25, + 0.40625, 0.5, 0.0, 0.5, @@ -1189,61 +1166,3495 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 20 + "uniform_registers_used": 6, + "work_registers_used": 11 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_lighten.frag.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/advanced_blend_softlight.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/advanced_blend_softlight.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_fma" ], "longest_path_cycles": [ - 5.940000057220459, - 2.0, - 2.0 + 0.78125, + 0.78125, + 0.5625, + 0.6875, + 0.0, + 0.5, + 0.5 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_fma" ], "shortest_path_cycles": [ - 3.299999952316284, - 1.0, + 0.75, + 0.75, + 0.4375, + 0.4375, + 0.0, + 0.25, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_fma" ], "total_cycles": [ - 6.666666507720947, - 2.0, - 2.0 + 0.78125, + 0.78125, + 0.609375, + 0.6875, + 0.0, + 0.5, + 0.5 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 2 + "uniform_registers_used": 12, + "work_registers_used": 25 } } } }, - "flutter/impeller/entity/gles/advanced_blend_luminosity.frag.gles": { + "flutter/impeller/entity/blend.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_luminosity.frag.gles", + "filename": "flutter/impeller/entity/blend.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "texture" + ], + "longest_path_cycles": [ + 0.0625, + 0.046875, + 0.0625, + 0.0, + 0.0, + 0.125, + 0.25 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "texture" + ], + "shortest_path_cycles": [ + 0.0625, + 0.046875, + 0.0625, + 0.0, + 0.0, + 0.125, + 0.25 + ], + "total_bound_pipelines": [ + "texture" + ], + "total_cycles": [ + 0.0625, + 0.046875, + 0.0625, + 0.0, + 0.0, + 0.125, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 6 + } + } + } + }, + "flutter/impeller/entity/blend.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/blend.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 18, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 14, + "work_registers_used": 6 + } + } + } + }, + "flutter/impeller/entity/border_mask_blur.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/border_mask_blur.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 5, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "longest_path_cycles": [ + 0.8125, + 0.8125, + 0.203125, + 0.25, + 0.0, + 0.25, + 0.25 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "shortest_path_cycles": [ + 0.8125, + 0.8125, + 0.203125, + 0.25, + 0.0, + 0.25, + 0.25 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "total_cycles": [ + 0.8125, + 0.8125, + 0.203125, + 0.25, + 0.0, + 0.25, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 22 + } + } + } + }, + "flutter/impeller/entity/border_mask_blur.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/border_mask_blur.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 20, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 7 + } + } + } + }, + "flutter/impeller/entity/color_matrix_color_filter.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/color_matrix_color_filter.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.25, + 0.25, + 0.0625, + 0.0625, + 0.0, + 0.25, + 0.25 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma", + "varying", + "texture" + ], + "shortest_path_cycles": [ + 0.25, + 0.25, + 0.0625, + 0.0625, + 0.0, + 0.25, + 0.25 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_fma", + "varying", + "texture" + ], + "total_cycles": [ + 0.25, + 0.25, + 0.0625, + 0.0625, + 0.0, + 0.25, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 14, + "work_registers_used": 10 + } + } + } + }, + "flutter/impeller/entity/color_matrix_color_filter.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/color_matrix_color_filter.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 20, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 7 + } + } + } + }, + "flutter/impeller/entity/conical_gradient_fill.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/conical_gradient_fill.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 74, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null, + null, + null, + null, + null + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.1875, + 0.1875, + 0.1875, + 0.0625, + 0.0, + 0.125, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.421875, + 0.3125, + 0.421875, + 0.0625, + 0.0, + 0.125, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 20, + "work_registers_used": 7 + } + } + } + }, + "flutter/impeller/entity/conical_gradient_ssbo_fill.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/conical_gradient_ssbo_fill.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 61, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null, + null, + null, + null, + null + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.171875, + 0.140625, + 0.171875, + 0.0625, + 0.0, + 0.125, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.699999988079071, + 0.40625, + 0.699999988079071, + 0.125, + 4.0, + 0.125, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 18, + "work_registers_used": 15 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 20, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 7 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_color.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_color.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_colorburn.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_colorburn.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_colordodge.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_colordodge.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_darken.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_darken.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_difference.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_difference.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_exclusion.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_exclusion.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_hardlight.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_hardlight.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_hue.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_hue.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_lighten.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_lighten.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_luminosity.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_luminosity.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_multiply.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_multiply.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_overlay.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_overlay.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_saturation.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_saturation.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_screen.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_screen.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/framebuffer_blend_softlight.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/framebuffer_blend_softlight.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 0, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gaussian_blur.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gaussian_blur.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 47, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null, + null, + null, + null, + null + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "varying", + "texture" + ], + "shortest_path_cycles": [ + 0.15625, + 0.09375, + 0.15625, + 0.0625, + 0.0, + 0.25, + 0.25 + ], + "total_bound_pipelines": [ + "varying", + "texture" + ], + "total_cycles": [ + 0.265625, + 0.265625, + 0.25, + 0.125, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 14, + "work_registers_used": 15 + } + } + } + }, + "flutter/impeller/entity/gaussian_blur.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gaussian_blur.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 20, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 8 + } + } + } + }, + "flutter/impeller/entity/gaussian_blur_decal.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gaussian_blur_decal.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 55, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null, + null, + null, + null, + null + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.3125, + 0.09375, + 0.3125, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.515625, + 0.265625, + 0.515625, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 20 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend.vert.gles", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 80, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 10, + "work_registers_used": 8 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 3.299999952316284, + 7.0, + 0.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 3.299999952316284, + 7.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 3.3333332538604736, + 7.0, + 0.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_color.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_color.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 82, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "longest_path_cycles": [ + 0.65625, + 0.65625, + 0.53125, + 0.625, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.375, + 0.328125, + 0.375, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "total_cycles": [ + 0.65625, + 0.65625, + 0.578125, + 0.625, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 20 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_color.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 9.899999618530273, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 5.940000057220459, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 11.0, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_colorburn.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_colorburn.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu" + ], + "longest_path_cycles": [ + 0.6875, + 0.265625, + 0.675000011920929, + 0.6875, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.515625, + 0.234375, + 0.515625, + 0.4375, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.71875, + 0.265625, + 0.71875, + 0.6875, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 10, + "work_registers_used": 26 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_colorburn.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 10.5600004196167, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 8.25, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 11.333333015441895, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_colordodge.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_colordodge.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu" + ], + "longest_path_cycles": [ + 0.6875, + 0.234375, + 0.675000011920929, + 0.6875, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.515625, + 0.203125, + 0.515625, + 0.4375, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.71875, + 0.234375, + 0.71875, + 0.6875, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 10, + "work_registers_used": 26 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_colordodge.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 10.229999542236328, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 7.920000076293945, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 11.0, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_darken.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_darken.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.5, + 0.171875, + 0.4375, + 0.5, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.28125, + 0.140625, + 0.28125, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "total_cycles": [ + 0.5, + 0.171875, + 0.484375, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 20 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_darken.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 5.940000057220459, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 3.299999952316284, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 6.666666507720947, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_difference.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_difference.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.5, + 0.203125, + 0.40625, + 0.5, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt", + "arith_sfu", + "varying" + ], + "shortest_path_cycles": [ + 0.25, + 0.171875, + 0.25, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "total_cycles": [ + 0.5, + 0.203125, + 0.453125, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 20 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_difference.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 5.940000057220459, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 3.299999952316284, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 6.666666507720947, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_exclusion.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_exclusion.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.5, + 0.265625, + 0.40625, + 0.5, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt", + "arith_sfu", + "varying" + ], + "shortest_path_cycles": [ + 0.25, + 0.234375, + 0.25, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "total_cycles": [ + 0.5, + 0.265625, + 0.453125, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 21 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_exclusion.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 6.599999904632568, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 3.9600000381469727, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 7.333333492279053, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_hardlight.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_hardlight.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.5, + 0.453125, + 0.46875, + 0.5, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "shortest_path_cycles": [ + 0.421875, + 0.421875, + 0.3125, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.515625, + 0.453125, + 0.515625, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 25 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_hardlight.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 7.590000152587891, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 4.949999809265137, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 8.333333015441895, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 4 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_hue.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_hue.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 86, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "longest_path_cycles": [ + 0.762499988079071, + 0.762499988079071, + 0.6875, + 0.6875, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.515625, + 0.328125, + 0.515625, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.78125, + 0.762499988079071, + 0.78125, + 0.6875, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 21 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_hue.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 11.880000114440918, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 6.269999980926514, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 13.0, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_lighten.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_lighten.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.5, + 0.171875, + 0.4375, + 0.5, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.28125, + 0.140625, + 0.28125, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "total_cycles": [ + 0.5, + 0.171875, + 0.484375, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 20 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_lighten.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 5.940000057220459, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 3.299999952316284, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 6.666666507720947, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_luminosity.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_luminosity.frag.gles", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -1258,16 +4669,2358 @@ "performance": { "longest_path_bound_pipelines": [ "arith_total", - "arith_fma" + "arith_fma" + ], + "longest_path_cycles": [ + 0.65625, + 0.65625, + 0.53125, + 0.625, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.375, + 0.328125, + 0.375, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "total_cycles": [ + 0.65625, + 0.65625, + 0.578125, + 0.625, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 20 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_luminosity.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 9.899999618530273, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 5.940000057220459, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 11.0, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_multiply.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_multiply.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.5, + 0.203125, + 0.40625, + 0.5, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt", + "arith_sfu", + "varying" + ], + "shortest_path_cycles": [ + 0.25, + 0.171875, + 0.25, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "total_cycles": [ + 0.5, + 0.203125, + 0.453125, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 20 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_multiply.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 6.269999980926514, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 3.630000114440918, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 7.0, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_overlay.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_overlay.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.5, + 0.453125, + 0.46875, + 0.5, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "shortest_path_cycles": [ + 0.421875, + 0.421875, + 0.3125, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.515625, + 0.453125, + 0.515625, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 25 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_overlay.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 7.260000228881836, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 4.949999809265137, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 8.0, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 4 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_saturation.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_saturation.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 86, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "longest_path_cycles": [ + 0.762499988079071, + 0.762499988079071, + 0.6875, + 0.6875, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.515625, + 0.328125, + 0.515625, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.78125, + 0.762499988079071, + 0.78125, + 0.6875, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 21 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_saturation.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 12.210000038146973, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 6.599999904632568, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 13.333333015441895, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_screen.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_screen.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.5, + 0.234375, + 0.40625, + 0.5, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt", + "arith_sfu", + "varying" + ], + "shortest_path_cycles": [ + 0.25, + 0.203125, + 0.25, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "total_cycles": [ + 0.5, + 0.234375, + 0.453125, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 21 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_screen.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 6.269999980926514, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 3.630000114440918, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 7.0, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/advanced_blend_softlight.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/advanced_blend_softlight.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "longest_path_cycles": [ + 0.71875, + 0.71875, + 0.609375, + 0.6875, + 0.0, + 0.5, + 0.5 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "shortest_path_cycles": [ + 0.6875, + 0.6875, + 0.453125, + 0.4375, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "total_cycles": [ + 0.71875, + 0.71875, + 0.65625, + 0.6875, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 32 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/advanced_blend_softlight.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 10.5600004196167, + 2.0, + 2.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 8.25, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 11.333333015441895, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 4 + } + } + } + }, + "flutter/impeller/entity/gles/blend.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/blend.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "texture" + ], + "longest_path_cycles": [ + 0.09375, + 0.046875, + 0.09375, + 0.0, + 0.0, + 0.125, + 0.25 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "texture" + ], + "shortest_path_cycles": [ + 0.0625, + 0.046875, + 0.0625, + 0.0, + 0.0, + 0.125, + 0.25 + ], + "total_bound_pipelines": [ + "texture" + ], + "total_cycles": [ + 0.09375, + 0.046875, + 0.09375, + 0.0, + 0.0, + 0.125, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 19 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/blend.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "longest_path_cycles": [ + 1.0, + 1.0, + 1.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_cycles": [ + 1.0, + 1.0, + 1.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 1.3333333730697632, + 1.0, + 1.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/blend.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/blend.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 80, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 14, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 6 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/blend.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 2.640000104904175, + 5.0, + 0.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 2.640000104904175, + 5.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 2.6666667461395264, + 5.0, + 0.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/border_mask_blur.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/border_mask_blur.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 10, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "longest_path_cycles": [ + 0.8125, + 0.8125, + 0.234375, + 0.25, + 0.0, + 0.25, + 0.25 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "shortest_path_cycles": [ + 0.8125, + 0.8125, + 0.203125, + 0.25, + 0.0, + 0.25, + 0.25 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "total_cycles": [ + 0.8125, + 0.8125, + 0.234375, + 0.25, + 0.0, + 0.25, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 10, + "work_registers_used": 32 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/border_mask_blur.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 8.90999984741211, + 1.0, + 1.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 8.90999984741211, + 1.0, + 1.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 9.333333015441895, + 1.0, + 1.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/border_mask_blur.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/border_mask_blur.vert.gles", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 80, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 10, + "work_registers_used": 7 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/border_mask_blur.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 2.9700000286102295, + 5.0, + 0.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 2.9700000286102295, + 5.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 3.0, + 5.0, + 0.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/color_matrix_color_filter.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/color_matrix_color_filter.frag.gles", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma", + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.25, + 0.25, + 0.09375, + 0.0625, + 0.0, + 0.25, + 0.25 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma", + "varying", + "texture" + ], + "shortest_path_cycles": [ + 0.25, + 0.25, + 0.0625, + 0.0625, + 0.0, + 0.25, + 0.25 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_fma", + "varying", + "texture" + ], + "total_cycles": [ + 0.25, + 0.25, + 0.09375, + 0.0625, + 0.0, + 0.25, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 14, + "work_registers_used": 21 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/color_matrix_color_filter.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 2.640000104904175, + 1.0, + 1.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 2.640000104904175, + 1.0, + 1.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 3.0, + 1.0, + 1.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 3, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/color_matrix_color_filter.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/color_matrix_color_filter.vert.gles", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 80, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 10, + "work_registers_used": 7 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/color_matrix_color_filter.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 2.9700000286102295, + 4.0, + 0.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 2.9700000286102295, + 4.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 3.0, + 4.0, + 0.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/conical_gradient_fill.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/conical_gradient_fill.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 61, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null, + null, + null, + null, + null + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "shortest_path_cycles": [ + 0.25, + 0.234375, + 0.25, + 0.1875, + 0.0, + 0.125, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.59375, + 0.375, + 0.59375, + 0.1875, + 0.0, + 0.125, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 14, + "work_registers_used": 20 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/conical_gradient_fill.frag.gles", + "has_uniform_computation": true, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 1.9800000190734863, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 9.333333015441895, + 1.0, + 1.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 3, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/gaussian_blur.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/gaussian_blur.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 76, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null, + null, + null, + null, + null + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "varying", + "texture" + ], + "shortest_path_cycles": [ + 0.109375, + 0.109375, + 0.09375, + 0.0625, + 0.0, + 0.25, + 0.25 + ], + "total_bound_pipelines": [ + "varying", + "texture" + ], + "total_cycles": [ + 0.3125, + 0.3125, + 0.21875, + 0.125, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 21 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/gaussian_blur.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 2.9700000286102295, + 2.0, + 1.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 5.0, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 2, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/gaussian_blur.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/gaussian_blur.vert.gles", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 80, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 4.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 10, + "work_registers_used": 8 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/gaussian_blur.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 3.299999952316284, + 7.0, + 0.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 3.299999952316284, + 7.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 3.3333332538604736, + 7.0, + 0.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 3 + } + } + } + }, + "flutter/impeller/entity/gles/gaussian_blur_decal.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/gaussian_blur_decal.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 79, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null, + null, + null, + null, + null + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying" + ], + "shortest_path_cycles": [ + 0.25, + 0.109375, + 0.1875, + 0.25, + 0.0, + 0.25, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_sfu", + "varying", + "texture" + ], + "total_cycles": [ + 0.5, + 0.3125, + 0.421875, + 0.5, + 0.0, + 0.5, + 0.5 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 12, + "work_registers_used": 21 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/gaussian_blur_decal.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 4.289999961853027, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 8.333333015441895, + 2.0, + 2.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 2, + "work_registers_used": 4 + } + } + } + }, + "flutter/impeller/entity/gles/glyph_atlas.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/glyph_atlas.frag.gles", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "varying" + ], + "longest_path_cycles": [ + 0.09375, + 0.03125, + 0.09375, + 0.0, + 0.0, + 0.375, + 0.25 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "varying" + ], + "shortest_path_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 0.0, + 0.375, + 0.25 + ], + "total_bound_pipelines": [ + "varying" + ], + "total_cycles": [ + 0.09375, + 0.03125, + 0.09375, + 0.0, + 0.0, + 0.375, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 6, + "work_registers_used": 19 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/glyph_atlas.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "longest_path_cycles": [ + 1.0, + 1.0, + 1.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_cycles": [ + 1.0, + 1.0, + 1.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 1.3333333730697632, + 1.0, + 1.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/glyph_atlas.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/glyph_atlas.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 88, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.140625, + 0.140625, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.140625, + 0.140625, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.140625, + 0.140625, + 0.046875, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 4.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 4.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.03125, + 0.0, + 0.03125, + 0.0, + 4.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 9 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/glyph_atlas.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" ], "longest_path_cycles": [ - 0.65625, - 0.65625, - 0.53125, - 0.625, + 2.9700000286102295, + 7.0, + 0.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 2.9700000286102295, + 7.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 3.0, + 7.0, + 0.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/glyph_atlas_sdf.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/glyph_atlas_sdf.frag.gles", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 77, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma", + "arith_sfu" + ], + "longest_path_cycles": [ + 0.3125, + 0.3125, + 0.046875, + 0.3125, 0.0, - 0.5, - 0.5 + 0.25, + 0.25 ], "pipelines": [ "arith_total", @@ -1280,41 +7033,43 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_cvt" + "arith_fma", + "arith_sfu" ], "shortest_path_cycles": [ - 0.375, - 0.328125, - 0.375, - 0.25, + 0.3125, + 0.3125, + 0.015625, + 0.3125, 0.0, 0.25, - 0.0 + 0.25 ], "total_bound_pipelines": [ "arith_total", - "arith_fma" + "arith_fma", + "arith_sfu" ], "total_cycles": [ - 0.65625, - 0.65625, - 0.578125, - 0.625, + 0.3125, + 0.3125, + 0.046875, + 0.3125, 0.0, - 0.5, - 0.5 + 0.25, + 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 12, + "uniform_registers_used": 8, "work_registers_used": 20 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_luminosity.frag.gles", + "filename": "flutter/impeller/entity/gles/glyph_atlas_sdf.frag.gles", "has_uniform_computation": false, "type": "Fragment", "variants": { @@ -1325,9 +7080,9 @@ "arithmetic" ], "longest_path_cycles": [ - 9.899999618530273, - 2.0, - 2.0 + 3.299999952316284, + 1.0, + 3.0 ], "pipelines": [ "arithmetic", @@ -1338,56 +7093,98 @@ "arithmetic" ], "shortest_path_cycles": [ - 5.940000057220459, + 3.299999952316284, 1.0, - 0.0 + 3.0 ], "total_bound_pipelines": [ "arithmetic" ], "total_cycles": [ - 11.0, - 2.0, - 2.0 + 3.6666667461395264, + 1.0, + 3.0 ] }, "thread_occupancy": 100, "uniform_registers_used": 1, - "work_registers_used": 3 + "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/advanced_blend_multiply.frag.gles": { + "flutter/impeller/entity/gles/glyph_atlas_sdf.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_multiply.frag.gles", - "has_side_effects": false, - "has_uniform_computation": true, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, + "filename": "flutter/impeller/entity/gles/glyph_atlas_sdf.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", "variants": { - "Main": { - "fp16_arithmetic": 100, + "Position": { + "fp16_arithmetic": 88, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.140625, + 0.140625, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.140625, + 0.140625, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.140625, + 0.140625, + 0.046875, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": null, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_sfu", - "varying", - "texture" + "load_store" ], "longest_path_cycles": [ - 0.5, - 0.203125, - 0.40625, - 0.5, 0.0, - 0.5, - 0.5 + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 ], "pipelines": [ "arith_total", @@ -1395,63 +7192,54 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_cvt", - "arith_sfu", - "varying" + "load_store" ], "shortest_path_cycles": [ - 0.25, - 0.171875, - 0.25, - 0.25, 0.0, - 0.25, + 0.0, + 0.0, + 0.0, + 3.0, 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_sfu", - "varying", - "texture" + "load_store" ], "total_cycles": [ - 0.5, - 0.203125, - 0.453125, - 0.5, 0.0, - 0.5, - 0.5 + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 8, - "work_registers_used": 20 + "work_registers_used": 6 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_multiply.frag.gles", + "filename": "flutter/impeller/entity/gles/glyph_atlas_sdf.vert.gles", "has_uniform_computation": false, - "type": "Fragment", + "type": "Vertex", "variants": { "Main": { "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "longest_path_cycles": [ - 6.269999980926514, - 2.0, - 2.0 + 2.9700000286102295, + 5.0, + 0.0 ], "pipelines": [ "arithmetic", @@ -1459,59 +7247,101 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 3.630000114440918, - 1.0, + 2.9700000286102295, + 5.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 7.0, - 2.0, - 2.0 + 3.0, + 5.0, + 0.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 1, + "uniform_registers_used": 4, "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/advanced_blend_overlay.frag.gles": { + "flutter/impeller/entity/gles/gradient_fill.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_overlay.frag.gles", - "has_side_effects": false, - "has_uniform_computation": true, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, + "filename": "flutter/impeller/entity/gles/gradient_fill.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", "variants": { - "Main": { - "fp16_arithmetic": 100, + "Position": { + "fp16_arithmetic": 80, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ "arith_total", + "arith_fma", + "arith_cvt", "arith_sfu", - "varying", + "load_store", "texture" ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 24, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 0, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], "longest_path_cycles": [ - 0.5, - 0.453125, - 0.46875, - 0.5, + 0.125, + 0.125, 0.0, - 0.5, - 0.5 + 0.0625, + 3.0, + 0.0 ], "pipelines": [ "arith_total", @@ -1519,59 +7349,54 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "shortest_path_cycles": [ - 0.421875, - 0.421875, - 0.3125, - 0.25, + 0.125, + 0.125, 0.0, - 0.25, + 0.0625, + 3.0, 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_cvt" + "load_store" ], "total_cycles": [ - 0.515625, - 0.453125, - 0.515625, - 0.5, + 0.125, + 0.125, 0.0, - 0.5, - 0.5 + 0.0625, + 3.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 25 + "uniform_registers_used": 18, + "work_registers_used": 9 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_overlay.frag.gles", + "filename": "flutter/impeller/entity/gles/gradient_fill.vert.gles", "has_uniform_computation": false, - "type": "Fragment", + "type": "Vertex", "variants": { "Main": { "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "longest_path_cycles": [ - 7.260000228881836, - 2.0, - 2.0 + 3.299999952316284, + 4.0, + 0.0 ], "pipelines": [ "arithmetic", @@ -1579,33 +7404,33 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 4.949999809265137, - 1.0, + 3.299999952316284, + 4.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 8.0, - 2.0, - 2.0 + 3.3333332538604736, + 4.0, + 0.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 4 + "uniform_registers_used": 5, + "work_registers_used": 3 } } } }, - "flutter/impeller/entity/gles/advanced_blend_saturation.frag.gles": { + "flutter/impeller/entity/gles/linear_gradient_fill.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_saturation.frag.gles", + "filename": "flutter/impeller/entity/gles/linear_gradient_fill.frag.gles", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -1615,21 +7440,21 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 86, + "fp16_arithmetic": 70, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "arith_total", - "arith_fma" + "arith_cvt" ], "longest_path_cycles": [ - 0.762499988079071, - 0.762499988079071, - 0.6875, - 0.6875, + 0.40625, + 0.28125, + 0.40625, + 0.125, 0.0, - 0.5, - 0.5 + 0.125, + 0.25 ], "pipelines": [ "arith_total", @@ -1645,12 +7470,12 @@ "arith_cvt" ], "shortest_path_cycles": [ - 0.515625, - 0.328125, - 0.515625, - 0.25, + 0.1875, + 0.171875, + 0.1875, + 0.125, 0.0, - 0.25, + 0.125, 0.0 ], "total_bound_pipelines": [ @@ -1658,26 +7483,26 @@ "arith_cvt" ], "total_cycles": [ - 0.78125, - 0.762499988079071, - 0.78125, - 0.6875, + 0.484375, + 0.3125, + 0.484375, + 0.125, 0.0, - 0.5, - 0.5 + 0.125, + 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 12, - "work_registers_used": 21 + "work_registers_used": 20 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_saturation.frag.gles", - "has_uniform_computation": false, + "filename": "flutter/impeller/entity/gles/linear_gradient_fill.frag.gles", + "has_uniform_computation": true, "type": "Fragment", "variants": { "Main": { @@ -1687,9 +7512,9 @@ "arithmetic" ], "longest_path_cycles": [ - 12.210000038146973, - 2.0, - 2.0 + 6.929999828338623, + 1.0, + 1.0 ], "pipelines": [ "arithmetic", @@ -1700,7 +7525,7 @@ "arithmetic" ], "shortest_path_cycles": [ - 6.599999904632568, + 2.309999942779541, 1.0, 0.0 ], @@ -1708,24 +7533,24 @@ "arithmetic" ], "total_cycles": [ - 13.333333015441895, - 2.0, - 2.0 + 7.666666507720947, + 1.0, + 1.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 3 + "uniform_registers_used": 4, + "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/advanced_blend_screen.frag.gles": { + "flutter/impeller/entity/gles/linear_to_srgb_filter.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_screen.frag.gles", + "filename": "flutter/impeller/entity/gles/linear_to_srgb_filter.frag.gles", "has_side_effects": false, - "has_uniform_computation": true, + "has_uniform_computation": false, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -1733,23 +7558,22 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 100, + "fp16_arithmetic": 40, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "arith_total", - "arith_sfu", - "varying", - "texture" + "arith_cvt", + "arith_sfu" ], "longest_path_cycles": [ - 0.5, - 0.234375, - 0.40625, - 0.5, + 0.4375, + 0.328125, + 0.4375, + 0.4375, 0.0, - 0.5, - 0.5 + 0.25, + 0.25 ], "pipelines": [ "arith_total", @@ -1762,45 +7586,42 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_cvt", - "arith_sfu", - "varying" + "arith_sfu" ], "shortest_path_cycles": [ - 0.25, - 0.203125, - 0.25, - 0.25, + 0.4375, + 0.328125, + 0.40625, + 0.4375, 0.0, 0.25, - 0.0 + 0.25 ], "total_bound_pipelines": [ "arith_total", - "arith_sfu", - "varying", - "texture" + "arith_cvt", + "arith_sfu" ], "total_cycles": [ - 0.5, - 0.234375, - 0.453125, - 0.5, + 0.4375, + 0.328125, + 0.4375, + 0.4375, 0.0, - 0.5, - 0.5 + 0.25, + 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 21 + "uniform_registers_used": 10, + "work_registers_used": 30 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_screen.frag.gles", + "filename": "flutter/impeller/entity/gles/linear_to_srgb_filter.frag.gles", "has_uniform_computation": false, "type": "Fragment", "variants": { @@ -1811,9 +7632,9 @@ "arithmetic" ], "longest_path_cycles": [ - 6.269999980926514, - 2.0, - 2.0 + 4.949999809265137, + 1.0, + 1.0 ], "pipelines": [ "arithmetic", @@ -1824,17 +7645,17 @@ "arithmetic" ], "shortest_path_cycles": [ - 3.630000114440918, + 4.949999809265137, 1.0, - 0.0 + 1.0 ], "total_bound_pipelines": [ "arithmetic" ], "total_cycles": [ - 7.0, - 2.0, - 2.0 + 5.333333492279053, + 1.0, + 1.0 ] }, "thread_occupancy": 100, @@ -1844,34 +7665,27 @@ } } }, - "flutter/impeller/entity/gles/advanced_blend_softlight.frag.gles": { + "flutter/impeller/entity/gles/linear_to_srgb_filter.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/advanced_blend_softlight.frag.gles", - "has_side_effects": false, + "filename": "flutter/impeller/entity/gles/linear_to_srgb_filter.vert.gles", "has_uniform_computation": true, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, + "type": "Vertex", "variants": { - "Main": { - "fp16_arithmetic": 100, + "Position": { + "fp16_arithmetic": 80, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "longest_path_cycles": [ - 0.71875, - 0.71875, - 0.609375, - 0.6875, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.5, - 0.5 + 2.0, + 0.0 ], "pipelines": [ "arith_total", @@ -1879,59 +7693,105 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "shortest_path_cycles": [ - 0.6875, - 0.6875, - 0.453125, - 0.4375, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.25, + 2.0, 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "total_cycles": [ - 0.71875, - 0.71875, - 0.65625, - 0.6875, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.5, - 0.5 + 2.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 12, + "uniform_registers_used": 16, "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 10, + "work_registers_used": 7 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/advanced_blend_softlight.frag.gles", + "filename": "flutter/impeller/entity/gles/linear_to_srgb_filter.vert.gles", "has_uniform_computation": false, - "type": "Fragment", + "type": "Vertex", "variants": { "Main": { "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "longest_path_cycles": [ - 10.5600004196167, - 2.0, - 2.0 + 2.9700000286102295, + 4.0, + 0.0 ], "pipelines": [ "arithmetic", @@ -1939,33 +7799,33 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 8.25, - 1.0, + 2.9700000286102295, + 4.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 11.333333015441895, - 2.0, - 2.0 + 3.0, + 4.0, + 0.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 4 + "uniform_registers_used": 4, + "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/blend.frag.gles": { + "flutter/impeller/entity/gles/morphology_filter.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/blend.frag.gles", + "filename": "flutter/impeller/entity/gles/morphology_filter.frag.gles", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -1975,20 +7835,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 100, + "fp16_arithmetic": 83, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "texture" + null ], "longest_path_cycles": [ - 0.09375, - 0.046875, - 0.09375, - 0.0, - 0.0, - 0.125, - 0.25 + null, + null, + null, + null, + null, + null, + null ], "pipelines": [ "arith_total", @@ -2000,40 +7860,42 @@ "texture" ], "shortest_path_bound_pipelines": [ - "texture" + "arith_total", + "arith_cvt" ], "shortest_path_cycles": [ 0.0625, - 0.046875, + 0.0, 0.0625, 0.0, 0.0, - 0.125, - 0.25 + 0.0, + 0.0 ], "total_bound_pipelines": [ - "texture" + "arith_total", + "arith_cvt" ], "total_cycles": [ - 0.09375, - 0.046875, - 0.09375, - 0.0, + 0.328125, + 0.078125, + 0.328125, + 0.1875, 0.0, - 0.125, + 0.25, 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 19 + "uniform_registers_used": 8, + "work_registers_used": 20 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/blend.frag.gles", + "filename": "flutter/impeller/entity/gles/morphology_filter.frag.gles", "has_uniform_computation": false, "type": "Fragment", "variants": { @@ -2041,14 +7903,12 @@ "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic", - "load_store", - "texture" + null ], "longest_path_cycles": [ - 1.0, - 1.0, - 1.0 + null, + null, + null ], "pipelines": [ "arithmetic", @@ -2056,36 +7916,34 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic", - "load_store", - "texture" + "arithmetic" ], "shortest_path_cycles": [ + 1.9800000190734863, 1.0, - 1.0, - 1.0 + 0.0 ], "total_bound_pipelines": [ "arithmetic" ], "total_cycles": [ - 1.3333333730697632, + 5.333333492279053, 1.0, 1.0 ] }, "thread_occupancy": 100, "uniform_registers_used": 1, - "work_registers_used": 2 + "work_registers_used": 4 } } } }, - "flutter/impeller/entity/gles/blend.vert.gles": { + "flutter/impeller/entity/gles/morphology_filter.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/blend.vert.gles", - "has_uniform_computation": false, + "filename": "flutter/impeller/entity/gles/morphology_filter.vert.gles", + "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { @@ -2136,20 +7994,20 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 14, + "uniform_registers_used": 16, "work_registers_used": 32 }, "Varying": { - "fp16_arithmetic": null, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.0, - 0.0, - 0.0, + 0.03125, + 0.015625, + 0.03125, 0.0, 3.0, 0.0 @@ -2166,9 +8024,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.0, - 0.0, - 0.0, + 0.03125, + 0.015625, + 0.03125, 0.0, 3.0, 0.0 @@ -2177,9 +8035,9 @@ "load_store" ], "total_cycles": [ - 0.0, - 0.0, - 0.0, + 0.03125, + 0.015625, + 0.03125, 0.0, 3.0, 0.0 @@ -2187,14 +8045,14 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 6 + "uniform_registers_used": 10, + "work_registers_used": 7 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/blend.vert.gles", + "filename": "flutter/impeller/entity/gles/morphology_filter.vert.gles", "has_uniform_computation": false, "type": "Vertex", "variants": { @@ -2205,7 +8063,7 @@ "load_store" ], "longest_path_cycles": [ - 2.640000104904175, + 2.9700000286102295, 5.0, 0.0 ], @@ -2218,7 +8076,7 @@ "load_store" ], "shortest_path_cycles": [ - 2.640000104904175, + 2.9700000286102295, 5.0, 0.0 ], @@ -2226,7 +8084,7 @@ "load_store" ], "total_cycles": [ - 2.6666667461395264, + 3.0, 5.0, 0.0 ] @@ -2238,34 +8096,27 @@ } } }, - "flutter/impeller/entity/gles/border_mask_blur.frag.gles": { + "flutter/impeller/entity/gles/position_color.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/border_mask_blur.frag.gles", - "has_side_effects": false, - "has_uniform_computation": true, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, + "filename": "flutter/impeller/entity/gles/position_color.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", "variants": { - "Main": { - "fp16_arithmetic": 10, + "Position": { + "fp16_arithmetic": 80, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "longest_path_cycles": [ - 0.8125, - 0.8125, - 0.234375, - 0.25, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.25, - 0.25 + 2.0, + 0.0 ], "pipelines": [ "arith_total", @@ -2273,59 +8124,105 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "shortest_path_cycles": [ - 0.8125, - 0.8125, - 0.203125, - 0.25, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.25, - 0.25 + 2.0, + 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "total_cycles": [ - 0.8125, - 0.8125, - 0.234375, - 0.25, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.25, - 0.25 + 2.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, + "uniform_registers_used": 14, "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 8, + "work_registers_used": 7 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/border_mask_blur.frag.gles", + "filename": "flutter/impeller/entity/gles/position_color.vert.gles", "has_uniform_computation": false, - "type": "Fragment", + "type": "Vertex", "variants": { "Main": { "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "longest_path_cycles": [ - 8.90999984741211, - 1.0, - 1.0 + 2.640000104904175, + 5.0, + 0.0 ], "pipelines": [ "arithmetic", @@ -2333,34 +8230,34 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 8.90999984741211, - 1.0, - 1.0 + 2.640000104904175, + 5.0, + 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 9.333333015441895, - 1.0, - 1.0 + 2.6666667461395264, + 5.0, + 0.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 3 + "uniform_registers_used": 4, + "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/border_mask_blur.vert.gles": { + "flutter/impeller/entity/gles/position_uv.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/border_mask_blur.vert.gles", - "has_uniform_computation": true, + "filename": "flutter/impeller/entity/gles/position_uv.vert.gles", + "has_uniform_computation": false, "type": "Vertex", "variants": { "Position": { @@ -2411,22 +8308,22 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 16, + "uniform_registers_used": 20, "work_registers_used": 32 }, "Varying": { - "fp16_arithmetic": 100, + "fp16_arithmetic": 0, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.125, + 0.125, 0.0, - 3.0, + 0.0625, + 4.0, 0.0 ], "pipelines": [ @@ -2441,35 +8338,35 @@ "load_store" ], "shortest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.125, + 0.125, 0.0, - 3.0, + 0.0625, + 4.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.125, + 0.125, 0.0, - 3.0, + 0.0625, + 4.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 7 + "uniform_registers_used": 18, + "work_registers_used": 10 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/border_mask_blur.vert.gles", + "filename": "flutter/impeller/entity/gles/position_uv.vert.gles", "has_uniform_computation": false, "type": "Vertex", "variants": { @@ -2480,8 +8377,8 @@ "load_store" ], "longest_path_cycles": [ - 2.9700000286102295, - 5.0, + 3.299999952316284, + 6.0, 0.0 ], "pipelines": [ @@ -2493,32 +8390,32 @@ "load_store" ], "shortest_path_cycles": [ - 2.9700000286102295, - 5.0, + 3.299999952316284, + 6.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 3.0, - 5.0, + 3.3333332538604736, + 6.0, 0.0 ] }, "thread_occupancy": 100, "uniform_registers_used": 4, - "work_registers_used": 2 + "work_registers_used": 3 } } } }, - "flutter/impeller/entity/gles/color_matrix_color_filter.frag.gles": { + "flutter/impeller/entity/gles/radial_gradient_fill.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/color_matrix_color_filter.frag.gles", + "filename": "flutter/impeller/entity/gles/radial_gradient_fill.frag.gles", "has_side_effects": false, - "has_uniform_computation": false, + "has_uniform_computation": true, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -2526,22 +8423,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 100, + "fp16_arithmetic": 55, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "arith_total", - "arith_fma", - "varying", - "texture" + "arith_cvt" ], "longest_path_cycles": [ - 0.25, - 0.25, - 0.09375, - 0.0625, + 0.40625, + 0.3125, + 0.40625, + 0.1875, 0.0, - 0.25, + 0.125, 0.25 ], "pipelines": [ @@ -2555,46 +8450,42 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_fma", - "varying", - "texture" + "arith_fma" ], "shortest_path_cycles": [ - 0.25, - 0.25, - 0.0625, - 0.0625, + 0.203125, + 0.203125, + 0.1875, + 0.1875, 0.0, - 0.25, - 0.25 + 0.125, + 0.0 ], "total_bound_pipelines": [ "arith_total", - "arith_fma", - "varying", - "texture" + "arith_cvt" ], "total_cycles": [ - 0.25, - 0.25, - 0.09375, - 0.0625, + 0.484375, + 0.34375, + 0.484375, + 0.1875, 0.0, - 0.25, + 0.125, 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 14, - "work_registers_used": 21 + "uniform_registers_used": 10, + "work_registers_used": 20 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/color_matrix_color_filter.frag.gles", - "has_uniform_computation": false, + "filename": "flutter/impeller/entity/gles/radial_gradient_fill.frag.gles", + "has_uniform_computation": true, "type": "Fragment", "variants": { "Main": { @@ -2604,7 +8495,7 @@ "arithmetic" ], "longest_path_cycles": [ - 2.640000104904175, + 6.929999828338623, 1.0, 1.0 ], @@ -2617,31 +8508,149 @@ "arithmetic" ], "shortest_path_cycles": [ - 2.640000104904175, + 2.309999942779541, 1.0, - 1.0 + 0.0 ], "total_bound_pipelines": [ "arithmetic" ], "total_cycles": [ - 3.0, + 7.666666507720947, 1.0, 1.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 3, + "uniform_registers_used": 2, "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/color_matrix_color_filter.vert.gles": { + "flutter/impeller/entity/gles/rrect_blur.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/color_matrix_color_filter.vert.gles", + "filename": "flutter/impeller/entity/gles/rrect_blur.frag.gles", + "has_side_effects": false, "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 33, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "longest_path_cycles": [ + 1.5125000476837158, + 1.5125000476837158, + 0.546875, + 1.5, + 0.0, + 0.125, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "shortest_path_cycles": [ + 0.203125, + 0.203125, + 0.046875, + 0.0625, + 0.0, + 0.125, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_fma" + ], + "total_cycles": [ + 1.6375000476837158, + 1.6375000476837158, + 0.578125, + 1.5625, + 0.0, + 0.125, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 20, + "work_registers_used": 32 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/rrect_blur.frag.gles", + "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + null + ], + "longest_path_cycles": [ + null, + null, + null + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 2.640000104904175, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 10.666666984558105, + 1.0, + 0.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 4 + } + } + } + }, + "flutter/impeller/entity/gles/rrect_blur.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/rrect_blur.vert.gles", + "has_uniform_computation": false, "type": "Vertex", "variants": { "Position": { @@ -2692,20 +8701,20 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 16, + "uniform_registers_used": 14, "work_registers_used": 32 }, "Varying": { - "fp16_arithmetic": 100, + "fp16_arithmetic": null, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0, + 0.0, + 0.0, 0.0, 3.0, 0.0 @@ -2722,9 +8731,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0, + 0.0, + 0.0, 0.0, 3.0, 0.0 @@ -2733,9 +8742,9 @@ "load_store" ], "total_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0, + 0.0, + 0.0, 0.0, 3.0, 0.0 @@ -2743,14 +8752,14 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 7 + "uniform_registers_used": 8, + "work_registers_used": 6 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/color_matrix_color_filter.vert.gles", + "filename": "flutter/impeller/entity/gles/rrect_blur.vert.gles", "has_uniform_computation": false, "type": "Vertex", "variants": { @@ -2761,7 +8770,7 @@ "load_store" ], "longest_path_cycles": [ - 2.9700000286102295, + 2.640000104904175, 4.0, 0.0 ], @@ -2774,7 +8783,7 @@ "load_store" ], "shortest_path_cycles": [ - 2.9700000286102295, + 2.640000104904175, 4.0, 0.0 ], @@ -2782,7 +8791,7 @@ "load_store" ], "total_cycles": [ - 3.0, + 2.6666667461395264, 4.0, 0.0 ] @@ -2794,33 +8803,27 @@ } } }, - "flutter/impeller/entity/gles/conical_gradient_fill.frag.gles": { + "flutter/impeller/entity/gles/runtime_effect.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/conical_gradient_fill.frag.gles", - "has_side_effects": false, - "has_uniform_computation": true, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, + "filename": "flutter/impeller/entity/gles/runtime_effect.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", "variants": { - "Main": { - "fp16_arithmetic": 61, + "Position": { + "fp16_arithmetic": 80, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - null + "load_store" ], "longest_path_cycles": [ - null, - null, - null, - null, - null, - null, - null + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 ], "pipelines": [ "arith_total", @@ -2828,233 +8831,108 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_cvt" + "load_store" ], "shortest_path_cycles": [ - 0.25, - 0.234375, - 0.25, - 0.1875, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.125, + 2.0, 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_cvt" + "load_store" ], "total_cycles": [ - 0.59375, - 0.375, - 0.59375, - 0.1875, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.125, - 0.25 + 2.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 14, - "work_registers_used": 20 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/conical_gradient_fill.frag.gles", - "has_uniform_computation": true, - "type": "Fragment", - "variants": { - "Main": { + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": null, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - null + "load_store" ], "longest_path_cycles": [ - null, - null, - null - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "arithmetic" - ], - "shortest_path_cycles": [ - 1.9800000190734863, - 1.0, + 0.0, + 0.0, + 0.0, + 0.0, + 3.0, 0.0 ], - "total_bound_pipelines": [ - "arithmetic" - ], - "total_cycles": [ - 9.333333015441895, - 1.0, - 1.0 - ] - }, - "thread_occupancy": 100, - "uniform_registers_used": 3, - "work_registers_used": 2 - } - } - } - }, - "flutter/impeller/entity/gles/gaussian_blur.frag.gles": { - "Mali-G78": { - "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/gaussian_blur.frag.gles", - "has_side_effects": false, - "has_uniform_computation": true, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, - "variants": { - "Main": { - "fp16_arithmetic": 76, - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - null - ], - "longest_path_cycles": [ - null, - null, - null, - null, - null, - null, - null - ], "pipelines": [ "arith_total", "arith_fma", "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "varying", - "texture" + "load_store" ], "shortest_path_cycles": [ - 0.109375, - 0.109375, - 0.09375, - 0.0625, 0.0, - 0.25, - 0.25 + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 ], "total_bound_pipelines": [ - "varying", - "texture" + "load_store" ], "total_cycles": [ - 0.3125, - 0.3125, - 0.21875, - 0.125, 0.0, - 0.5, - 0.5 + 0.0, + 0.0, + 0.0, + 3.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 12, - "work_registers_used": 21 + "uniform_registers_used": 8, + "work_registers_used": 6 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/gaussian_blur.frag.gles", + "filename": "flutter/impeller/entity/gles/runtime_effect.vert.gles", "has_uniform_computation": false, - "type": "Fragment", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - null - ], - "longest_path_cycles": [ - null, - null, - null - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "arithmetic" - ], - "shortest_path_cycles": [ - 2.9700000286102295, - 2.0, - 1.0 - ], - "total_bound_pipelines": [ - "arithmetic" - ], - "total_cycles": [ - 5.0, - 2.0, - 2.0 - ] - }, - "thread_occupancy": 100, - "uniform_registers_used": 2, - "work_registers_used": 3 - } - } - } - }, - "flutter/impeller/entity/gles/gaussian_blur.vert.gles": { - "Mali-G78": { - "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/gaussian_blur.vert.gles", - "has_uniform_computation": true, "type": "Vertex", "variants": { - "Position": { - "fp16_arithmetic": 80, + "Main": { "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, - 0.0, - 2.0, + 2.640000104904175, + 4.0, 0.0 ], "pipelines": [ - "arith_total", - "arith_fma", - "arith_cvt", - "arith_sfu", + "arithmetic", "load_store", "texture" ], @@ -3062,43 +8940,53 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, - 0.0, - 2.0, + 2.640000104904175, + 4.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, - 0.0, - 2.0, + 2.6666667461395264, + 4.0, 0.0 ] }, - "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 16, - "work_registers_used": 32 - }, - "Varying": { - "fp16_arithmetic": 100, + "uniform_registers_used": 4, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/solid_fill.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/solid_fill.frag.gles", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": null, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_cvt" ], "longest_path_cycles": [ 0.0625, - 0.03125, + 0.0, 0.0625, 0.0, - 4.0, + 0.0, + 0.0, 0.0 ], "pipelines": [ @@ -3107,53 +8995,58 @@ "arith_cvt", "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_cvt" ], "shortest_path_cycles": [ - 0.0625, 0.03125, - 0.0625, 0.0, - 4.0, + 0.03125, + 0.0, + 0.0, + 0.0, 0.0 ], "total_bound_pipelines": [ - "load_store" + "arith_total", + "arith_cvt" ], "total_cycles": [ 0.0625, - 0.03125, + 0.0, 0.0625, 0.0, - 4.0, + 0.0, + 0.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 8 + "uniform_registers_used": 2, + "work_registers_used": 18 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/gaussian_blur.vert.gles", + "filename": "flutter/impeller/entity/gles/solid_fill.frag.gles", "has_uniform_computation": false, - "type": "Vertex", + "type": "Fragment", "variants": { "Main": { "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "arithmetic" ], "longest_path_cycles": [ - 3.299999952316284, - 7.0, + 1.0, + 0.0, 0.0 ], "pipelines": [ @@ -3162,56 +9055,50 @@ "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "arithmetic" ], "shortest_path_cycles": [ - 3.299999952316284, - 7.0, + 1.0, + 0.0, 0.0 ], "total_bound_pipelines": [ - "load_store" + "arithmetic" ], "total_cycles": [ - 3.3333332538604736, - 7.0, + 0.6666666865348816, + 0.0, 0.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 3 + "uniform_registers_used": 1, + "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/gaussian_blur_decal.frag.gles": { + "flutter/impeller/entity/gles/solid_fill.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/gaussian_blur_decal.frag.gles", - "has_side_effects": false, - "has_uniform_computation": true, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, + "filename": "flutter/impeller/entity/gles/solid_fill.vert.gles", + "has_uniform_computation": false, + "type": "Vertex", "variants": { - "Main": { - "fp16_arithmetic": 79, + "Position": { + "fp16_arithmetic": 80, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - null + "load_store" ], "longest_path_cycles": [ - null, - null, - null, - null, - null, - null, - null + 0.078125, + 0.078125, + 0.046875, + 0.0, + 2.0, + 0.0 ], "pipelines": [ "arith_total", @@ -3219,62 +9106,54 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_sfu", - "varying" + "load_store" ], "shortest_path_cycles": [ - 0.25, - 0.109375, - 0.1875, - 0.25, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.25, + 2.0, 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_sfu", - "varying", - "texture" + "load_store" ], "total_cycles": [ - 0.5, - 0.3125, - 0.421875, - 0.5, + 0.078125, + 0.078125, + 0.046875, 0.0, - 0.5, - 0.5 + 2.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 12, - "work_registers_used": 21 + "uniform_registers_used": 14, + "work_registers_used": 32 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/gaussian_blur_decal.frag.gles", + "filename": "flutter/impeller/entity/gles/solid_fill.vert.gles", "has_uniform_computation": false, - "type": "Fragment", + "type": "Vertex", "variants": { "Main": { "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - null + "load_store" ], "longest_path_cycles": [ - null, - null, - null + 2.640000104904175, + 3.0, + 0.0 ], "pipelines": [ "arithmetic", @@ -3282,33 +9161,33 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 4.289999961853027, - 2.0, + 2.640000104904175, + 3.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 8.333333015441895, - 2.0, - 2.0 + 2.6666667461395264, + 3.0, + 0.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 2, - "work_registers_used": 4 + "uniform_registers_used": 4, + "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/glyph_atlas.frag.gles": { + "flutter/impeller/entity/gles/srgb_to_linear_filter.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/glyph_atlas.frag.gles", + "filename": "flutter/impeller/entity/gles/srgb_to_linear_filter.frag.gles", "has_side_effects": false, "has_uniform_computation": false, "modifies_coverage": false, @@ -3318,19 +9197,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 100, + "fp16_arithmetic": 40, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "varying" + "arith_total", + "arith_cvt" ], "longest_path_cycles": [ - 0.09375, - 0.03125, - 0.09375, - 0.0, + 0.484375, + 0.328125, + 0.484375, + 0.4375, 0.0, - 0.375, + 0.25, 0.25 ], "pipelines": [ @@ -3343,40 +9223,42 @@ "texture" ], "shortest_path_bound_pipelines": [ - "varying" + "arith_total", + "arith_cvt" ], "shortest_path_cycles": [ - 0.0625, - 0.03125, - 0.0625, - 0.0, + 0.453125, + 0.328125, + 0.453125, + 0.4375, 0.0, - 0.375, + 0.25, 0.25 ], "total_bound_pipelines": [ - "varying" + "arith_total", + "arith_cvt" ], "total_cycles": [ - 0.09375, - 0.03125, - 0.09375, - 0.0, + 0.484375, + 0.328125, + 0.484375, + 0.4375, 0.0, - 0.375, + 0.25, 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 6, - "work_registers_used": 19 + "uniform_registers_used": 10, + "work_registers_used": 28 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/glyph_atlas.frag.gles", + "filename": "flutter/impeller/entity/gles/srgb_to_linear_filter.frag.gles", "has_uniform_computation": false, "type": "Fragment", "variants": { @@ -3384,12 +9266,10 @@ "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic", - "load_store", - "texture" + "arithmetic" ], "longest_path_cycles": [ - 1.0, + 4.949999809265137, 1.0, 1.0 ], @@ -3399,12 +9279,10 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic", - "load_store", - "texture" + "arithmetic" ], "shortest_path_cycles": [ - 1.0, + 4.949999809265137, 1.0, 1.0 ], @@ -3412,35 +9290,35 @@ "arithmetic" ], "total_cycles": [ - 1.3333333730697632, + 5.333333492279053, 1.0, 1.0 ] }, "thread_occupancy": 100, "uniform_registers_used": 1, - "work_registers_used": 2 + "work_registers_used": 3 } } } }, - "flutter/impeller/entity/gles/glyph_atlas.vert.gles": { + "flutter/impeller/entity/gles/srgb_to_linear_filter.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/glyph_atlas.vert.gles", - "has_uniform_computation": false, + "filename": "flutter/impeller/entity/gles/srgb_to_linear_filter.vert.gles", + "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 88, + "fp16_arithmetic": 80, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.140625, - 0.140625, + 0.078125, + 0.078125, 0.046875, 0.0, 2.0, @@ -3458,8 +9336,8 @@ "load_store" ], "shortest_path_cycles": [ - 0.140625, - 0.140625, + 0.078125, + 0.078125, 0.046875, 0.0, 2.0, @@ -3469,8 +9347,8 @@ "load_store" ], "total_cycles": [ - 0.140625, - 0.140625, + 0.078125, + 0.078125, 0.046875, 0.0, 2.0, @@ -3483,7 +9361,7 @@ "work_registers_used": 32 }, "Varying": { - "fp16_arithmetic": null, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ @@ -3491,10 +9369,10 @@ ], "longest_path_cycles": [ 0.03125, - 0.0, + 0.015625, 0.03125, 0.0, - 4.0, + 3.0, 0.0 ], "pipelines": [ @@ -3510,10 +9388,10 @@ ], "shortest_path_cycles": [ 0.03125, - 0.0, + 0.015625, 0.03125, 0.0, - 4.0, + 3.0, 0.0 ], "total_bound_pipelines": [ @@ -3521,23 +9399,23 @@ ], "total_cycles": [ 0.03125, - 0.0, + 0.015625, 0.03125, 0.0, - 4.0, + 3.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 9 + "uniform_registers_used": 10, + "work_registers_used": 7 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/glyph_atlas.vert.gles", + "filename": "flutter/impeller/entity/gles/srgb_to_linear_filter.vert.gles", "has_uniform_computation": false, "type": "Vertex", "variants": { @@ -3549,7 +9427,7 @@ ], "longest_path_cycles": [ 2.9700000286102295, - 7.0, + 4.0, 0.0 ], "pipelines": [ @@ -3562,7 +9440,7 @@ ], "shortest_path_cycles": [ 2.9700000286102295, - 7.0, + 4.0, 0.0 ], "total_bound_pipelines": [ @@ -3570,7 +9448,7 @@ ], "total_cycles": [ 3.0, - 7.0, + 4.0, 0.0 ] }, @@ -3581,12 +9459,12 @@ } } }, - "flutter/impeller/entity/gles/glyph_atlas_sdf.frag.gles": { + "flutter/impeller/entity/gles/sweep_gradient_fill.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/glyph_atlas_sdf.frag.gles", + "filename": "flutter/impeller/entity/gles/sweep_gradient_fill.frag.gles", "has_side_effects": false, - "has_uniform_computation": false, + "has_uniform_computation": true, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -3594,21 +9472,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 77, + "fp16_arithmetic": 15, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "arith_total", - "arith_fma", - "arith_sfu" + "arith_cvt" ], "longest_path_cycles": [ - 0.3125, - 0.3125, - 0.046875, - 0.3125, + 0.5, + 0.453125, + 0.5, + 0.375, 0.0, - 0.25, + 0.125, 0.25 ], "pipelines": [ @@ -3622,28 +9499,144 @@ ], "shortest_path_bound_pipelines": [ "arith_total", - "arith_fma", "arith_sfu" ], "shortest_path_cycles": [ - 0.3125, - 0.3125, - 0.015625, - 0.3125, + 0.375, + 0.34375, + 0.28125, + 0.375, 0.0, - 0.25, + 0.125, + 0.0 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.59375, + 0.484375, + 0.59375, + 0.375, + 0.0, + 0.125, 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 18, + "work_registers_used": 24 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/sweep_gradient_fill.frag.gles", + "has_uniform_computation": true, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 7.920000076293945, + 1.0, + 1.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 2.9700000286102295, + 1.0, + 0.0 ], "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 8.666666984558105, + 1.0, + 1.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/texture_fill.frag.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/texture_fill.frag.gles", + "has_side_effects": false, + "has_uniform_computation": false, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "varying", + "texture" + ], + "longest_path_cycles": [ + 0.03125, + 0.03125, + 0.03125, + 0.0, + 0.0, + 0.25, + 0.25 + ], + "pipelines": [ "arith_total", "arith_fma", - "arith_sfu" + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "varying", + "texture" + ], + "shortest_path_cycles": [ + 0.03125, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.25, + 0.25 + ], + "total_bound_pipelines": [ + "varying", + "texture" ], "total_cycles": [ - 0.3125, - 0.3125, - 0.046875, - 0.3125, + 0.03125, + 0.03125, + 0.03125, + 0.0, 0.0, 0.25, 0.25 @@ -3651,14 +9644,14 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 20 + "uniform_registers_used": 4, + "work_registers_used": 19 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/glyph_atlas_sdf.frag.gles", + "filename": "flutter/impeller/entity/gles/texture_fill.frag.gles", "has_uniform_computation": false, "type": "Fragment", "variants": { @@ -3666,12 +9659,14 @@ "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "arithmetic", + "load_store", + "texture" ], "longest_path_cycles": [ - 3.299999952316284, 1.0, - 3.0 + 1.0, + 1.0 ], "pipelines": [ "arithmetic", @@ -3679,20 +9674,23 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arithmetic", + "load_store", + "texture" ], "shortest_path_cycles": [ - 3.299999952316284, 1.0, - 3.0 + 1.0, + 1.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store", + "texture" ], "total_cycles": [ - 3.6666667461395264, + 0.6666666865348816, 1.0, - 3.0 + 1.0 ] }, "thread_occupancy": 100, @@ -3702,23 +9700,23 @@ } } }, - "flutter/impeller/entity/gles/glyph_atlas_sdf.vert.gles": { + "flutter/impeller/entity/gles/texture_fill.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/glyph_atlas_sdf.vert.gles", - "has_uniform_computation": false, + "filename": "flutter/impeller/entity/gles/texture_fill.vert.gles", + "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 88, + "fp16_arithmetic": 80, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.140625, - 0.140625, + 0.078125, + 0.078125, 0.046875, 0.0, 2.0, @@ -3736,8 +9734,8 @@ "load_store" ], "shortest_path_cycles": [ - 0.140625, - 0.140625, + 0.078125, + 0.078125, 0.046875, 0.0, 2.0, @@ -3747,8 +9745,8 @@ "load_store" ], "total_cycles": [ - 0.140625, - 0.140625, + 0.078125, + 0.078125, 0.046875, 0.0, 2.0, @@ -3761,16 +9759,16 @@ "work_registers_used": 32 }, "Varying": { - "fp16_arithmetic": null, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.0, - 0.0, - 0.0, + 0.03125, + 0.015625, + 0.03125, 0.0, 3.0, 0.0 @@ -3787,9 +9785,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.0, - 0.0, - 0.0, + 0.03125, + 0.015625, + 0.03125, 0.0, 3.0, 0.0 @@ -3798,9 +9796,9 @@ "load_store" ], "total_cycles": [ - 0.0, - 0.0, - 0.0, + 0.03125, + 0.015625, + 0.03125, 0.0, 3.0, 0.0 @@ -3808,14 +9806,14 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 6 + "uniform_registers_used": 10, + "work_registers_used": 7 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/glyph_atlas_sdf.vert.gles", + "filename": "flutter/impeller/entity/gles/texture_fill.vert.gles", "has_uniform_computation": false, "type": "Vertex", "variants": { @@ -3859,11 +9857,129 @@ } } }, - "flutter/impeller/entity/gles/gradient_fill.vert.gles": { + "flutter/impeller/entity/gles/tiled_texture_fill.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/gradient_fill.vert.gles", + "filename": "flutter/impeller/entity/gles/tiled_texture_fill.frag.gles", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 33, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "longest_path_cycles": [ + 0.265625, + 0.03125, + 0.265625, + 0.0, + 0.0, + 0.25, + 0.25 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "varying", + "texture" + ], + "shortest_path_bound_pipelines": [ + "varying", + "texture" + ], + "shortest_path_cycles": [ + 0.0625, + 0.03125, + 0.0625, + 0.0, + 0.0, + 0.25, + 0.25 + ], + "total_bound_pipelines": [ + "arith_total", + "arith_cvt" + ], + "total_cycles": [ + 0.265625, + 0.03125, + 0.265625, + 0.0, + 0.0, + 0.25, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 4, + "work_registers_used": 19 + } + } + }, + "Mali-T880": { + "core": "Mali-T880", + "filename": "flutter/impeller/entity/gles/tiled_texture_fill.frag.gles", "has_uniform_computation": false, + "type": "Fragment", + "variants": { + "Main": { + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "arithmetic" + ], + "longest_path_cycles": [ + 3.299999952316284, + 1.0, + 1.0 + ], + "pipelines": [ + "arithmetic", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "arithmetic" + ], + "shortest_path_cycles": [ + 1.3200000524520874, + 1.0, + 0.0 + ], + "total_bound_pipelines": [ + "arithmetic" + ], + "total_cycles": [ + 3.6666667461395264, + 1.0, + 1.0 + ] + }, + "thread_occupancy": 100, + "uniform_registers_used": 1, + "work_registers_used": 2 + } + } + } + }, + "flutter/impeller/entity/gles/tiled_texture_fill.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gles/tiled_texture_fill.vert.gles", + "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { @@ -3914,11 +10030,11 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 24, + "uniform_registers_used": 22, "work_registers_used": 32 }, "Varying": { - "fp16_arithmetic": 0, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ @@ -3927,7 +10043,7 @@ "longest_path_cycles": [ 0.125, 0.125, - 0.0, + 0.03125, 0.0625, 3.0, 0.0 @@ -3946,7 +10062,7 @@ "shortest_path_cycles": [ 0.125, 0.125, - 0.0, + 0.03125, 0.0625, 3.0, 0.0 @@ -3957,7 +10073,7 @@ "total_cycles": [ 0.125, 0.125, - 0.0, + 0.03125, 0.0625, 3.0, 0.0 @@ -3965,14 +10081,14 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 18, - "work_registers_used": 9 + "uniform_registers_used": 16, + "work_registers_used": 8 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/gradient_fill.vert.gles", + "filename": "flutter/impeller/entity/gles/tiled_texture_fill.vert.gles", "has_uniform_computation": false, "type": "Vertex", "variants": { @@ -3983,7 +10099,7 @@ "load_store" ], "longest_path_cycles": [ - 3.299999952316284, + 3.9600000381469727, 4.0, 0.0 ], @@ -3996,32 +10112,33 @@ "load_store" ], "shortest_path_cycles": [ - 3.299999952316284, + 3.9600000381469727, 4.0, 0.0 ], "total_bound_pipelines": [ + "arithmetic", "load_store" ], "total_cycles": [ - 3.3333332538604736, + 4.0, 4.0, 0.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 5, + "uniform_registers_used": 6, "work_registers_used": 3 } } } }, - "flutter/impeller/entity/gles/linear_gradient_fill.frag.gles": { + "flutter/impeller/entity/gles/vertices.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/linear_gradient_fill.frag.gles", + "filename": "flutter/impeller/entity/gles/vertices.frag.gles", "has_side_effects": false, - "has_uniform_computation": true, + "has_uniform_computation": false, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -4029,21 +10146,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 70, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_cvt" + "varying" ], "longest_path_cycles": [ - 0.40625, - 0.28125, - 0.40625, - 0.125, + 0.03125, + 0.03125, + 0.03125, 0.0, - 0.125, - 0.25 + 0.0, + 0.25, + 0.0 ], "pipelines": [ "arith_total", @@ -4055,55 +10171,54 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_cvt" + "varying" ], "shortest_path_cycles": [ - 0.1875, - 0.171875, - 0.1875, - 0.125, + 0.03125, + 0.03125, 0.0, - 0.125, + 0.0, + 0.0, + 0.25, 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_cvt" + "varying" ], "total_cycles": [ - 0.484375, - 0.3125, - 0.484375, - 0.125, + 0.03125, + 0.03125, + 0.03125, 0.0, - 0.125, - 0.25 + 0.0, + 0.25, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 12, - "work_registers_used": 20 + "uniform_registers_used": 2, + "work_registers_used": 19 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/linear_gradient_fill.frag.gles", - "has_uniform_computation": true, + "filename": "flutter/impeller/entity/gles/vertices.frag.gles", + "has_uniform_computation": false, "type": "Fragment", "variants": { "Main": { "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "arithmetic", + "load_store" ], "longest_path_cycles": [ - 6.929999828338623, 1.0, - 1.0 + 1.0, + 0.0 ], "pipelines": [ "arithmetic", @@ -4111,35 +10226,36 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arithmetic", + "load_store" ], "shortest_path_cycles": [ - 2.309999942779541, + 1.0, 1.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 7.666666507720947, + 0.6666666865348816, 1.0, - 1.0 + 0.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 4, + "uniform_registers_used": 1, "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/linear_to_srgb_filter.frag.gles": { + "flutter/impeller/entity/gles/yuv_to_rgb_filter.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/linear_to_srgb_filter.frag.gles", + "filename": "flutter/impeller/entity/gles/yuv_to_rgb_filter.frag.gles", "has_side_effects": false, - "has_uniform_computation": false, + "has_uniform_computation": true, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -4147,22 +10263,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 40, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_cvt", - "arith_sfu" + "texture" ], "longest_path_cycles": [ - 0.4375, - 0.328125, - 0.4375, - 0.4375, + 0.15625, + 0.15625, + 0.046875, + 0.0, 0.0, 0.25, - 0.25 + 0.5 ], "pipelines": [ "arith_total", @@ -4174,43 +10288,40 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_sfu" + "texture" ], "shortest_path_cycles": [ - 0.4375, - 0.328125, - 0.40625, - 0.4375, + 0.15625, + 0.15625, + 0.015625, + 0.0, 0.0, 0.25, - 0.25 + 0.5 ], "total_bound_pipelines": [ - "arith_total", - "arith_cvt", - "arith_sfu" + "texture" ], "total_cycles": [ - 0.4375, - 0.328125, - 0.4375, - 0.4375, + 0.15625, + 0.15625, + 0.046875, + 0.0, 0.0, 0.25, - 0.25 + 0.5 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 30 + "uniform_registers_used": 12, + "work_registers_used": 19 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/linear_to_srgb_filter.frag.gles", + "filename": "flutter/impeller/entity/gles/yuv_to_rgb_filter.frag.gles", "has_uniform_computation": false, "type": "Fragment", "variants": { @@ -4221,9 +10332,9 @@ "arithmetic" ], "longest_path_cycles": [ - 4.949999809265137, + 2.309999942779541, 1.0, - 1.0 + 2.0 ], "pipelines": [ "arithmetic", @@ -4234,30 +10345,30 @@ "arithmetic" ], "shortest_path_cycles": [ - 4.949999809265137, + 2.309999942779541, 1.0, - 1.0 + 2.0 ], "total_bound_pipelines": [ "arithmetic" ], "total_cycles": [ - 5.333333492279053, + 2.6666667461395264, 1.0, - 1.0 + 2.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 1, + "uniform_registers_used": 3, "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/linear_to_srgb_filter.vert.gles": { + "flutter/impeller/entity/gles/yuv_to_rgb_filter.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/linear_to_srgb_filter.vert.gles", + "filename": "flutter/impeller/entity/gles/yuv_to_rgb_filter.vert.gles", "has_uniform_computation": true, "type": "Vertex", "variants": { @@ -4367,7 +10478,7 @@ }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/linear_to_srgb_filter.vert.gles", + "filename": "flutter/impeller/entity/gles/yuv_to_rgb_filter.vert.gles", "has_uniform_computation": false, "type": "Vertex", "variants": { @@ -4411,10 +10522,10 @@ } } }, - "flutter/impeller/entity/gles/morphology_filter.frag.gles": { + "flutter/impeller/entity/glyph_atlas.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/morphology_filter.frag.gles", + "filename": "flutter/impeller/entity/glyph_atlas.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -4424,20 +10535,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 83, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - null + "varying" ], "longest_path_cycles": [ - null, - null, - null, - null, - null, - null, - null + 0.0625, + 0.03125, + 0.0625, + 0.0, + 0.0, + 0.375, + 0.25 ], "pipelines": [ "arith_total", @@ -4449,103 +10560,241 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_cvt" + "varying" ], "shortest_path_cycles": [ + 0.0625, + 0.03125, 0.0625, 0.0, + 0.0, + 0.375, + 0.25 + ], + "total_bound_pipelines": [ + "varying" + ], + "total_cycles": [ + 0.0625, + 0.03125, 0.0625, 0.0, 0.0, + 0.375, + 0.25 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 6, + "work_registers_used": 6 + } + } + } + }, + "flutter/impeller/entity/glyph_atlas.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/glyph_atlas.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.125, + 0.125, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.125, + 0.125, + 0.0625, 0.0, + 2.0, 0.0 ], "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.125, + 0.125, + 0.0625, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": null, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 4.0, + 0.0 + ], + "pipelines": [ "arith_total", - "arith_cvt" + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0, + 0.0, + 0.0, + 0.0, + 4.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" ], "total_cycles": [ - 0.328125, - 0.078125, - 0.328125, - 0.1875, 0.0, - 0.25, - 0.25 + 0.0, + 0.0, + 0.0, + 4.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 20 + "uniform_registers_used": 16, + "work_registers_used": 7 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/morphology_filter.frag.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/glyph_atlas_sdf.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/glyph_atlas_sdf.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 72, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - null + "arith_total", + "arith_sfu" ], "longest_path_cycles": [ - null, - null, - null + 0.3125, + 0.25, + 0.015625, + 0.3125, + 0.0, + 0.25, + 0.25 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_sfu" ], "shortest_path_cycles": [ - 1.9800000190734863, - 1.0, - 0.0 + 0.3125, + 0.25, + 0.015625, + 0.3125, + 0.0, + 0.25, + 0.25 ], "total_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_sfu" ], "total_cycles": [ - 5.333333492279053, - 1.0, - 1.0 + 0.3125, + 0.25, + 0.015625, + 0.3125, + 0.0, + 0.25, + 0.25 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 4 + "uniform_registers_used": 6, + "work_registers_used": 6 } } } }, - "flutter/impeller/entity/gles/morphology_filter.vert.gles": { + "flutter/impeller/entity/glyph_atlas_sdf.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/morphology_filter.vert.gles", + "filename": "flutter/impeller/entity/glyph_atlas_sdf.vert.vkspv", "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 80, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.125, + 0.125, + 0.0625, 0.0, 2.0, 0.0 @@ -4562,9 +10811,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.125, + 0.125, + 0.0625, 0.0, 2.0, 0.0 @@ -4573,9 +10822,9 @@ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.125, + 0.125, + 0.0625, 0.0, 2.0, 0.0 @@ -4587,16 +10836,16 @@ "work_registers_used": 32 }, "Varying": { - "fp16_arithmetic": 100, + "fp16_arithmetic": null, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0, + 0.0, + 0.0, 0.0, 3.0, 0.0 @@ -4613,9 +10862,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0, + 0.0, + 0.0, 0.0, 3.0, 0.0 @@ -4624,9 +10873,9 @@ "load_store" ], "total_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0, + 0.0, + 0.0, 0.0, 3.0, 0.0 @@ -4634,30 +10883,39 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 7 + "uniform_registers_used": 16, + "work_registers_used": 6 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/morphology_filter.vert.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/gradient_fill.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/gradient_fill.vert.vkspv", + "has_uniform_computation": true, "type": "Vertex", "variants": { - "Main": { + "Position": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 2.9700000286102295, - 5.0, + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], @@ -4665,46 +10923,43 @@ "load_store" ], "shortest_path_cycles": [ - 2.9700000286102295, - 5.0, + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 3.0, - 5.0, + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 - } - } - } - }, - "flutter/impeller/entity/gles/position_color.vert.gles": { - "Mali-G78": { - "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/position_color.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", - "variants": { - "Position": { - "fp16_arithmetic": 80, + "uniform_registers_used": 34, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 0, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.125, + 0.125, 0.0, - 2.0, + 0.0625, + 3.0, 0.0 ], "pipelines": [ @@ -4719,44 +10974,61 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.125, + 0.125, 0.0, - 2.0, + 0.0625, + 3.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.125, + 0.125, 0.0, - 2.0, + 0.0625, + 3.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 14, - "work_registers_used": 32 - }, - "Varying": { - "fp16_arithmetic": null, + "uniform_registers_used": 30, + "work_registers_used": 9 + } + } + } + }, + "flutter/impeller/entity/linear_gradient_fill.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/linear_gradient_fill.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_cvt" ], "longest_path_cycles": [ + 0.265625, + 0.21875, + 0.265625, 0.0, 0.0, - 0.0, - 0.0, - 3.0, - 0.0 + 0.125, + 0.25 ], "pipelines": [ "arith_total", @@ -4764,105 +11036,144 @@ "arith_cvt", "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_fma", + "arith_cvt", + "varying" ], "shortest_path_cycles": [ + 0.125, + 0.125, + 0.125, 0.0, 0.0, - 0.0, - 0.0, - 3.0, + 0.125, 0.0 ], "total_bound_pipelines": [ - "load_store" + "arith_total", + "arith_cvt" ], "total_cycles": [ + 0.3125, + 0.25, + 0.3125, 0.0, 0.0, - 0.0, - 0.0, - 3.0, - 0.0 + 0.125, + 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 7 + "uniform_registers_used": 14, + "work_registers_used": 6 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/position_color.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", + } + }, + "flutter/impeller/entity/linear_gradient_ssbo_fill.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/linear_gradient_ssbo_fill.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 75, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + null ], "longest_path_cycles": [ - 2.640000104904175, - 5.0, - 0.0 + null, + null, + null, + null, + null, + null, + null ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "varying" ], "shortest_path_cycles": [ - 2.640000104904175, - 5.0, + 0.109375, + 0.078125, + 0.109375, + 0.0, + 0.0, + 0.125, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 2.6666667461395264, - 5.0, + 0.59375, + 0.34375, + 0.59375, + 0.0625, + 4.0, + 0.125, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 + "uniform_registers_used": 12, + "work_registers_used": 15 } } } }, - "flutter/impeller/entity/gles/position_uv.vert.gles": { + "flutter/impeller/entity/linear_to_srgb_filter.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/position_uv.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", + "filename": "flutter/impeller/entity/linear_to_srgb_filter.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { - "Position": { - "fp16_arithmetic": 80, + "Main": { + "fp16_arithmetic": 20, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_sfu" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.4375, + 0.296875, + 0.359375, + 0.4375, 0.0, - 2.0, - 0.0 + 0.25, + 0.25 ], "pipelines": [ "arith_total", @@ -4870,49 +11181,64 @@ "arith_cvt", "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "varying", + "texture" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.234375, + 0.203125, + 0.234375, + 0.1875, 0.0, - 2.0, - 0.0 + 0.25, + 0.25 ], "total_bound_pipelines": [ - "load_store" + "arith_total", + "arith_sfu" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.4375, + 0.328125, + 0.359375, + 0.4375, 0.0, - 2.0, - 0.0 + 0.25, + 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 20, - "work_registers_used": 32 - }, - "Varying": { - "fp16_arithmetic": 0, + "uniform_registers_used": 10, + "work_registers_used": 12 + } + } + } + }, + "flutter/impeller/entity/linear_to_srgb_filter.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/linear_to_srgb_filter.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.125, - 0.125, - 0.0, 0.0625, - 4.0, + 0.0625, + 0.0625, + 0.0, + 2.0, 0.0 ], "pipelines": [ @@ -4927,51 +11253,50 @@ "load_store" ], "shortest_path_cycles": [ - 0.125, - 0.125, - 0.0, 0.0625, - 4.0, + 0.0625, + 0.0625, + 0.0, + 2.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 0.125, - 0.125, - 0.0, 0.0625, - 4.0, + 0.0625, + 0.0625, + 0.0, + 2.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 18, - "work_registers_used": 10 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/position_uv.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", - "variants": { - "Main": { + "uniform_registers_used": 20, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 3.299999952316284, - 6.0, + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], @@ -4979,30 +11304,37 @@ "load_store" ], "shortest_path_cycles": [ - 3.299999952316284, - 6.0, + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 3.3333332538604736, - 6.0, + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 3 + "uniform_registers_used": 16, + "work_registers_used": 7 } } } }, - "flutter/impeller/entity/gles/radial_gradient_fill.frag.gles": { + "flutter/impeller/entity/morphology_filter.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/radial_gradient_fill.frag.gles", + "filename": "flutter/impeller/entity/morphology_filter.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -5012,21 +11344,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 55, + "fp16_arithmetic": 54, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_cvt" + null ], "longest_path_cycles": [ - 0.40625, - 0.3125, - 0.40625, - 0.1875, - 0.0, - 0.125, - 0.25 + null, + null, + null, + null, + null, + null, + null ], "pipelines": [ "arith_total", @@ -5038,112 +11369,60 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_fma" - ], - "shortest_path_cycles": [ - 0.203125, - 0.203125, - 0.1875, - 0.1875, - 0.0, - 0.125, - 0.0 - ], - "total_bound_pipelines": [ "arith_total", "arith_cvt" ], - "total_cycles": [ - 0.484375, - 0.34375, - 0.484375, - 0.1875, - 0.0, - 0.125, - 0.25 - ] - }, - "stack_spill_bytes": 0, - "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 20 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/radial_gradient_fill.frag.gles", - "has_uniform_computation": true, - "type": "Fragment", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - "arithmetic" - ], - "longest_path_cycles": [ - 6.929999828338623, - 1.0, - 1.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "arithmetic" - ], - "shortest_path_cycles": [ - 2.309999942779541, - 1.0, + "shortest_path_cycles": [ + 0.109375, + 0.0, + 0.109375, + 0.0, + 0.0, + 0.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_cvt" ], "total_cycles": [ - 7.666666507720947, - 1.0, - 1.0 + 0.34375, + 0.046875, + 0.34375, + 0.1875, + 0.0, + 0.25, + 0.25 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 2, - "work_registers_used": 2 + "uniform_registers_used": 8, + "work_registers_used": 13 } } } }, - "flutter/impeller/entity/gles/rrect_blur.frag.gles": { + "flutter/impeller/entity/morphology_filter.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/rrect_blur.frag.gles", - "has_side_effects": false, + "filename": "flutter/impeller/entity/morphology_filter.vert.vkspv", "has_uniform_computation": true, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, + "type": "Vertex", "variants": { - "Main": { - "fp16_arithmetic": 33, + "Position": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "longest_path_cycles": [ - 1.5125000476837158, - 1.5125000476837158, - 0.546875, - 1.5, + 0.0625, + 0.0625, + 0.0625, 0.0, - 0.125, + 2.0, 0.0 ], "pipelines": [ @@ -5152,33 +11431,28 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "shortest_path_cycles": [ - 0.203125, - 0.203125, - 0.046875, + 0.0625, + 0.0625, 0.0625, 0.0, - 0.125, + 2.0, 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_fma" + "load_store" ], "total_cycles": [ - 1.6375000476837158, - 1.6375000476837158, - 0.578125, - 1.5625, + 0.0625, + 0.0625, + 0.0625, 0.0, - 0.125, + 2.0, 0.0 ] }, @@ -5186,73 +11460,79 @@ "thread_occupancy": 100, "uniform_registers_used": 20, "work_registers_used": 32 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/rrect_blur.frag.gles", - "has_uniform_computation": false, - "type": "Fragment", - "variants": { - "Main": { + }, + "Varying": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - null + "load_store" ], "longest_path_cycles": [ - null, - null, - null + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 2.640000104904175, - 1.0, + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 10.666666984558105, - 1.0, + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 4 + "uniform_registers_used": 16, + "work_registers_used": 7 } } } }, - "flutter/impeller/entity/gles/rrect_blur.vert.gles": { + "flutter/impeller/entity/position_color.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/rrect_blur.vert.gles", - "has_uniform_computation": false, + "filename": "flutter/impeller/entity/position_color.vert.vkspv", + "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 80, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -5269,9 +11549,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -5280,9 +11560,9 @@ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -5290,7 +11570,7 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 14, + "uniform_registers_used": 18, "work_registers_used": 32 }, "Varying": { @@ -5341,30 +11621,90 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 6 + "uniform_registers_used": 14, + "work_registers_used": 7 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/rrect_blur.vert.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/position_uv.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/position_uv.vert.vkspv", + "has_uniform_computation": true, "type": "Vertex", "variants": { - "Main": { + "Position": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 2.640000104904175, + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 34, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 0, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.125, + 0.125, + 0.0, + 0.0625, 4.0, 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], @@ -5372,7 +11712,10 @@ "load_store" ], "shortest_path_cycles": [ - 2.640000104904175, + 0.125, + 0.125, + 0.0, + 0.0625, 4.0, 0.0 ], @@ -5380,39 +11723,50 @@ "load_store" ], "total_cycles": [ - 2.6666667461395264, + 0.125, + 0.125, + 0.0, + 0.0625, 4.0, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 + "uniform_registers_used": 30, + "work_registers_used": 9 } } } }, - "flutter/impeller/entity/gles/runtime_effect.vert.gles": { + "flutter/impeller/entity/radial_gradient_fill.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/runtime_effect.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", + "filename": "flutter/impeller/entity/radial_gradient_fill.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { - "Position": { - "fp16_arithmetic": 80, + "Main": { + "fp16_arithmetic": 73, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_cvt" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.265625, + 0.25, + 0.265625, + 0.0625, 0.0, - 2.0, - 0.0 + 0.125, + 0.25 ], "pipelines": [ "arith_total", @@ -5420,50 +11774,71 @@ "arith_cvt", "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_fma" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.15625, + 0.15625, + 0.125, + 0.0625, 0.0, - 2.0, + 0.125, 0.0 ], "total_bound_pipelines": [ - "load_store" + "arith_total", + "arith_cvt" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.3125, + 0.28125, + 0.3125, + 0.0625, 0.0, - 2.0, - 0.0 + 0.125, + 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 14, - "work_registers_used": 32 - }, - "Varying": { - "fp16_arithmetic": null, + "uniform_registers_used": 12, + "work_registers_used": 6 + } + } + } + }, + "flutter/impeller/entity/radial_gradient_ssbo_fill.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/radial_gradient_ssbo_fill.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, + "variants": { + "Main": { + "fp16_arithmetic": 59, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + null ], "longest_path_cycles": [ - 0.0, - 0.0, - 0.0, - 0.0, - 3.0, - 0.0 + null, + null, + null, + null, + null, + null, + null ], "pipelines": [ "arith_total", @@ -5471,111 +11846,135 @@ "arith_cvt", "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "varying" ], "shortest_path_cycles": [ + 0.109375, + 0.109375, + 0.109375, + 0.0625, 0.0, - 0.0, - 0.0, - 0.0, - 3.0, + 0.125, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 0.0, - 0.0, - 0.0, - 0.0, - 3.0, + 0.59375, + 0.375, + 0.59375, + 0.125, + 4.0, + 0.125, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 8, - "work_registers_used": 6 + "uniform_registers_used": 10, + "work_registers_used": 15 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/runtime_effect.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", + } + }, + "flutter/impeller/entity/rrect_blur.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/rrect_blur.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 37, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_fma" ], "longest_path_cycles": [ - 2.640000104904175, - 4.0, + 1.5499999523162842, + 1.5499999523162842, + 0.515625, + 1.5, + 0.0, + 0.125, 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_fma" ], "shortest_path_cycles": [ - 2.640000104904175, - 4.0, + 0.171875, + 0.171875, + 0.0625, + 0.0625, + 0.0, + 0.125, 0.0 ], "total_bound_pipelines": [ - "load_store" + "arith_total", + "arith_fma" ], "total_cycles": [ - 2.6666667461395264, - 4.0, + 1.6749999523162842, + 1.6749999523162842, + 0.5625, + 1.5625, + 0.0, + 0.125, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 + "uniform_registers_used": 18, + "work_registers_used": 32 } } } }, - "flutter/impeller/entity/gles/solid_fill.frag.gles": { + "flutter/impeller/entity/rrect_blur.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/solid_fill.frag.gles", - "has_side_effects": false, - "has_uniform_computation": false, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, + "filename": "flutter/impeller/entity/rrect_blur.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", "variants": { - "Main": { - "fp16_arithmetic": null, + "Position": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_cvt" + "load_store" ], "longest_path_cycles": [ 0.0625, - 0.0, + 0.0625, 0.0625, 0.0, - 0.0, - 0.0, + 2.0, 0.0 ], "pipelines": [ @@ -5584,107 +11983,108 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arith_total", - "arith_cvt" + "load_store" ], "shortest_path_cycles": [ - 0.03125, - 0.0, - 0.03125, - 0.0, - 0.0, + 0.0625, + 0.0625, + 0.0625, 0.0, + 2.0, 0.0 ], "total_bound_pipelines": [ - "arith_total", - "arith_cvt" + "load_store" ], "total_cycles": [ 0.0625, - 0.0, + 0.0625, 0.0625, 0.0, - 0.0, - 0.0, + 2.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 2, - "work_registers_used": 18 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/solid_fill.frag.gles", - "has_uniform_computation": false, - "type": "Fragment", - "variants": { - "Main": { + "uniform_registers_used": 18, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": null, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "longest_path_cycles": [ - 1.0, 0.0, + 0.0, + 0.0, + 0.0, + 3.0, 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 1.0, 0.0, + 0.0, + 0.0, + 0.0, + 3.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 0.6666666865348816, 0.0, + 0.0, + 0.0, + 0.0, + 3.0, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 2 + "uniform_registers_used": 14, + "work_registers_used": 6 } } } }, - "flutter/impeller/entity/gles/solid_fill.vert.gles": { + "flutter/impeller/entity/runtime_effect.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/solid_fill.vert.gles", - "has_uniform_computation": false, + "filename": "flutter/impeller/entity/runtime_effect.vert.vkspv", + "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 80, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -5701,9 +12101,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -5712,9 +12112,9 @@ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -5722,30 +12122,29 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 14, + "uniform_registers_used": 18, "work_registers_used": 32 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/solid_fill.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", - "variants": { - "Main": { + }, + "Varying": { + "fp16_arithmetic": null, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 2.640000104904175, + 0.0, + 0.0, + 0.0, + 0.0, 3.0, 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], @@ -5753,7 +12152,10 @@ "load_store" ], "shortest_path_cycles": [ - 2.640000104904175, + 0.0, + 0.0, + 0.0, + 0.0, 3.0, 0.0 ], @@ -5761,24 +12163,28 @@ "load_store" ], "total_cycles": [ - 2.6666667461395264, + 0.0, + 0.0, + 0.0, + 0.0, 3.0, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 + "uniform_registers_used": 14, + "work_registers_used": 6 } } } }, - "flutter/impeller/entity/gles/srgb_to_linear_filter.frag.gles": { + "flutter/impeller/entity/solid_fill.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/srgb_to_linear_filter.frag.gles", + "filename": "flutter/impeller/entity/solid_fill.frag.vkspv", "has_side_effects": false, - "has_uniform_computation": false, + "has_uniform_computation": true, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -5786,7 +12192,7 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 40, + "fp16_arithmetic": null, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ @@ -5794,13 +12200,13 @@ "arith_cvt" ], "longest_path_cycles": [ - 0.484375, - 0.328125, - 0.484375, - 0.4375, + 0.0625, 0.0, - 0.25, - 0.25 + 0.0625, + 0.0, + 0.0, + 0.0, + 0.0 ], "pipelines": [ "arith_total", @@ -5816,102 +12222,125 @@ "arith_cvt" ], "shortest_path_cycles": [ - 0.453125, - 0.328125, - 0.453125, - 0.4375, + 0.0625, 0.0, - 0.25, - 0.25 + 0.0625, + 0.0, + 0.0, + 0.0, + 0.0 ], "total_bound_pipelines": [ "arith_total", "arith_cvt" ], "total_cycles": [ - 0.484375, - 0.328125, - 0.484375, - 0.4375, + 0.0625, 0.0, - 0.25, - 0.25 + 0.0625, + 0.0, + 0.0, + 0.0, + 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 28 + "uniform_registers_used": 4, + "work_registers_used": 5 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/srgb_to_linear_filter.frag.gles", - "has_uniform_computation": false, - "type": "Fragment", + } + }, + "flutter/impeller/entity/solid_fill.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/solid_fill.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", "variants": { - "Main": { + "Position": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "longest_path_cycles": [ - 4.949999809265137, - 1.0, - 1.0 + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 4.949999809265137, - 1.0, - 1.0 + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 5.333333492279053, - 1.0, - 1.0 + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 3 + "uniform_registers_used": 18, + "work_registers_used": 32 } } } }, - "flutter/impeller/entity/gles/srgb_to_linear_filter.vert.gles": { + "flutter/impeller/entity/srgb_to_linear_filter.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/srgb_to_linear_filter.vert.gles", + "filename": "flutter/impeller/entity/srgb_to_linear_filter.frag.vkspv", + "has_side_effects": false, "has_uniform_computation": true, - "type": "Vertex", + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { - "Position": { - "fp16_arithmetic": 80, + "Main": { + "fp16_arithmetic": 20, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "arith_total", + "arith_sfu" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.4375, + 0.28125, + 0.390625, + 0.4375, 0.0, - 2.0, - 0.0 + 0.25, + 0.25 ], "pipelines": [ "arith_total", @@ -5919,37 +12348,52 @@ "arith_cvt", "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "varying", + "texture" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.15625, + 0.140625, + 0.15625, + 0.0625, 0.0, - 2.0, - 0.0 + 0.25, + 0.25 ], "total_bound_pipelines": [ - "load_store" + "arith_total", + "arith_sfu" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.4375, + 0.328125, + 0.390625, + 0.4375, 0.0, - 2.0, - 0.0 + 0.25, + 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 16, - "work_registers_used": 32 - }, - "Varying": { + "uniform_registers_used": 10, + "work_registers_used": 9 + } + } + } + }, + "flutter/impeller/entity/srgb_to_linear_filter.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/srgb_to_linear_filter.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { @@ -5957,11 +12401,11 @@ "load_store" ], "longest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0625, + 0.0625, + 0.0625, 0.0, - 3.0, + 2.0, 0.0 ], "pipelines": [ @@ -5976,51 +12420,50 @@ "load_store" ], "shortest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0625, + 0.0625, + 0.0625, 0.0, - 3.0, + 2.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.0625, + 0.0625, + 0.0625, 0.0, - 3.0, + 2.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 7 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/srgb_to_linear_filter.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", - "variants": { - "Main": { + "uniform_registers_used": 20, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 2.9700000286102295, - 4.0, + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], @@ -6028,30 +12471,37 @@ "load_store" ], "shortest_path_cycles": [ - 2.9700000286102295, - 4.0, + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, 3.0, - 4.0, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 + "uniform_registers_used": 16, + "work_registers_used": 7 } } } }, - "flutter/impeller/entity/gles/sweep_gradient_fill.frag.gles": { + "flutter/impeller/entity/sweep_gradient_fill.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/sweep_gradient_fill.frag.gles", + "filename": "flutter/impeller/entity/sweep_gradient_fill.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -6061,18 +12511,18 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 15, + "fp16_arithmetic": 18, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "arith_total", - "arith_cvt" + "arith_fma" ], "longest_path_cycles": [ - 0.5, - 0.453125, - 0.5, - 0.375, + 0.40625, + 0.40625, + 0.390625, + 0.3125, 0.0, 0.125, 0.25 @@ -6088,13 +12538,14 @@ ], "shortest_path_bound_pipelines": [ "arith_total", + "arith_fma", "arith_sfu" ], "shortest_path_cycles": [ - 0.375, - 0.34375, - 0.28125, - 0.375, + 0.3125, + 0.3125, + 0.25, + 0.3125, 0.0, 0.125, 0.0 @@ -6104,10 +12555,10 @@ "arith_cvt" ], "total_cycles": [ - 0.59375, - 0.484375, - 0.59375, - 0.375, + 0.453125, + 0.4375, + 0.453125, + 0.3125, 0.0, 0.125, 0.25 @@ -6116,62 +12567,88 @@ "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 18, - "work_registers_used": 24 + "work_registers_used": 16 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/sweep_gradient_fill.frag.gles", + } + }, + "flutter/impeller/entity/sweep_gradient_ssbo_fill.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/sweep_gradient_ssbo_fill.frag.vkspv", + "has_side_effects": false, "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 23, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + null ], "longest_path_cycles": [ - 7.920000076293945, - 1.0, - 1.0 + null, + null, + null, + null, + null, + null, + null ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "arith_total", + "arith_sfu" ], "shortest_path_cycles": [ - 2.9700000286102295, - 1.0, + 0.3125, + 0.265625, + 0.21875, + 0.3125, + 0.0, + 0.125, 0.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 8.666666984558105, - 1.0, - 1.0 + 0.71875, + 0.546875, + 0.71875, + 0.375, + 4.0, + 0.125, + 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 + "uniform_registers_used": 16, + "work_registers_used": 20 } } } }, - "flutter/impeller/entity/gles/texture_fill.frag.gles": { + "flutter/impeller/entity/texture_fill.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/texture_fill.frag.gles", + "filename": "flutter/impeller/entity/texture_fill.frag.vkspv", "has_side_effects": false, - "has_uniform_computation": false, + "has_uniform_computation": true, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -6187,11 +12664,11 @@ "texture" ], "longest_path_cycles": [ - 0.03125, 0.03125, 0.03125, 0.0, 0.0, + 0.0, 0.25, 0.25 ], @@ -6222,11 +12699,11 @@ "texture" ], "total_cycles": [ - 0.03125, 0.03125, 0.03125, 0.0, 0.0, + 0.0, 0.25, 0.25 ] @@ -6234,79 +12711,213 @@ "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 4, - "work_registers_used": 19 + "work_registers_used": 4 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/texture_fill.frag.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/entity/texture_fill.vert.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/texture_fill.vert.vkspv", + "has_uniform_computation": true, + "type": "Vertex", + "variants": { + "Position": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.0625, + 0.0625, + 0.0625, + 0.0, + 2.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 20, + "work_registers_used": 32 + }, + "Varying": { + "fp16_arithmetic": 100, + "has_stack_spilling": false, + "performance": { + "longest_path_bound_pipelines": [ + "load_store" + ], + "longest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "pipelines": [ + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", + "load_store", + "texture" + ], + "shortest_path_bound_pipelines": [ + "load_store" + ], + "shortest_path_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ], + "total_bound_pipelines": [ + "load_store" + ], + "total_cycles": [ + 0.03125, + 0.015625, + 0.03125, + 0.0, + 3.0, + 0.0 + ] + }, + "stack_spill_bytes": 0, + "thread_occupancy": 100, + "uniform_registers_used": 16, + "work_registers_used": 7 + } + } + } + }, + "flutter/impeller/entity/tiled_texture_fill.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/tiled_texture_fill.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 33, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic", - "load_store", + "varying", "texture" ], "longest_path_cycles": [ - 1.0, - 1.0, - 1.0 + 0.234375, + 0.03125, + 0.234375, + 0.0625, + 0.0, + 0.25, + 0.25 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic", - "load_store", - "texture" + "varying" ], "shortest_path_cycles": [ - 1.0, - 1.0, - 1.0 + 0.140625, + 0.03125, + 0.140625, + 0.0625, + 0.0, + 0.25, + 0.0 ], "total_bound_pipelines": [ - "load_store", + "varying", "texture" ], "total_cycles": [ - 0.6666666865348816, - 1.0, - 1.0 + 0.234375, + 0.03125, + 0.234375, + 0.0625, + 0.0, + 0.25, + 0.25 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 2 + "uniform_registers_used": 4, + "work_registers_used": 7 } } } }, - "flutter/impeller/entity/gles/texture_fill.vert.gles": { + "flutter/impeller/entity/tiled_texture_fill.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/texture_fill.vert.gles", + "filename": "flutter/impeller/entity/tiled_texture_fill.vert.vkspv", "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 80, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -6323,9 +12934,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -6334,9 +12945,9 @@ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -6344,7 +12955,7 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 16, + "uniform_registers_used": 28, "work_registers_used": 32 }, "Varying": { @@ -6355,10 +12966,10 @@ "load_store" ], "longest_path_cycles": [ + 0.125, + 0.125, 0.03125, - 0.015625, - 0.03125, - 0.0, + 0.0625, 3.0, 0.0 ], @@ -6374,10 +12985,10 @@ "load_store" ], "shortest_path_cycles": [ + 0.125, + 0.125, 0.03125, - 0.015625, - 0.03125, - 0.0, + 0.0625, 3.0, 0.0 ], @@ -6385,71 +12996,96 @@ "load_store" ], "total_cycles": [ + 0.125, + 0.125, 0.03125, - 0.015625, - 0.03125, - 0.0, + 0.0625, 3.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 7 + "uniform_registers_used": 24, + "work_registers_used": 8 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/texture_fill.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", + } + }, + "flutter/impeller/entity/vertices.frag.vkspv": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/entity/vertices.frag.vkspv", + "has_side_effects": false, + "has_uniform_computation": true, + "modifies_coverage": false, + "reads_color_buffer": false, + "type": "Fragment", + "uses_late_zs_test": false, + "uses_late_zs_update": false, "variants": { "Main": { + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "varying" ], "longest_path_cycles": [ - 2.9700000286102295, - 5.0, + 0.03125, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.25, 0.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", + "varying", "texture" ], "shortest_path_bound_pipelines": [ - "load_store" + "varying" ], "shortest_path_cycles": [ - 2.9700000286102295, - 5.0, + 0.03125, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.25, 0.0 ], "total_bound_pipelines": [ - "load_store" + "varying" ], "total_cycles": [ - 3.0, - 5.0, + 0.03125, + 0.03125, + 0.0, + 0.0, + 0.0, + 0.25, 0.0 ] }, + "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 + "uniform_registers_used": 2, + "work_registers_used": 4 } } } }, - "flutter/impeller/entity/gles/tiled_texture_fill.frag.gles": { + "flutter/impeller/entity/yuv_to_rgb_filter.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/tiled_texture_fill.frag.gles", + "filename": "flutter/impeller/entity/yuv_to_rgb_filter.frag.vkspv", "has_side_effects": false, "has_uniform_computation": true, "modifies_coverage": false, @@ -6459,17 +13095,17 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 33, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arith_total", - "arith_cvt" + "varying", + "texture" ], "longest_path_cycles": [ - 0.265625, - 0.03125, - 0.265625, + 0.15625, + 0.15625, + 0.0, 0.0, 0.0, 0.25, @@ -6489,22 +13125,22 @@ "texture" ], "shortest_path_cycles": [ - 0.0625, - 0.03125, - 0.0625, + 0.15625, + 0.15625, + 0.0, 0.0, 0.0, 0.25, 0.25 ], "total_bound_pipelines": [ - "arith_total", - "arith_cvt" + "varying", + "texture" ], "total_cycles": [ - 0.265625, - 0.03125, - 0.265625, + 0.15625, + 0.15625, + 0.0, 0.0, 0.0, 0.25, @@ -6513,75 +13149,30 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 19 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/tiled_texture_fill.frag.gles", - "has_uniform_computation": false, - "type": "Fragment", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - "arithmetic" - ], - "longest_path_cycles": [ - 3.299999952316284, - 1.0, - 1.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "arithmetic" - ], - "shortest_path_cycles": [ - 1.3200000524520874, - 1.0, - 0.0 - ], - "total_bound_pipelines": [ - "arithmetic" - ], - "total_cycles": [ - 3.6666667461395264, - 1.0, - 1.0 - ] - }, - "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 2 + "uniform_registers_used": 12, + "work_registers_used": 6 } } } }, - "flutter/impeller/entity/gles/tiled_texture_fill.vert.gles": { + "flutter/impeller/entity/yuv_to_rgb_filter.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/tiled_texture_fill.vert.gles", + "filename": "flutter/impeller/entity/yuv_to_rgb_filter.vert.vkspv", "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 80, + "fp16_arithmetic": 100, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -6598,9 +13189,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -6609,9 +13200,9 @@ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.0625, + 0.0625, + 0.0625, 0.0, 2.0, 0.0 @@ -6619,7 +13210,7 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 22, + "uniform_registers_used": 20, "work_registers_used": 32 }, "Varying": { @@ -6630,10 +13221,10 @@ "load_store" ], "longest_path_cycles": [ - 0.125, - 0.125, 0.03125, - 0.0625, + 0.015625, + 0.03125, + 0.0, 3.0, 0.0 ], @@ -6649,10 +13240,10 @@ "load_store" ], "shortest_path_cycles": [ - 0.125, - 0.125, 0.03125, - 0.0625, + 0.015625, + 0.03125, + 0.0, 3.0, 0.0 ], @@ -6660,10 +13251,10 @@ "load_store" ], "total_cycles": [ - 0.125, - 0.125, 0.03125, - 0.0625, + 0.015625, + 0.03125, + 0.0, 3.0, 0.0 ] @@ -6671,29 +13262,39 @@ "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 16, - "work_registers_used": 8 + "work_registers_used": 7 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/tiled_texture_fill.vert.gles", - "has_uniform_computation": false, + } + }, + "flutter/impeller/scene/shaders/gles/skinned.vert.gles": { + "Mali-G78": { + "core": "Mali-G78", + "filename": "flutter/impeller/scene/shaders/gles/skinned.vert.gles", + "has_uniform_computation": true, "type": "Vertex", "variants": { - "Main": { + "Position": { + "fp16_arithmetic": 0, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "load_store" + "load_store", + "texture" ], "longest_path_cycles": [ - 3.9600000381469727, + 3.075000047683716, + 3.075000047683716, + 0.09375, + 0.0, 4.0, - 0.0 + 4.0 ], "pipelines": [ - "arithmetic", + "arith_total", + "arith_fma", + "arith_cvt", + "arith_sfu", "load_store", "texture" ], @@ -6701,54 +13302,45 @@ "load_store" ], "shortest_path_cycles": [ - 3.9600000381469727, - 4.0, + 1.2625000476837158, + 1.2625000476837158, + 0.296875, + 0.0, + 2.0, 0.0 ], "total_bound_pipelines": [ - "arithmetic", - "load_store" + "load_store", + "texture" ], "total_cycles": [ + 3.075000047683716, + 3.075000047683716, + 0.359375, + 0.0, 4.0, - 4.0, - 0.0 + 4.0 ] }, - "thread_occupancy": 100, - "uniform_registers_used": 6, - "work_registers_used": 3 - } - } - } - }, - "flutter/impeller/entity/gles/vertices.frag.gles": { - "Mali-G78": { - "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/vertices.frag.gles", - "has_side_effects": false, - "has_uniform_computation": false, - "modifies_coverage": false, - "reads_color_buffer": false, - "type": "Fragment", - "uses_late_zs_test": false, - "uses_late_zs_update": false, - "variants": { - "Main": { - "fp16_arithmetic": 100, + "stack_spill_bytes": 0, + "thread_occupancy": 50, + "uniform_registers_used": 30, + "work_registers_used": 64 + }, + "Varying": { + "fp16_arithmetic": 0, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "varying" + "load_store" ], "longest_path_cycles": [ - 0.03125, - 0.03125, - 0.03125, - 0.0, + 3.59375, + 3.59375, + 0.09375, 0.0, - 0.25, - 0.0 + 13.0, + 4.0 ], "pipelines": [ "arith_total", @@ -6756,58 +13348,54 @@ "arith_cvt", "arith_sfu", "load_store", - "varying", "texture" ], "shortest_path_bound_pipelines": [ - "varying" + "load_store" ], "shortest_path_cycles": [ - 0.03125, - 0.03125, - 0.0, - 0.0, + 1.78125, + 1.78125, + 0.296875, 0.0, - 0.25, + 11.0, 0.0 ], "total_bound_pipelines": [ - "varying" + "load_store" ], "total_cycles": [ - 0.03125, - 0.03125, - 0.03125, - 0.0, + 3.59375, + 3.59375, + 0.359375, 0.0, - 0.25, - 0.0 + 13.0, + 4.0 ] }, "stack_spill_bytes": 0, - "thread_occupancy": 100, - "uniform_registers_used": 2, - "work_registers_used": 19 + "thread_occupancy": 50, + "uniform_registers_used": 26, + "work_registers_used": 64 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/vertices.frag.gles", + "filename": "flutter/impeller/scene/shaders/gles/skinned.vert.gles", "has_uniform_computation": false, - "type": "Fragment", + "type": "Vertex", "variants": { "Main": { - "has_stack_spilling": false, + "has_stack_spilling": true, "performance": { "longest_path_bound_pipelines": [ - "arithmetic", - "load_store" + "arithmetic" ], "longest_path_cycles": [ - 1.0, - 1.0, - 0.0 + 23.43000030517578, + 17.0, + 16.0 ], "pipelines": [ "arithmetic", @@ -6815,36 +13403,35 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic", "load_store" ], "shortest_path_cycles": [ - 1.0, - 1.0, + 12.210000038146973, + 13.0, 0.0 ], "total_bound_pipelines": [ - "load_store" + "arithmetic" ], "total_cycles": [ - 0.6666666865348816, - 1.0, - 0.0 + 20.0, + 17.0, + 16.0 ] }, - "thread_occupancy": 100, - "uniform_registers_used": 1, - "work_registers_used": 2 + "thread_occupancy": 50, + "uniform_registers_used": 7, + "work_registers_used": 8 } } } }, - "flutter/impeller/entity/gles/yuv_to_rgb_filter.frag.gles": { + "flutter/impeller/scene/shaders/gles/unlit.frag.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/yuv_to_rgb_filter.frag.gles", + "filename": "flutter/impeller/scene/shaders/gles/unlit.frag.gles", "has_side_effects": false, - "has_uniform_computation": true, + "has_uniform_computation": false, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -6852,20 +13439,20 @@ "uses_late_zs_update": false, "variants": { "Main": { - "fp16_arithmetic": 100, + "fp16_arithmetic": 0, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "texture" + "varying" ], "longest_path_cycles": [ - 0.15625, - 0.15625, - 0.046875, + 0.25, + 0.25, + 0.03125, 0.0, 0.0, - 0.25, - 0.5 + 0.75, + 0.25 ], "pipelines": [ "arith_total", @@ -6877,40 +13464,40 @@ "texture" ], "shortest_path_bound_pipelines": [ - "texture" + "varying" ], "shortest_path_cycles": [ - 0.15625, - 0.15625, - 0.015625, + 0.25, + 0.25, 0.0, 0.0, - 0.25, - 0.5 + 0.0, + 0.75, + 0.25 ], "total_bound_pipelines": [ - "texture" + "varying" ], "total_cycles": [ - 0.15625, - 0.15625, - 0.046875, + 0.25, + 0.25, + 0.03125, 0.0, 0.0, - 0.25, - 0.5 + 0.75, + 0.25 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 12, + "uniform_registers_used": 8, "work_registers_used": 19 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/yuv_to_rgb_filter.frag.gles", + "filename": "flutter/impeller/scene/shaders/gles/unlit.frag.gles", "has_uniform_computation": false, "type": "Fragment", "variants": { @@ -6918,12 +13505,12 @@ "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "longest_path_cycles": [ - 2.309999942779541, 1.0, - 2.0 + 2.0, + 1.0 ], "pipelines": [ "arithmetic", @@ -6931,47 +13518,47 @@ "texture" ], "shortest_path_bound_pipelines": [ - "arithmetic" + "load_store" ], "shortest_path_cycles": [ - 2.309999942779541, 1.0, - 2.0 + 2.0, + 1.0 ], "total_bound_pipelines": [ - "arithmetic" + "load_store" ], "total_cycles": [ - 2.6666667461395264, - 1.0, - 2.0 + 1.3333333730697632, + 2.0, + 1.0 ] }, "thread_occupancy": 100, - "uniform_registers_used": 3, + "uniform_registers_used": 2, "work_registers_used": 2 } } } }, - "flutter/impeller/entity/gles/yuv_to_rgb_filter.vert.gles": { + "flutter/impeller/scene/shaders/gles/unskinned.vert.gles": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/entity/gles/yuv_to_rgb_filter.vert.gles", - "has_uniform_computation": true, + "filename": "flutter/impeller/scene/shaders/gles/unskinned.vert.gles", + "has_uniform_computation": false, "type": "Vertex", "variants": { "Position": { - "fp16_arithmetic": 80, + "fp16_arithmetic": 0, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.265625, + 0.265625, + 0.0, 0.0, 2.0, 0.0 @@ -6988,9 +13575,9 @@ "load_store" ], "shortest_path_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.265625, + 0.265625, + 0.0, 0.0, 2.0, 0.0 @@ -6999,9 +13586,9 @@ "load_store" ], "total_cycles": [ - 0.078125, - 0.078125, - 0.046875, + 0.265625, + 0.265625, + 0.0, 0.0, 2.0, 0.0 @@ -7009,22 +13596,22 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 16, + "uniform_registers_used": 24, "work_registers_used": 32 }, "Varying": { - "fp16_arithmetic": 100, + "fp16_arithmetic": 0, "has_stack_spilling": false, "performance": { "longest_path_bound_pipelines": [ "load_store" ], "longest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.75, + 0.75, 0.0, - 3.0, + 0.0, + 11.0, 0.0 ], "pipelines": [ @@ -7039,35 +13626,35 @@ "load_store" ], "shortest_path_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.75, + 0.75, 0.0, - 3.0, + 0.0, + 11.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 0.03125, - 0.015625, - 0.03125, + 0.75, + 0.75, 0.0, - 3.0, + 0.0, + 11.0, 0.0 ] }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 10, - "work_registers_used": 7 + "uniform_registers_used": 20, + "work_registers_used": 32 } } }, "Mali-T880": { "core": "Mali-T880", - "filename": "flutter/impeller/entity/gles/yuv_to_rgb_filter.vert.gles", + "filename": "flutter/impeller/scene/shaders/gles/unskinned.vert.gles", "has_uniform_computation": false, "type": "Vertex", "variants": { @@ -7078,8 +13665,8 @@ "load_store" ], "longest_path_cycles": [ - 2.9700000286102295, - 4.0, + 5.28000020980835, + 13.0, 0.0 ], "pipelines": [ @@ -7091,30 +13678,30 @@ "load_store" ], "shortest_path_cycles": [ - 2.9700000286102295, - 4.0, + 5.28000020980835, + 13.0, 0.0 ], "total_bound_pipelines": [ "load_store" ], "total_cycles": [ - 3.0, - 4.0, + 5.333333492279053, + 13.0, 0.0 ] }, - "thread_occupancy": 100, - "uniform_registers_used": 4, - "work_registers_used": 2 + "thread_occupancy": 50, + "uniform_registers_used": 7, + "work_registers_used": 6 } } } }, - "flutter/impeller/scene/shaders/gles/skinned.vert.gles": { + "flutter/impeller/scene/shaders/skinned.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/scene/shaders/gles/skinned.vert.gles", + "filename": "flutter/impeller/scene/shaders/skinned.vert.vkspv", "has_uniform_computation": true, "type": "Vertex", "variants": { @@ -7127,8 +13714,8 @@ "texture" ], "longest_path_cycles": [ - 3.075000047683716, - 3.075000047683716, + 3.0625, + 3.0625, 0.09375, 0.0, 4.0, @@ -7146,8 +13733,8 @@ "load_store" ], "shortest_path_cycles": [ - 1.2625000476837158, - 1.2625000476837158, + 1.25, + 1.25, 0.296875, 0.0, 2.0, @@ -7158,8 +13745,8 @@ "texture" ], "total_cycles": [ - 3.075000047683716, - 3.075000047683716, + 3.0625, + 3.0625, 0.359375, 0.0, 4.0, @@ -7219,63 +13806,18 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 50, - "uniform_registers_used": 26, + "uniform_registers_used": 30, "work_registers_used": 64 } } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/scene/shaders/gles/skinned.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", - "variants": { - "Main": { - "has_stack_spilling": true, - "performance": { - "longest_path_bound_pipelines": [ - "arithmetic" - ], - "longest_path_cycles": [ - 23.43000030517578, - 17.0, - 16.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "load_store" - ], - "shortest_path_cycles": [ - 12.210000038146973, - 13.0, - 0.0 - ], - "total_bound_pipelines": [ - "arithmetic" - ], - "total_cycles": [ - 20.0, - 17.0, - 16.0 - ] - }, - "thread_occupancy": 50, - "uniform_registers_used": 7, - "work_registers_used": 8 - } - } } }, - "flutter/impeller/scene/shaders/gles/unlit.frag.gles": { + "flutter/impeller/scene/shaders/unlit.frag.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/scene/shaders/gles/unlit.frag.gles", + "filename": "flutter/impeller/scene/shaders/unlit.frag.vkspv", "has_side_effects": false, - "has_uniform_computation": false, + "has_uniform_computation": true, "modifies_coverage": false, "reads_color_buffer": false, "type": "Fragment", @@ -7292,7 +13834,7 @@ "longest_path_cycles": [ 0.25, 0.25, - 0.03125, + 0.0, 0.0, 0.0, 0.75, @@ -7325,7 +13867,7 @@ "total_cycles": [ 0.25, 0.25, - 0.03125, + 0.0, 0.0, 0.0, 0.75, @@ -7335,61 +13877,16 @@ "stack_spill_bytes": 0, "thread_occupancy": 100, "uniform_registers_used": 8, - "work_registers_used": 19 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/scene/shaders/gles/unlit.frag.gles", - "has_uniform_computation": false, - "type": "Fragment", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - "load_store" - ], - "longest_path_cycles": [ - 1.0, - 2.0, - 1.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "load_store" - ], - "shortest_path_cycles": [ - 1.0, - 2.0, - 1.0 - ], - "total_bound_pipelines": [ - "load_store" - ], - "total_cycles": [ - 1.3333333730697632, - 2.0, - 1.0 - ] - }, - "thread_occupancy": 100, - "uniform_registers_used": 2, - "work_registers_used": 2 + "work_registers_used": 10 } } } }, - "flutter/impeller/scene/shaders/gles/unskinned.vert.gles": { + "flutter/impeller/scene/shaders/unskinned.vert.vkspv": { "Mali-G78": { "core": "Mali-G78", - "filename": "flutter/impeller/scene/shaders/gles/unskinned.vert.gles", - "has_uniform_computation": false, + "filename": "flutter/impeller/scene/shaders/unskinned.vert.vkspv", + "has_uniform_computation": true, "type": "Vertex", "variants": { "Position": { @@ -7400,8 +13897,8 @@ "load_store" ], "longest_path_cycles": [ - 0.265625, - 0.265625, + 0.25, + 0.25, 0.0, 0.0, 2.0, @@ -7419,8 +13916,8 @@ "load_store" ], "shortest_path_cycles": [ - 0.265625, - 0.265625, + 0.25, + 0.25, 0.0, 0.0, 2.0, @@ -7430,8 +13927,8 @@ "load_store" ], "total_cycles": [ - 0.265625, - 0.265625, + 0.25, + 0.25, 0.0, 0.0, 2.0, @@ -7491,53 +13988,8 @@ }, "stack_spill_bytes": 0, "thread_occupancy": 100, - "uniform_registers_used": 20, - "work_registers_used": 32 - } - } - }, - "Mali-T880": { - "core": "Mali-T880", - "filename": "flutter/impeller/scene/shaders/gles/unskinned.vert.gles", - "has_uniform_computation": false, - "type": "Vertex", - "variants": { - "Main": { - "has_stack_spilling": false, - "performance": { - "longest_path_bound_pipelines": [ - "load_store" - ], - "longest_path_cycles": [ - 5.28000020980835, - 13.0, - 0.0 - ], - "pipelines": [ - "arithmetic", - "load_store", - "texture" - ], - "shortest_path_bound_pipelines": [ - "load_store" - ], - "shortest_path_cycles": [ - 5.28000020980835, - 13.0, - 0.0 - ], - "total_bound_pipelines": [ - "load_store" - ], - "total_cycles": [ - 5.333333492279053, - 13.0, - 0.0 - ] - }, - "thread_occupancy": 50, - "uniform_registers_used": 7, - "work_registers_used": 6 + "uniform_registers_used": 24, + "work_registers_used": 31 } } } diff --git a/impeller/tools/malioc_cores.py b/impeller/tools/malioc_cores.py new file mode 100755 index 0000000000000..0f03977301c22 --- /dev/null +++ b/impeller/tools/malioc_cores.py @@ -0,0 +1,97 @@ +#!/usr/bin/env vpython3 +# Copyright 2013 The Flutter Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +import argparse +import json +import os +import subprocess +import sys + +# This script parses the JSON output produced by malioc about GPU cores, +# and outputs it in a form that can be consumed by GN + + +def parse_args(argv): + parser = argparse.ArgumentParser( + description='This script sanitizes GPU core info output from malioc', + ) + parser.add_argument( + '--malioc', + '-m', + type=str, + help='The path to malioc.', + ) + parser.add_argument( + '--output', + '-o', + type=str, + help='The output path.', + ) + return parser.parse_args(argv) + + +def validate_args(args): + if not args.malioc or not os.path.isfile(args.malioc): + print('The --malioc argument must refer to the malioc binary.') + return False + return True + + +def malioc_core_list(malioc): + malioc_cores = subprocess.check_output([malioc, '--list', '--format', 'json']) + cores_json = json.loads(malioc_cores) + cores = [] + for core in cores_json['cores']: + cores.append(core['core']) + return cores + + +def malioc_core_info(malioc, core): + malioc_info = subprocess.check_output([ + malioc, '--info', '--core', core, '--format', 'json' + ]) + info_json = json.loads(malioc_info) + + apis = info_json['apis'] + + opengles_max_version = 0 + if 'opengles' in apis: + opengles = apis['opengles'] + if opengles['max_version'] is not None: + opengles_max_version = opengles['max_version'] + vulkan_max_version = 0 + if 'vulkan' in apis: + vulkan = apis['vulkan'] + if vulkan['max_version'] is not None: + vulkan_max_version = int(vulkan['max_version'] * 100) + + info = { + 'core': core, + 'opengles_max_version': opengles_max_version, + 'vulkan_max_version': vulkan_max_version, + } + return info + + +def main(argv): + args = parse_args(argv[1:]) + if not validate_args(args): + return 1 + + infos = [] + for core in malioc_core_list(args.malioc): + infos.append(malioc_core_info(args.malioc, core)) + + if args.output: + with open(args.output, 'w') as file: + json.dump(infos, file, sort_keys=True) + else: + print(infos) + + return 0 + + +if __name__ == '__main__': + sys.exit(main(sys.argv)) diff --git a/impeller/tools/malioc_diff.py b/impeller/tools/malioc_diff.py index 309d8bd2e607f..9eb462cc253c9 100755 --- a/impeller/tools/malioc_diff.py +++ b/impeller/tools/malioc_diff.py @@ -223,6 +223,8 @@ def compare_variants(befores, afters): return differences +# Compares two shaders. Prints a report and returns True if there are +# differences, and returns False otherwise. def compare_shaders(malioc_tree, before_shader, after_shader): differences = [] for key, before_val in before_shader.items():