Mali OpenCL SDK

Mali OpenGL ES SDK for Android

Software Development Kit OpenCL™ on ARM Linux

The Mali OpenCL SDK provides developers with a framework and series of samples for developing OpenCL 1.1 applications on ARM Mali based platforms such as the Mali-T600 family of GPUs. The samples cover a wide range of use cases that utilize the Mali GPU to achieve a significant improvement in performance when compared to running on the CPU alone.

OpenCL is an open standard defined by Khronos that exposes the vast parallel processing capabilities of the GPU to the developer, to achieve improvements in performance and power efficiency. The samples are supported by tutorials with step-by-step guidance that describe best practises that should be used when targeting the Mali family of GPUs.

DOWNLOAD v1.1

OpenCL SDK TUTORIALS



FEATURES & BENEFITS


  • Samples & Tutorials
    Numerous samples from the basic set-up to more complex examples demonstrating common filters and OpenCL operations
    Samples demonstrating features of OpenCL 1.1
    Step-by-Step walk through of samples and optimization steps
  • Simple Project Setup
    Simple build steps to get up and running quickly
  • Simple Framework
    A lightweight framework with common helper utilities
  • Linux on ARM Support
    Packages provides for support for ARM Linux based platforms with Mali-T600 Family of GPUs and OpenCL


DOCUMENTATION


OpenCL SDK

Getting Started Guide and Tutorials included.

Support

Please submit your questions and issues to the Mali Developer Forums

*OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos.



OPENCL EXAMPLES


Hello World
Basic Introduction to OpenCL and Vectorization. Starts with moving C code to OpenCL and improving performance by utilizing vectorization


Template
Skelton code that can be used for starting OpenCL development


Memory Buffers
Sharing memory efficiently between the ARM Cortex-A processor and Mali-T600 GPU


Image Objects
See how using image objects for textures and images can simplify development and increase performance


64-bit Integer and Atomic
How to use long data types and atomics with OpenCL 1.1 Full Profile


Sobel Filter
Implementation of a simple convolution filter used in edge detection


FIR Filter
Floating point FIR (Finite Input Response) image filter commonly used for pixelization and noise reduction


Mandelbrot
Mandelbrot fractal patterns


Single-Precision General Matrix Multiplication
Matrix multiplication example