Acceleration of the Geostatistical Software Library (GSLIB) by code optimization and hybrid parallel programming
Author
dc.contributor.author
Peredo, Oscar
Author
dc.contributor.author
Ortiz Cabrera, Julián
Author
dc.contributor.author
Herrero, José R.
Admission date
dc.date.accessioned
2015-12-28T17:46:49Z
Available date
dc.date.available
2015-12-28T17:46:49Z
Publication date
dc.date.issued
2015
Cita de ítem
dc.identifier.citation
Computers & Geosciences 85 (2015) 210–233
en_US
Identifier
dc.identifier.other
DOI: 10.1016/j.cageo.2015.09.016
Identifier
dc.identifier.uri
https://repositorio.uchile.cl/handle/2250/135988
General note
dc.description
Artículo de publicación ISI
en_US
Abstract
dc.description.abstract
The Geostatistical Software Library (GSLIB) has been used in the geostatistical community for more than thirty years. It was designed as a bundle of sequential Fortran codes, and today it is still in use by many practitioners and researchers. Despite its widespread use, few attempts have been reported in order to bring this package to the multi-core era. Using all CPU resources, GSLIB algorithms can handle large datasets and grids, where tasks are compute- and memory-intensive applications. In this work, a methodology is presented to accelerate GSLIB applications using code optimization and hybrid parallel processing, specifically for compute-intensive applications. Minimal code modifications are added decreasing as much as possible the elapsed time of execution of the studied routines. If multi-core processing is available, the user can activate OpenMP directives to speed up the execution using all resources of the CPU. If multi-node processing is available, the execution is enhanced using MPI messages between the compute nodes.Four case studies are presented: experimental variogram calculation, kriging estimation, sequential gaussian and indicator simulation. For each application, three scenarios (small, large and extra large) are tested using a desktop environment with 4 CPU-cores and a multi-node server with 128 CPU-nodes. Elapsed times, speedup and efficiency results are shown.