On shared-memory parallelization of a sparse matrix scaling algorithm - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2012

On shared-memory parallelization of a sparse matrix scaling algorithm


We discuss efficient shared memory parallelization of sparse matrix computations whose main traits resemble to those of the sparse matrix-vector multiply operation. Such computations are difficult to parallelize because of the relatively small computational granularity characterized by small number of operations per each data access. Our main application is a sparse matrix scaling algorithm which is more memory bound than the sparse matrix vector multiplication operation. We take the application and parallelize it using the standard OpenMP programming principles. Apart from the common race condition avoiding constructs, we do not reorganize the algorithm. Rather, we identify associated performance metrics and describe models to optimize them. By using these models, we implement parallel matrix scaling algorithms for two well-known sparse matrix storage formats. Experimental results show that simple parallelization attempts which leave data/-work partitioning to the runtime scheduler can suffer from the overhead of avoiding race conditions especially when the number of threads increases. The proposed algorithms perform better than these algorithms by optimizing the identified performance metrics and reducing the overhead.
Fichier principal
Vignette du fichier
cku-icpp12.pdf (781.38 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-00763553 , version 1 (19-12-2019)


  • HAL Id : hal-00763553 , version 1


Umit V. Catalyurek, Kamer Kaya, Bora Uçar. On shared-memory parallelization of a sparse matrix scaling algorithm. 2012 41st International Conference on Parallel Processing, Sep 2012, Pittsburgh, PA, United States. pp.68--77. ⟨hal-00763553⟩
74 View
129 Download


Gmail Facebook X LinkedIn More