MUMPS Based Approach to Parallelize the Block Cimmino Algorithm
Carlos Balsa (Escola Superior de Tecnologia e Gestão de Bragança, Portugal)Ronan Guivarch (IRIT-ENSEEIHT)
João Raimundo (IRIT-ENSEEIHT)
Daniel Ruiz (IRIT-ENSEEIHT)
Abstract:
The Cimmino method is a row projection method in which the original linear system is divided into subsystems.
At every iteration, it computes one projection per subsystem and uses these
projections to construct an approximation to the solution of the linear
system.
The usual parallelization strategy applied in block algorithms is to
distribute the different blocks on the different available processors.
In this paper, we follow another approach where we do not perform
explicitely this block distribution to processors whithin the code, but let
the multi-frontal sparse solver MUMPS handle the data distribution and
parallelism.
The data coming from the subsystems defined by the block partition in the
Block Cimmino method are gathered in an unique matrix which is analysed,
distributed and factorized in parallel by MUMPS.
Our target is to define a methodology for parallelism based only on
the functionalities provided by general sparse solver libraries and how
efficient this way of doing can be.
We relate the development of this new approach from an existing code written
in Fortran 77 to the MUMPS-embedded version. The results of the ongoing
numerical experiments will be presented in the conference.
Keywords:
Parallel and Distributed Computing, Grid Computing (middleware, algorithms, performance evaluation, ...)