Comparison of Python GPU implementations of eigensolvers

  • John Ian E. Felismino National Institute of Physics, University of the Philippines Diliman
  • Francis N. C. Paraan National Institute of Physics, University of the Philippines Diliman

Abstract

Python implementations of GPU-based eigensolvers were tested and evaluated. The performance of PyCUDA and scikit-cuda library functions for Python were used and compared to the corresponding ones from the NumPy library. Despite GPU-based cuBLAS routines being faster than their usual NumPy equivalents on the consumer-level hardware used, cuSOLVER function implementations have longer execution times than the NumPy functions. Two Python variants of the tridiagonalization step of the Lanczos algorithm were tested with cuBLAS functions and we showed that a hybrid CPU-GPU approach resulted in an algorithm that was both fast and stable. However, the presented algorithms are still slower than the highly optimized NumPy eigensolver and further optimizations are needed to obtain GPU acceleration in our Python-based eigensolver.

Published
2018-06-01
How to Cite
[1]
J. I. Felismino and F. N. Paraan. Comparison of Python GPU implementations of eigensolvers, Proceedings of the Samahang Pisika ng Pilipinas 36, SPP-2018-PB-51 (2018). URL: https://paperview.spp-online.org/proceedings/article/view/SPP-2018-PB-51.
Section
Poster Session B (Complex Systems, Simulations, and Theoretical Physics)