Comparison of Python GPU implementations of eigensolvers

Authors

  • 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.

Downloads

Issue

Article ID

SPP-2018-PB-51

Section

Poster Session B (Complex Systems, Simulations, and Theoretical Physics)

Published

2018-06-01

How to Cite

[1]
JIE Felismino and FNC Paraan, Comparison of Python GPU implementations of eigensolvers, Proceedings of the Samahang Pisika ng Pilipinas 36, SPP-2018-PB-51 (2018). URL: https://proceedings.spp-online.org/article/view/SPP-2018-PB-51.