PowerVR Tools and SDK 2018 Release 2 now available

Here’s an early Christmas present for graphics developers – the release of the latest version of our PowerVR Tools and SDK! The headline features for this release include some exciting new examples demonstrating new techniques in our SDK, and some very useful new functionality for our performance profiling tool, PVRTune.

You can download the new PowerVR Tools and SDK immediately and then read on to see what you’re going to be unwrapping!

SDK

We’re really pleased to share our new and updated examples, which showcase some handy new techniques, optimised for PowerVR.

Image-based lighting
‘Image-based lighting’ example

Our brand-new image-based lighting example shows you how to achieve physically-based rendering (PBR) efficiently on mobile platforms. There are two modes:

  • Spheres – which demonstrates the effects of varying roughness and metallic material properties when using PBR.
  • Helmet – which showcases a model with multiple material properties.
'Post-processing' example
‘Post-processing’ example

Our post-processing example has been completely rewritten, and now demonstrates a set of heavily optimised bloom post-processing techniques using Gaussian Blur, as well as some other implementations seen in recent games.

These techniques are as follows:

  • Reference implementation of a separated Gaussian Blur.
  • Linear sampler-optimised separated Gaussian Blur.
  • Sliding average compute-based separated Gaussian Blur.
  • Linear sampler-optimised separated Gaussian Blur with samples of negligible value truncated. This means the approximate blurs can be achieved with far fewer samples.
  • Hybrid Gaussian Blur using the truncated separated Gaussian Blur along with a sliding average-based Gaussian Blur.
  • Kawase Blur.
  • Dual Filter.
  • Pyramidal Filter hierarchy bloom.

“Introducing PVRVk” example

This is another new example for this release. “Introducing PVRVk” is aimed at developers looking for extra guidance when writing Vulkan applications using our Framework. It has the same functionality as our existing example “Introducing PVRShell“, but this time you can see how using PVRVk reduces boilerplate code and provides strongly-typed enums and reference counting. This means you can get to the same result as in “Introducing PVRShell” but with much less code, much less hassle, and most importantly – much quicker.

SDK in general

We’ve also been looking more closely at colour space – in particular sRGB – throughout the SDK. You’ll now find that where sRGB framebuffers are supported, when it’s appropriate, we’ll be making use of them in OpenGL ES and Vulkan. Where it is not supported, you can still use sRGB, but the conversion will be made manually in shaders.

This new sRGB-correctedness applies to all the textures we use and the framebuffer. If you switch to the latest version of our emulation library PVRVFrame, this has also just been updated for sRGB correctness, so make sure you’re using this latest SDK version with it.

And of course, we’ve been making the usual improvements, including restructuring our CMake files to make them easier to work with. We’ve also made updates to support the latest versions of Vulkan, added support for Android Studio 3.2, and updated our version of VMA to 2.1.

PVRTune

Moving over to our tools, PVRTune has the focus for this second release of 2018. As well as lots of more general optimisations throughout, we want to draw your attention to some new features.

PVRPerfServer is now automatic

One of our biggest changes affects how you use PVRPerfServer. This is our command-line application that runs on your PowerVR device and retrieves the graphics core performance data for use by the PVRTune GUI. That same GUI will now let you deploy and automatically launch PVRPerfServer on Linux (via ssh) or rooted Android (via adb) devices. So essentially, you can now just “click and connect” instead of installing it manually.

Statistics Report window

Giving you yet another way of analysing graphics performance in your application, the new Statistics Report window can be accessed via the Monitor window. It has two modes:

  • Frame mode – an entire frame’s worth of data consolidated into a manageable layout for inspection.
  • Range mode – you can define a selected range on the timing graph, and see the counters inside that range.

The information from both modes can also be exported in JSON format.

Counter changes

We’ve had a few tweaks here. The GPU memory counters that were previously measured in words per second are now represented as bytes. Plus, we’ve added a new GPU memory counter – “GPU memory interface load” which shows the percentage of GPU memory bus utilisation.

