Efficient representation scheme for multidimensional array operations
Array operations are used in a large number of important scientific codes, such as molecular dynamics, finite element methods, climate modeling, etc, To implement these array operations efficiently, many methods have been proposed in the literature, However, the majority of these methods are focused on the two-dimensional arrays, When extended to higher dimensional arrays, these methods usually do not perform well. Hence, designing efficient algorithms for multidimensional array operations becomes an important issue. In this paper, we propose a new scheme, extended Karnaugh map representation (EKMR), for the multidimensional array representation. The main idea of the EKMP scheme is to represent a multidimensional array by a set of two-dimensional arrays, Hence, efficient algorithm design for multidimensional array operations becomes less complicated. To evaluate the proposed scheme, we design efficient algorithms for multidimensional array operations, matrix-matrix addition/subtraction and matrix-matrix multiplications, based on the EKMR and the traditional matrix representation (TMR) schemes, Both theoretical analysis and experimental test for these array operations were conducted. Since Fortran 90 provides a rich set of intrinsic functions for multidimensional array operations, in the experimental test, we also compare the performance of intrinsic functions provided by the Fortran 90 compiler and those based on the EKMP scheme. The experimental results show that the algorithms based on the EKMR scheme outperform those based on the TMR scheme and those provided by the Fortran 90 compiler,
multidimensional arrays array operations extended karnaugh map representation traditional matrix representation data structure