Skip to Main Content
Satellite image processing algorithms often offer a very high degree of parallelism (e.g., pixel-by-pixel processing) that make them optimal candidates for execution on high-performance parallel computing hardware such as modern graphic processing units (GPUs) and multicore CPUs with vector processing capabilities. By using the OpenCL computing standard, a single implementation of a parallel algorithm can be deployed on a wide range of hardware platforms. However, achieving the best performance on each individual platform may still require a custom implementation. We show some possible approaches to the optimization of satellite image processing algorithms on a range of different platforms, discussing the implementation in OpenCL of the classic Brightness Temperature Difference ash-cloud detection algorithm.