INVESTIGADORES
STORTI Mario Alberto
artículos
Título:
FastMat: A C++ library for multi-index array computations
Autor/es:
PAZ RODRIGO; MARIO A. STORTI; DALCÍN LISANDRO; CASTRO, HUGO GUILLERMO; KLER, PABLO
Revista:
ADVANCES IN ENGINEERING SOFTWARE
Editorial:
ELSEVIER SCI LTD
Referencias:
Lugar: Amsterdam; Año: 2012 vol. 54 p. 34 - 82
ISSN:
0965-9978
Resumen:
In this paper we introduce and describe an efficient thread-safe matrix library for computing element/cellresiduals and Jacobians in Finite Elements and Finite Volume-like codes. The library provides a widerange of multi-index tensor operations that are normally used in scientific numerical computations.The library implements an algorithm for choosing the optimal computation order when a product of sev-eral tensors is performed (i.e., the so-called ‘multi-product’ operation). Another key-point of the FastMatapproach is that some computations (for instance the optimal order in the multi-product operation men-tioned before) are computed in the first iteration of the loop body and stored in a cache object, so that inthe second and subsequent executions these computations are retrieved from the cache, and then notrecomputed. The library is open source and freely available within the multi-physics parallel FEM codePETSc-FEM http://www.cimec.org.ar/petscfem and it can be exploited on distributed and shared memoryarchitectures as well as in hybrid approaches. We studied the performance of the library in the context oftypical FEM tensor contractions.