GDC 2015: "Unleash the Benefits of OpenGL ES 3.1 and Android Extension Pack (AEP) (Presented by ARM)" by Hans-Kristian Arntzen, Tom Olson of ARM https://gdcvault.com/play/1022390/Unleash-the-Benefits-of-OpenGL

This presentation spanned the gamut, from "wow that's interesting" to "omg that's so stupid"

The "wow that's interesting" part was when the presenter was discussing Mali hardware. They mentioned 2 interesting things:

1/5

Unleash the Benefits of OpenGL ES 3.1 and Android Extension Pack (AEP) (Presented by ARM)

OpenGL ES 3.1 provides a rich set of tools for creating stunning images. This talk will cover best practices for using advanced features of OpenGL ES 3.1 on ARM Mali GPUs, using recently developed examples from the Mali SDK. We'll also look at...

1. Mali doesn't use warps (where multiple threads share the same program counter). Instead, each thread has its own program counter. This is fascinating; I've never heard of a GPU working this way. And it could definitely change how you write shaders!!

2. They were saying that shared memory (which I'm assuming is LDS) is not any faster than global memory, which is *wild*. I wonder if they just *don't have LDS* and just use global memory instead...

2/5

The "omg that's so stupid" part was when the Google presenter was describing the Android Extension Pack. AFAICT, it's completely useless. It's a "meta extension" that is just a collection of GLES extensions. If your app requires it (rather than requiring the specific extensions you need), you're artificially limiting the number of devices you can run on. And AFAICT you get nothing in return.

3/5

There was a part where the presenter said you can declare in your app manifest that you require it, and then devices that don't have it won't see your app in the app store, but also: 1. it wasn't clear whether you could declare the *specific* extensions you require in the app manifest, and 2. Because you probably don't *actually* require *every* extension in the extension pack, you probably *want* your app to appear in the store even if the device doesn't support the AEP.

So dumb.

4/5

I got the feeling that what Google was trying to do was to guarantee that every device running the next version of Android would support the AEP, and then they realized how many devices that would cause to become incompatible with the next version of Android, and reversed course.

Anyway...

Review: 2/10 It got some points for the hardware info about Mali. But that's it.