Skip to main content
Log in

A multi-device version of the HYFMGPU algorithm for hyperspectral scenes registration

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Hyperspectral image registration is a relevant task for real-time applications like environmental disasters management or search and rescue scenarios. Traditional algorithms were not really devoted to real-time performance, even when ported to GPUs or other parallel devices. Thus, the HYFMGPU algorithm arose as a solution to such a lack. Nevertheless, as sensors are expected to evolve and thus generate images with finer resolutions and wider wavelength ranges, a multi-GPU implementation of this algorithm seems to be necessary in a near future. This work presents a multi-device MPI \(+\) CUDA implementation of the HYFMGPU algorithm that distributes all its stages among several GPUs. This version has been validated testing it for 5 different real hyperspectral images, with sizes from about 80 MB to nearly 2 GB, achieving speedups for the whole execution of the algorithm from 1.18 \(\times \) to 1.59 \(\times \) in 2 GPUs and from 1.26 \(\times \) to 2.58 \(\times \) in 4 GPUs. The parallelization efficiencies obtained are stable around 86\(\%\) and 78\(\%\) for 2 and 4 GPUs, respectively, which proves the scalability of this multi-device version.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

References

  1. Awan AA, Hamidouche K, Venkatesh A, Panda DK (2016) Efficient large message broadcast using NCCL and CUDA-aware MPI for deep learning. In: Proceedings of the 23rd European MPI Users’ Group Meeting, EuroMPI 2016. ACM, New York, pp. 15–22

  2. Baumgardner MF, Biehl LL, Landgrebe DA (1992) 220 Band AVIRIS Hyperspectral Image Data Set: June 12, 1992 Indian Pine Test Site 3. https://doi.org/10.4231/R7RX991C. https://purr.purdue.edu/publications/1947/1. Accessed 14 Nov 2018

  3. Fernández-Fabeiro J, Álvaro Ordóñez, González-Escribano A, Heras DB (2018) Towards a multi-device version of the HYFMGPU algorithm for hyperspectral scenes registration. https://doi.org/10.5281/zenodo.1475157

  4. Frigo M, Johnson SG (2005) The Design and Implementation of FFTW3. Proc IEEE 93(2):216–231

    Article  Google Scholar 

  5. Garea AS, Heras DB, Argüello F (2016) GPU classification of remote-sensing images using kernel ELM and extended morphological profiles. Int J Remote Sens 37(24):5918–5935

    Article  Google Scholar 

  6. Glaser J, Nguyen TD, Anderson JA, Lui P, Spiga F, Millan JA, Morse DC, Glotzer SC (2015) Strong scaling of general-purpose molecular dynamics simulations on GPUs. Comput Phys Commun 192:97–107

    Article  Google Scholar 

  7. Jiménez LI, Sánchez S, Martín G, Plaza J, Plaza AJ (2017) Parallel Implementation of spatial spectral endmember extraction on graphic processing units. IEEE J Sel Top Appl Earth Obs Remote Sens 10(4):1247–1255

    Article  Google Scholar 

  8. Keshava N, Mustard JF (2002) Spectral unmixing. IEEE Signal Process Mag 19(1):44–57

    Article  Google Scholar 

  9. Kraus J (2013) An Introduction to CUDA-Aware MPI, NVIDIA Developer Blog. https://devblogs.nvidia.com/introduction-cuda-aware-mpi/. Accessed 14 Nov 2018

  10. Lončar V, Young SLE, Škrbić S, Muruganandam P, Adhikari SK, Balaž A (2016) OpenMP, OpenMP, MPI, and CUDA/MPI C programs for solving the time-dependent dipolar Gross–Pitaevskii equation. Comput Phys Commun 209:190–196

    Article  MATH  Google Scholar 

  11. NASA Jet Propulsion Laboratory: Airborne Visible/Infrared Imaging Spectrometer (AVIRIS) Database. https://aviris.jpl.nasa.gov/data/index.html. Accessed 14 Nov 2018

  12. NVIDIA Corporation: cuBLAS Library User’s Guide. https://docs.nvidia.com/cuda/pdf/CUBLAS_Library.pdf. Accessed 14 Nov 2018

  13. NVIDIA Corporation: CUDA C Programming Guide. https://docs.nvidia.com/cuda/pdf/CUDA_C_Programming_Guide.pdf. Accessed 14 Nov 2018

  14. NVIDIA Corporation: cuFFT Library User’s Guide. https://docs.nvidia.com/cuda/pdf/CUFFT_Library.pdf. Accessed 14 Nov 2018

  15. NVIDIA Corporation: cuSOLVER Library User’s Guide. https://docs.nvidia.com/cuda/pdf/CUSOLVER_Library.pdf. Accessed 14 Nov 2018

  16. NVIDIA Corporation: MPI Solutions for GPUs. https://developer.nvidia.com/mpi-solutions-gpus. Accessed 14 Nov 2018

  17. NVIDIA Corporation: NVIDIA Collective Communications Library (NCCL). https://developer.nvidia.com/nccl. Accessed 14 Nov 2018

  18. NVIDIA Corporation: NVIDIA Performance Primitives (NPP). https://docs.nvidia.com/cuda/npp/index.html. Accessed 14 Nov 2018

  19. NVIDIA Corporation: Thrust Quick Start Guide. https://docs.nvidia.com/cuda/pdf/Thrust_Quick_Start_Guide.pdf. Accessed 14 Nov 2018

  20. Ordóñez A, Argüello F, Heras DB Repository of hyperspectral images for ’GPU Accelerated FFT-Based Registration of Hyperspectral Scenes’. https://gitlab.citius.usc.es/hiperespectral/RegistrationRepository. Accessed 14 Nov 2018

  21. Ordóñez A, Argüello F, Heras DB (2017) Fourier–Mellin registration of two hyperspectral images. Int J Remote Sens 38(11):3253–3273

    Article  Google Scholar 

  22. Ordóñez A, Argüello F, Heras DB (2017) GPU accelerated FFT-based registration of hyperspectral scenes. IEEE J Sel Top Appl Earth Obs Remote Sens 10(11):4869–4878

    Article  Google Scholar 

  23. Pan W, Qin K, Chen Y (2009) An adaptable-multilayer fractional Fourier transform approach for image registration. IEEE Trans Pattern Anal Mach Intell 31(3):400–414

    Article  Google Scholar 

  24. Richards J (2013) Remote sensing digital image analysis, chap. Feature reduction. Springer, Berlin, pp 343–380

    Book  Google Scholar 

  25. Rogge D, Rivard B, Zhang J, Sanchez A, Harris J, Feng J (2007) Integration of spatial–spectral information for the improved extraction of endmembers. Remote Sens Environ 110(3):287–303

    Article  Google Scholar 

Download references

Acknowledgements

This work has been partially supported by: Universidad de Valladolid—Consejería de Educación of Junta de Castilla y León, Ministerio de Economía, Industria y Competitividad of Spain, and European Regional Development Fund (ERDF) program: Project PCAS (TIN2017-88614-R), Project PROPHET (VA082P17) and CAPAP-H6 network (TIN2016-81840-REDT). Universidade de Santiago de Compostela—Consellería de Cultura, Educación e Ordenación Universitaria of Xunta de Galicia (grant numbers GRC2014/008 and ED431G/08) and Ministerio de Economía, Industria y Competitividad of Spain (Grant Number TIN2016-76373-P), all co-funded by the European Regional Development Fund (ERDF) program. The work of Álvaro Ordóñez was supported by the Ministerio de Educación, Cultura y Deporte under an FPU Grant (Grant Number FPU16/03537).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jorge Fernández-Fabeiro.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fernández-Fabeiro, J., Ordóñez, Á., Gonzalez-Escribano, A. et al. A multi-device version of the HYFMGPU algorithm for hyperspectral scenes registration. J Supercomput 75, 1551–1564 (2019). https://doi.org/10.1007/s11227-018-2689-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-018-2689-7

Keywords

Navigation