MUMPS Based Approach to Parallelize the Block Cimmino AlgorithmCarlos 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, ...)