- Arm Guide to OpenCL
- Real-time Dense Passive Stereo Vision
- OpenCL for Arm Mali GPUs FAQ Whitepaper
- OpenCL Implementing JPEG
- OpenCL Optimizing Convolution
- Optimizing Canny Edge Detection
- OpenCL Optimizing Pyramid
Gian Marco Iodice, Software Engineer, Arm
Passive stereo vision is a powerful visual sensing technique aimed at inferring depth without using any structured light. Nowadays, as it offers low cost and reliability solutions, it finds application in many real use cases, such as natural user interfaces, industrial automation, autonomous vehicles, and many more. Since stereo vision algorithms are extremely computationally expensive, resulting in very high CPU load, the aim of this presentation is to demonstrate the feasibility of this task on a low power mobile Arm Mali GPU. In particular, the presentation will focus on a local stereo vision method based on a novel extension of census transform, which exploits the highly parallel execution feature of mobile Graphic Processing Units with OpenCL. The presentation will show also the approaches and the strategies used to optimize the OpenCL code in order to reach significant performance benefits on the GPU.
This tutorial provides some details of an example implementation of JPEG using an Arm Mali Midgard GPU, and describes some methods for optimizing a JPEG compression process. The optimization methods are provided to demonstrate how similar processes can be improved.
This tutorial provides an example optimization process for running convolution operations using an Arm Mali Midgard GPU. This process can improve performance significantly.
This tutorial provides advice and information on the principals of GPU compute to software developers who want to improve the use of the available hardware in platforms that perform Canny edge detection.