Low-power GPUs have become ubiquitous. They can be found in domains ranging from wearable and mobile computing, to automotive systems. This places an ever increasing demand on the expected performance and power efficiency of the devices. Future low-power system-on-chips will have to provide higher performance and be able to support more complex applications, without using additional power. These demands cannot be met through hardware improvements alone, but the software must fully exploit the available resources. Unfortunately, application developers are seriously hindered when creating low-power GPU software by the limited quality of current performance analysis tools. In low-power GPU contexts there is only a minimal amount of performance information, and essentially no power information, available to the programmer.
As software becomes more complex it becomes increasingly unmanageable for programmers to optimise the software for low-power devices. This project proposes to aid the application developer in creating software for low-power GPUs by building on the results of the first LPGPU project by providing a complete performance and power analysis process for the programmer. This project will address all aspects of performance analysis, from hardware power and performance counters, to a framework that processes and visualises information from these counters, to applications that will be used as use-cases to drive the entire design. To access the new hardware performance counters a standardisable API will be produced to interface to a prototype hardware implementation. This will let the analysis and visualisation framework connect to any GPU driver that implements the API. The consortium’s expertise will be used to drive the initial design of the API and analyses, but multiple application use-cases will also be used to inform further iterations. This use-case driven approach will result in a performance and power optimisation framework that allows programmers to optimise applications in domains where there is a genuine need.