Reproducible Power Method in Parallel Environments
Reproducible and accurate eigenvalue computation is critical in many scientific and engineering problems, particularly when solving large and sparse linear systems. The power method is an iterative algorithm, efficient for computing the dominant eigenvalue in such systems. This project investigates four parallel implementations of the power method, OpenMP, OpenMP Offloading, CUDA, and CUDA with ExBLAS, with the goal of enhancing reproducibility while ensuring performance. While one might expect different run of the parallel power method to compute the same result, this is not guaranteed due to the fact that floating-point operations are non-associative. We evaluate each implementation using five sparse matrices from the Suite Sparse Matrix Collection, measuring both reproducibility and execution time. The results show that only the CUDA ExBLAS implementation consistently produces reproducible results with high accuracy across all configurations. For lower precision 10-6 all implementations produced reproducible results. In terms of performance, OpenMP achieved the best execution times, while CUDA ExBLAS performed the slowest on a gaming GPU. However, with access to hardware optimized for scientific computation, both CUDA and CUDA ExBLAS are expected to deliver significantly better performance.
Publication Details
- Journal
- KTH Publication Database DiVA (KTH Royal Institute of Technology)
- Published
- 2025-01-01
- Primary Topic
- Geochemistry and Geologic Mapping
- Type
- article
- Field-Weighted Citation Impact
- 0.00