کد مقاله کد نشریه سال انتشار مقاله انگلیسی نسخه تمام متن
568319 1452161 2012 11 صفحه PDF دانلود رایگان
عنوان انگلیسی مقاله ISI
FastMat: A C++ library for multi-index array computations
موضوعات مرتبط
مهندسی و علوم پایه مهندسی کامپیوتر نرم افزار
پیش نمایش صفحه اول مقاله
FastMat: A C++ library for multi-index array computations
چکیده انگلیسی

In this paper we introduce and describe an efficient thread-safe matrix library for computing element/cell residuals and Jacobians in Finite Elements and Finite Volume-like codes. The library provides a wide range 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 several tensors is performed (i.e., the so-called ‘multi-product’ operation). Another key-point of the FastMat approach is that some computations (for instance the optimal order in the multi-product operation mentioned before) are computed in the first iteration of the loop body and stored in a cache object, so that in the second and subsequent executions these computations are retrieved from the cache, and then not recomputed. The library is open source and freely available within the multi-physics parallel FEM code PETSc-FEM http://www.cimec.org.ar/petscfem and it can be exploited on distributed and shared memory architectures as well as in hybrid approaches. We studied the performance of the library in the context of typical FEM tensor contractions.


► A new approach in designing a multi-index array library is presented.
► The underlying concept is suited for FEM and FVM tensor operations at element level.
► The keypoint of the approach is that repetitive computations are in cache objects.
► An algorithm for choosing the optimal computation order of tensor product is performed.
► Performance tests are presented (comparing them to other well-known libraries).

ناشر
Database: Elsevier - ScienceDirect (ساینس دایرکت)
Journal: Advances in Engineering Software - Volume 54, December 2012, Pages 38–48
نویسندگان
, , , , ,