PVRShaderEditor¶
PVRShaderEditor helps developers understand what is happening when optimising shaders. This GUI-based tool provides a wide range of off-line performance analysis data as shaders are being written.
Shader disassembly for PowerVR Rogue graphics cores is provided within the tool. It is possible to see the exact instructions that will be executed on the Unified Shading Cluster (USC) that have been generated by the compiler for the shader in question.
Key features include:
Syntax highlighting for GLSL ES, GLSL, PFX, HLSL, and OpenCL Kernels.
Support for PowerVR SGX and Rogue offline GLSL ES compilers.
Per-line cycle count estimates.
Simulated performance estimates (PowerVR Series5 and Series5XT graphics cores only).
Full dissembled USC code, including FP16 disassembly.
Support for Khronos reference GLSL compiler (optionally compiled to SPIR-V).
PowerVR Profiling Compilers¶
PowerVR Profiling Compilers are currently available in our Developer Portal for offline compiling shaders for Rogue (Series 6, 7, 8 and 9) and Volcanic (Series B and C) GPU architectures, supporting GLSL shaders, OpenCL kernels and SPIR-V binary shaders. They generate a profiling output with per-line cycle count and USC disassembly which can help for low-level optimizations. Please note that to access the Downloads section you will need to make a new account in our Developer Portal.
GLSL Optimiser¶
GLSL Optimiser is a standalone C++ library (currently discontinued) based on the Mesa GLSL compiler used in many game engines to optimise GLSL shaders for mobile platforms.
GLSL optimiser can automatically perform some graphics-core-independent GLSL shader optimisations. The tool will not perform any hardware-specific optimisations, but rather generic optimisations which will likely (but not always) improve performance on most platforms. To verify any shader optimisations performed by the tool, use PVRShaderEditor.