Imagination Releases PowerVR CLDNN Neural Network SDK and Image for Acer Chromebook R13

Last month, Imagination Technology released their PowerVR CLDNN SDK, an AI-oriented API that leverages OpenCL support in PowerVR GX6250 GPU in order to  create network layers for constructing and running a neural network on PowerVR hardware.

Eventually the SDK will support PowerVR Series2NX Neural Network Accelerator, but while waiting for the hardware, the company has provided a firmware that runs only on Mediatek MT8173 based Acer Chromebook R13.

The SDK includes a demo taking a live camera feed to identify the object(s) the camera is pointing at, using known network models such as AlexNetGoogLeNet, VGG-16, or SqueezeNet. All models are Caffe models trained against the ImageNet dataset, a benchmark function is included within the demo.

Beside simply playing with the demos, you’ll be able to study the source code to check out various helper functions such as file loading, dynamic library initialisation and OpenCL context management, and read documentation such as the PowerVR CLDNN reference manual explaining all CLDNN API’s functions.

If you happen to own a Chromebook R13, and would like to give it a try you could download the Arch Linux Arm based Chromebook image via the SDK product page and use it from the micro SD card while keeping your existing ChromeOS installation, or flash to the internal eMMC flash of the Chromebook (Erasing ChromeOS).

Via Imagination Blog

13
Leave a Reply

avatar
13 Comment threads
0 Thread replies
4 Followers
 
Most reacted comment
Hottest comment thread
5 Comment authors
geokonnobeEversorblu Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
blu
Guest
blu

Wait, does that mean that OpenCL is available on R13 under Arch? When did that happen?

Eversor
Guest
Eversor

@blu

On Mali, the binary driver has worked ok for a while. Guess with the loss of Apple, IMG has finally started to take a serious look at Linux support? IIRC, they were hiring a Linux developer some months back.

blu
Guest
blu

side-channel update: the R13 ArchLinux image from the article comes with OpenCL, GL ES and Vulkan drivers!

nobe
Guest
nobe

isn’t it the first armv8 soc providing linux vulkan userspace drivers ?

blu
Guest
blu

@nobe
It’s the first I am aware of.

@Eversor
I’ve been using Mali drivers for a while across two platforms and I know they’re solid. Vulkan, though, is something else ; )

blu
Guest
blu

I wonder how well this image would run on the Lenovo e300 Chromebook — same SoC, sturdier chassis: https://www3.lenovo.com/us/en/laptops/lenovo/lenovo-n-series/300e-Chromebook/p/88ELC1S9997

Member

@blu Just tested with my Lenovo N23 / Flex 11. Works well.

blu
Guest
blu

@fan
Thanks! Have you tried the GLES, OCL and Vulkan stacks?

So, to put things into perspective, we currently have a handful of ARMv8 notebooks on the market, and those notebooks are perfectly legit for GPU development (GLES, OCL _and_ Vulkan!), and that just happened overnight with the release of a single image by Imagination, targeting the MT8173C?

Holy chromebook, batman! : )

blu
Guest
blu

Just a remark about the flash_arch_image.sh script supplied with Imagination’s ArchLinux image: the script relies on newer-version lsblk utility, not found in ubuntu 14.04. Here’s a patch for getting the script to run on ubuntu 14.04: https://pastebin.com/VdJAaMqd

blu
Guest
blu

Boy, R13 is one quick device. The A72s in there do actually sustain 2.1GHz for good amounts of time — effectively for the duration of all benches I’ve thrown at it so far, and cores stay cool within the aluminum chassis — high-30C at load, sub-30C at idle.

But best of all, OpenCL in there is fully functional (https://pastebin.com/pnN0Q1N3), and the GX6250 manages 25fps on the raytracing OCL benchmark; not much faster than 4x A72s @ 1.3GHz, but those would eat a good deal more power.

geokon
Guest
geokon

@blu
This is really cool. Thanks for the update!

blu
Guest
blu

@geokon
My pleasure!

BTW, I couldn’t help but do a quick comparison to my other MediaTek linux device — the BQ Aquaris M10 HD: https://pastebin.com/HRjAkBYs

Both tests run the exact-same client code, exact-same mixed-precision shaders and exact-same texture assets. The M10 has a tad higher screen res — 1920×1200, vs 1920×1080 on the R13. Both tests run in vsync.

blu
Guest
blu

BTW, I have to commend Imagination for something that only they seem to have figured out so far: perfectly viable, semantically-correct EGL without platform-specific code in any shape of form. Imagination call that ‘null-window surface’, and in practice it is a way for an EGL stack to create an EGL surface for the main framebuffer of the system when a native windowing manager is not present, just by passing a null argument for the ‘native window’ parameter of elgCreateWindowSurface() call. This is brilliant utilisation of the EGL semantics and the DRM mechanism, covering 90% of the needs of graphics use-cases! In comparison, other vendors are still in the stone age where it comes to providing an EGL context to /dev/fb0 (I’m looking at you, Broadcom). So I’m currently running Arch X11-less and I have no pressing needs to go full desktop on the R13, given it has dual boot to ChromeOS.