PVRTune Complete – NDA only

PVRTune Complete is our enhanced version, which requires you to have an NDA which you can apply for through our support portal. For PowerVR developers, the ‘Complete’ version of PVRTune will be a huge benefit when optimising your graphics application. Explaining it all is beyond the scope of this blog post, but click the link to read more about the advantages of PVRTune Complete.

For this release, we’ve added support for Vulkan and OpenCL client streams and events, subject to DDK compatibility, and a new timeline showing Vulkan Debug markers.

We’ve also added support for two new host (kernel module) stream packets:

  • Host Device Info: this shows the current device health status
  • Host Info: this shows the per-PID driver memory usage statistics.

To support these new stream packets, we have also added some new host memory usage counters covering total host memory usage, graphics memory usage, and kernel memory usage.

What else?

As usual, our engineers have been hard at work making internal optimisations and bug fixes across our tools and SDK. We’ve also added support throughout our tools for the latest versions of other libraries and applications, including supporting 3ds Max 2019 in PVRGeoPOD.

You may have spotted a new tool – PVRCarbon. Built from the ground up to improve capture and analysis performance, PVRCarbon captures Vulkan calls where PVRTrace does not. It is in beta and still being developed, so while there are significant performance improvements over PVRTrace, it does not yet have all the features. For this release, the biggest additions are OpenGL ES support, and the ability to export multi-threaded Vulkan recordings as debuggable C++ code. Feedback is welcome through our ticketing system.

We’re also in the process of improving the quality of our documentation. Our SDK browser now looks (and reads) a lot better, and we’ve improved the presentation of our tools manuals. Some of our documents, including our very popular performance recommendations, have been reworked to improve readability. This is just the start – watch this space for major documentation developments coming soon!

Come join us!

We love what we do, and right now the Developer Technology team is expanding. We have a few vacancies both here in the UK (our modern campus in a lovely village just outside London) and in China. If you’re interested or know somebody then please take a look at the top positions.

And finally…

We’re always proud of the support we give. You can get answers to your PowerVR questions via our forum, or our ticketing portal.

And if you haven’t already – go download the PowerVR Tools and SDK 2018 Release 2 now!

For more news and announcements related to PowerVR, keep coming back to our blog and follow us on Twitter @ImaginationTech@PowerVRInsiderFacebook, and LinkedIn.

Please leave a comment below

Comment policy: We love comments and appreciate the time that readers spend to share ideas and give feedback. However, all comments are manually moderated and those deemed to be spam or solely promotional will be deleted. We respect your privacy and will not publish your personal details.

Search by Tag

Search for posts by tag.

Search by Author

Search for posts by one of our authors.

Featured posts
Popular posts

Blog Contact

If you have any enquiries regarding any of our blog posts, please contact:

United Kingdom

benny.har-even@imgtec.com
Tel: +44 (0)1923 260 511

Related blog articles

Connecting to CES 2019

Attending CES on an annual basis does enable one to make comparisons and get a sense of how technology and trends are progressing. Therefore, as well as meetings and discussions around our recent graphics and AI announcements we took the

AI in the UK: Year in Review

As a company focused heavily on enabling AI processing, it’s important to us that the country where we live is supporting efforts around AI technology development and policy. Indeed, the government, academic institutions, investors, and the entire ecosystem in the

CES 2019 banner

Get some facetime with Imagination at CES 2019

As the holiday season starts to fade to a distant memory the reality of CES is once again looming large our horizons, promising a new flurry of technology announcements to try and make sense of. As the saying goes, what

Lenovo 300e

PowerVR 2018 consumer tech round-up

Before we shut up shop for the year here at Imagination HQ, we thought we take a quick look at some of the end user products that Imagination tech found its way into in 2018. Our IP has appeared in

Stay up-to-date with Imagination

Sign up to receive the latest news and product updates from Imagination straight to your inbox.

  • This field is for validation purposes and should be left unchanged.