Computational Experience with Diagonally Structured Linear Algebra in Java
Pages 1 - 6
Abstract
It is a commonly held view that Java's lack of support for true rectangular arrays is one of the main impediments to its widespread applicability in numerical computing. In a recent work, we have proposed efficient implementation of linear algebra kernels such as matrix-vector and matrix-matrix multiplications by formulating arithmetic calculations in terms of diagonals, and thereby giving an orientation-neutral (column-/row-major layout) computational scheme. Diagonally-structured computation is especially suitable for banded matrices. In this paper we show that, using our diagonal framework, Java native arrays can yield superior computational performance. We present two alternative implementations for matrix-matrix multiplication operation in Java. The results from numerical testing demonstrate the advantage of our proposed methods.
References
[1]
2008: (Accessed:2018-07-21). BLAS (Basic Linear Algebra Subprograms). https://www.netlib.org/lapack/
[2]
Nuerrennisahan Nurgul Aimaiti. 2018. A Computational study of sparse or structured matrix operations, MSC Thesis, Department of Mathematics and Computer Science, University of Lethbridge, Alberta, Canada.
[3]
Ronald F Boisvert, Jack J Dongarra, Roldan Pozo, Karin A Remington, and GW Stewart. 1998. Developing numerical libraries in Java. Concurrency: Practice and Experience 10, 11-13 (1998), 1117--1129.
[4]
Ronald F Boisvert, José Moreira, Michael Philippsen, and Roldan Pozo. 2001. Java and numerical computing. Computing in Science & Engineering 3, 2 (2001), 18.
[5]
Randal E. Bryant and David R. O'Hallaron. 2016. Computer Systems: A Programmer's Perspective (3rd ed.). Addison-Wesley Publishing Company, USA.
[6]
Francisco Heron de Carvalho Junior and Cenez Araújo Rezende. 2016. Performance evaluation of virtual execution environments for intensive computing on usual representations of multidimensional arrays. Science of Computer Programming 132 (2016), 29--49.
[7]
J Jack Dongarra and Aad J van der Steen. 2012. High-performance computing systems: Status and outlook. Acta Numerica 21 (2012), 379--474.
[8]
Geir Gundersen and Trond Steihaug. 2004. Data structures in Java for matrix computations. Concurrency and computation: Practice and Experience 16, 8 (2004), 799--815.
[9]
Geir Gundersen and Trond Steihaug. 2012. On diagonally structured problems in unconstrained optimization using an inexact super Halley method. J. Comput. Appl. Math. 236, 15 (2012), 3685--3695. https://doi.org/10.1016/j.cam.2011.07.006
[10]
Shahadat Hossain and Mohammad Sakib Mahmud. 2019. On Computing with Diagonally Structured Matrices. In Proceedings of The Twenty Third IEEE High Performance Extreme Computing Conference (HPEC 2019). IEEE.
[11]
Mikel Lujan, Anila Usman, Patrick Hardie, TL Freeman, and John R Gurd. 2005. Storage formats for sparse matrices in Java. In International Conference on Computational Science. Springer, 364--371.
[12]
José E Moreira, Samuel P Midkiff, and Manish Gupta. 2000. From flop to megaflops: Java for technical computing. ACM Transactions on Programming Languages and Systems (TOPLAS) 22, 2 (2000), 265--295.
[13]
Jose E Moreira, Samuel P Midkiff, and Manish Gupta. 2003. Supporting multidimensional arrays in Java. Concurrency and Computation: Practice and Experience 15, 3-5 (2003), 317--340.
[14]
Igor Pechtchanski and Vivek Sarkar. 2005. Immutability specification and its applications. Concurrency and Computation: Practice and Experience 17, 5-6 (2005), 639--662.
[15]
Ana Rodriguez, Cristian Mateos, and Alejandro Zunino. 2017. Improving scientific application execution on android mobile devices via code re-factorings. Software: Practice and Experience 47, 5 (2017), 763--796.
[16]
Thomas Stricker and T Cross. 1997. Global address space, non-uniform band-width: A memory system performance characterization of parallel systems. In Proceedings Third International Symposium on High-Performance Computer Architecture. IEEE, 168--179.
[17]
Kathy Yelick, Luigi Semenzato, Geoff Pike, Carleton Miyamoto, Ben Liblit, Arvind Krishnamurthy, Paul Hilfinger, Susan Graham, David Gay, Phil Colella, et al. 1998. Titanium: a high-performance Java dialect. Concurrency and Computation: Practice and Experience 10, 11-13 (1998), 825--836.
[18]
Zahari Zlatev, Phuong Vu, Jerzy Wasniewski, and Kjeld Schaumburg. 1988. Com-putations with symmetric, positive definite and band matrices on a parallel vector processor. Parallel Comput. 8, 1-3 (1988), 301--31
Index Terms
- Computational Experience with Diagonally Structured Linear Algebra in Java
Recommendations
Matrix Multiplication with Diagonals: Structured Sparse Matrices and Beyond
HP3C '23: Proceedings of the 2023 7th International Conference on High Performance Compilation, Computing and CommunicationsMatrix-matrix multiplication is a fundamental computation in a wide range of scientific problems. In this paper, we investigate algorithmic aspects of this important operation whereby the underlying arithmetic calculations are ordered in a way that is ...
Comments
Information & Contributors
Information
Published In

June 2020
191 pages
ISBN:9781450376914
DOI:10.1145/3407947
Copyright © 2020 ACM.
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]
In-Cooperation
- Xi'an Jiaotong-Liverpool University: Xi'an Jiaotong-Liverpool University
- City University of Hong Kong: City University of Hong Kong
- Guangdong University of Technology: Guangdong University of Technology
Publisher
Association for Computing Machinery
New York, NY, United States
Publication History
Published: 06 August 2020
Check for updates
Author Tags
Qualifiers
- Research-article
- Research
- Refereed limited
Conference
HP3C 2020
HP3C 2020: 2020 4th International Conference on High Performance Compilation, Computing and Communications
June 27 - 29, 2020
Guangzhou, China
Contributors
Other Metrics
Bibliometrics & Citations
Bibliometrics
Article Metrics
- 0Total Citations
- 40Total Downloads
- Downloads (Last 12 months)5
- Downloads (Last 6 weeks)2
Reflects downloads up to 16 Feb 2025
Other Metrics
Citations
View Options
Login options
Check if you have access through your login credentials or your institution to get full access on this article.
Sign in