mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-18 11:38:06 +02:00
This doesn't "go all the way", ideally we'd plumb stats into the broadcom compiler and then reuse the generated code for GL. See https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33921 for an example of that. But this is a step in the right direction by itself. Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33922>
93 lines
6.8 KiB
XML
93 lines
6.8 KiB
XML
<shaderdb>
|
|
<isa name="Adreno">
|
|
<stat name="Max Waves Per Core" display="MaxWaves" more="better" type="u16">Maximum number of simultaneous waves per core.</stat>
|
|
<stat name="Instruction Count" display="Inst">Total number of IR3 instructions in the final generated shader executable.</stat>
|
|
<stat name="Code size">Total number of dwords in the final generated shader executable.</stat>
|
|
<stat name="NOPs Count" display="NOPs">Number of NOP instructions in the final generated shader executable.</stat>
|
|
<stat name="MOV Count" display="MOV">Number of MOV instructions in the final generated shader executable.</stat>
|
|
<stat name="COV Count" display="COV">Number of COV instructions in the final generated shader executable.</stat>
|
|
<stat name="Registers used" display="Full" type="u16">Number of registers used in the final generated shader executable.</stat>
|
|
<stat name="Half-registers used" display="Half" type="u16">Number of half-registers used in the final generated shader executable.</stat>
|
|
<stat name="Last interpolation instruction" display="Last-baryf">The instruction where varying storage in Local Memory is released</stat>
|
|
<stat name="Last helper instruction" display="Last-helper">The instruction where helper invocations are killed</stat>
|
|
<stat name="Instructions with SS sync bit" display="(ss)">SS bit is set for instructions which depend on a result of long instructions to prevent RAW hazard.</stat>
|
|
<stat name="Instructions with SY sync bit" display="(sy)">SY bit is set for instructions which depend on a result of loads from global memory to prevent RAW hazard.</stat>
|
|
<stat name="Estimated cycles stalled on SS" display="(ss)-stall">A better metric to estimate the impact of SS syncs.</stat>
|
|
<stat name="Estimated cycles stalled on SY" display="(sy)-stall">A better metric to estimate the impact of SY syncs.</stat>
|
|
<stat name="cat# instructions" display="cat#" count="8">Number of cat# instructions.</stat>
|
|
<stat name="STP Count" display="STPs">Number of STore Private instructions in the final generated shader executable.</stat>
|
|
<stat name="LDP Count" display="LDPs">Number of LoaD Private instructions in the final generated shader executable.</stat>
|
|
<stat name="Preamble Instruction Count" display="Preamble inst">Total number of IR3 instructions in the preamble.</stat>
|
|
<stat name="Early preamble" display="Early-preamble" type="bool">Whether the preamble will be executed early.</stat>
|
|
</isa>
|
|
|
|
<isa name="AGX2">
|
|
<stat name="Instructions" display="Instrs">Instruction count</stat>
|
|
<stat name="ALU">Estimated ALU cycle count</stat>
|
|
<stat name="FSCIB">Estimated F16/F32/SCIB cycle count</stat>
|
|
<stat name="IC">Estimated IC cycle count</stat>
|
|
<stat name="Code size">Binary size in bytes</stat>
|
|
<stat name="GPRs" type="u16">Number of 16-bit GPRs</stat>
|
|
<stat name="Uniforms" type="u16">Number of 16-bit uniform registers</stat>
|
|
<stat name="Scratch">Scratch size per thread in bytes</stat>
|
|
<stat name="Threads" more="better" type="u16">Maximum number of threads in flight on a compute unit</stat>
|
|
<stat name="Loops">Number of hardware loops</stat>
|
|
<stat name="Spills">Number of spill (stack store) instructions</stat>
|
|
<stat name="Fills">Number of fill (stack load) instructions</stat>
|
|
</isa>
|
|
|
|
<family name="Panfrost">
|
|
<isa name="Midgard">
|
|
<stat name="Instructions" display="Inst">Instruction count</stat>
|
|
<stat name="Bundles">Instruction bundles</stat>
|
|
<stat name="Registers" type="u16">Register usage in vec4s</stat>
|
|
<stat name="Threads" more="better" type="u16">Maximum number of threads in flight on a compute unit</stat>
|
|
<stat name="Quadwords">Binary size in quadwords</stat>
|
|
<stat name="Loops">Number of hardware loops</stat>
|
|
<stat name="Spills">Number of spill instructions</stat>
|
|
<stat name="Fills">Number of fill instructions</stat>
|
|
</isa>
|
|
|
|
<isa name="Bifrost">
|
|
<stat name="Instructions" display="Instrs">Instruction count</stat>
|
|
<stat name="Tuples">Tuple count</stat>
|
|
<stat name="Clauses">Clause count</stat>
|
|
<stat name="Cycles" type="float">Estimated normalized cycles</stat>
|
|
<stat name="Arithmetic" display="Arith" type="float">Estimated normalized arithmetic cycles</stat>
|
|
<stat name="Texture" display="T" type="float">Estimated normalized Texture cycles</stat>
|
|
<stat name="Load/store" display="LDST" type="float">Estimated normalized Load/Store cycles</stat>
|
|
<stat name="Varying" display="V" type="float">Estimated normalized Varying cycles</stat>
|
|
<stat name="Preloads" type="u16">Preload count</stat>
|
|
<stat name="Threads" more="better" type="u16">Maximum number of threads in flight on a compute unit</stat>
|
|
<stat name="Code size">Binary size in bytes</stat>
|
|
<stat name="Loops">Number of hardware loops</stat>
|
|
<stat name="Spills">Number of spill instructions</stat>
|
|
<stat name="Fills">Number of fill instructions</stat>
|
|
</isa>
|
|
|
|
<isa name="Valhall">
|
|
<stat name="Instructions" display="Instrs">Instruction count</stat>
|
|
<stat name="Cycles" type="float">Estimated normalized cycles</stat>
|
|
<stat name="FMA" type="float">Estimated normalized FMA (Fused Multiply-Add) cycles</stat>
|
|
<stat name="CVT" type="float">Estimated normalized CVT (ConVerT) cycles</stat>
|
|
<stat name="SFU" type="float">Estimated normalized SFU (Special Function Unit) cycles</stat>
|
|
<stat name="Varying" display="V" type="float">Estimated normalized Varying cycles</stat>
|
|
<stat name="Texture" display="T" type="float">Estimated normalized Texture cycles</stat>
|
|
<stat name="Load/store" display="LS" type="float">Estimated normalized Load/Store cycles</stat>
|
|
<stat name="Code size">Binary size in bytes</stat>
|
|
<stat name="Threads" more="better" type="u16">Maximum number of threads in flight on a compute unit</stat>
|
|
<stat name="Loops">Number of hardware loops</stat>
|
|
<stat name="Spills">Number of spill instructions</stat>
|
|
<stat name="Fills">Number of fill instructions</stat>
|
|
</isa>
|
|
</family>
|
|
|
|
<isa name="VideoCore VI">
|
|
<stat name="Instruction Count" display="Instrs">Number of QPU instructions</stat>
|
|
<stat name="Thread Count" more="better">Number of QPU threads dispatched</stat>
|
|
<stat name="Spill Size">Size of the spill buffer in bytes</stat>
|
|
<stat name="TMU Spills" display="Spills">Number of times a register was spilled to memory</stat>
|
|
<stat name="TMU Fills" display="Fills">Number of times a register was filled from memory</stat>
|
|
<stat name="QPU Read Stalls" display="Read Stalls">Number of cycles the QPU stalls for a register read dependency</stat>
|
|
</isa>
|
|
</shaderdb>
|