Executing SNAP Toolbox tasks on GPU

Dear ALL:

Is it there any way to run the SNAP Toolbox operations (geometric calibration, radiometric calibration, etc.) on GPU? Please share the way forward. Executing such operations on Laptops takes too much time.


No this is not possible. Sorry.
And really making benefit of the power of GPU would need special implementations, which is currently out of scope of this project.

1 Like

To add to @marpet’s comment: Efforts to exploit GPU processing in Java have been ongoing for many years, but are a long way from being widely applicable:

  • GPU’s vary widely in the software support, and details are often proprietary. There is a long history of attempts to accelerate Java on “General Purpose” GPU’s Boosting Java Performance using GPGPUs (arxiv.org). SNAP attempts to support a wide range of hardware without requiring purchase of commercial software, so is limited to methods that work across a wide range of hardware. Most laptop GPU’s are intended only to accelerate graphics display operations and are not GPGPU’s.

  • not all calculations are well suited to (GP)GPU processing

1 Like

Thanks Dear.

Would Julia be a viable programming language option some time in the future? It runs natively on both CPUs and GPUs.

Adding to all the previous’ posts information, there might be an alternative - Bitbucket ALUs has support for Nvidia GPUs for accelerating processing. Partly due to the facts that @marpet mentioned this toolbox supports end-to-end routines only, currently coherence and calibration. It has used SNAP algorithm implementation as a base. For more information surf around the repository’s README files (for performance and SNAP comparisons) or ask directly from me (hint, soon there will be version 1.0 release which is easier to use and already available on development branch).