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
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Reproducible Power Method in Parallel Environments

KTH Publication Database DiVA (KTH Royal Institute of Technology)
Geochemistry and Geologic Mapping
article

Reproducible Power Method in Parallel Environments

article en

Abstract

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.

KTH Publication Database DiVA (KTH Royal Institute of Technology)
Openalex Percentile: Top 68%
Geochemistry and Geologic Mapping
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.