Loading…
Multi-core-CPU and GPU-accelerated radiative transfer models based on the discrete ordinate method
The operational processing of remote sensing data usually requires high-performance radiative transfer model (RTM) simulations. To date, multi-core CPUs and also Graphical Processing Units (GPUs) have been used for highly intensive parallel computations. In this paper, we have compared multi-core an...
Saved in:
Published in: | Computer physics communications 2014-12, Vol.185 (12), p.3079-3089 |
---|---|
Main Authors: | , , , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | The operational processing of remote sensing data usually requires high-performance radiative transfer model (RTM) simulations. To date, multi-core CPUs and also Graphical Processing Units (GPUs) have been used for highly intensive parallel computations. In this paper, we have compared multi-core and GPU implementations of an RTM based on the discrete ordinate solution method. To implement GPUs, the original CPU code has been redesigned using the C-oriented Compute Unified Device Architecture (CUDA) developed by NVIDIA.
GPU memory management is a crucial issue regarding the performance. To cope with limitations of GPU registers, we have adapted an RTM based on the matrix operator technique together with the interaction principle for multilayer atmospheric systems. The speed-up of such an implementation depends on the number of discrete ordinates used in the RTM. To reduce the CPU/GPU communication overhead, we have exploited the asynchronous data transfer between host and device. To obtain optimal performance, we have also used overlapping of CPU and GPU computations by distributing the workload between them.
With GPUs, we have achieved a 20x–40x speed-up for the multi-stream RTM, and 50x speed-up for the two-stream RTM with respect to the original single-threaded CPU codes. Based on these performance tests, an optimal workload distribution scheme between GPU and CPU is proposed. Additionally, CPU/GPU benchmark tests regarding basic matrix operations are given. Finally, we discuss the performance obtained with the multi-core-CPU and GPU implementations of the RTM. |
---|---|
ISSN: | 0010-4655 1879-2944 |
DOI: | 10.1016/j.cpc.2014.07.018 |