Abstract
Power ISA™ Version 3.1 has introduced a new family of matrix math assist instructions, collectively known as the Matrix-Multiply Assist (MMA) facility. The instructions in this facility implement numerical linear algebra operations on small matrices and are meant to accelerate computation-intensive kernels. We advocate the use of compiler built-ins as the preferred way of leveraging these instructions. MMA built-ins are currently available in the GNU Compiler Collection and the LLVM-based IBM Open XL compilers. The built-ins are compatible across both compiler suites. We show that programming with these built-ins leads to efficient code that fully exploits the new facility.
B. Saleil and B. Schmidt—They were with IBM Systems in Canada and the United States of America, respectively, when this work was performed.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
IEEE Standard for Floating-Point Arithmetic. IEEE Std. 754–2019 (Revision of IEEE 754–2008), pp. 1–84 (2019)
Bhat, P., Moreira, J., Sadasivam, S.K.: Matrix-multiply assist (mma) best practices guide (2021). http://www.redbooks.ibm.com/abstracts/redp5612.html?Open
de Carvalho, J.P.L., Moreira, J.E., Amaral, J.N.: Compiling for the IBM matrix engine for enterprise workloads. IEEE Micro 42(5), 34–40 (2022). https://doi.org/10.1109/MM.2022.3176529
De Carvalho, J.P.L., et al.: KernelFaRer: replacing native-code idioms with high-performance library calls. ACM Trans. Archit. Code Optim. 18(3), 3459010 (2021). https://doi.org/10.1145/3459010
Goto, K., Van de Geijn, R.A.: Anatomy of high-performance matrix multiplication. ACM Trans. Math. Softw. 34(3), 1356053 (2008). https://doi.org/10.1145/1356052.1356053
IBM Corporation: Advance Toolchain for Linux on Power. https://www.ibm.com/support/pages/advance-toolchain-linux-power
Corporation, I.B.M–Power ISA Vers. 3, 1 (2020)
IBM Corporation: IBM Open XL C/C++ for AIX 17.1.1 User’s Guide (2022). https://www.ibm.com/docs/en/SSRZSMX_17.1.1/pdf/user.pdf
IBM Corporation: IBM Open XL Fortran for AIX 17.1.1 Language Reference (2022). https://www.ibm.com/docs/en/SSWEZ2_17.1.1/pdf/langref.pdf
Tagliavini, G., Mach, S., Rossi, D., Marongiu, A., Benin, L.: A transprecision floating-point platform for ultra-low power computing. In: 2018 Design, Automation Test in Europe Conference Exhibition (DATE), pp. 1051–1056 (2018)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Moreira, J.E. et al. (2023). Exploiting the New Power ISA™ Matrix Math Instructions Through Compiler Built-ins. In: Mendis, C., Rauchwerger, L. (eds) Languages and Compilers for Parallel Computing. LCPC 2022. Lecture Notes in Computer Science, vol 13829. Springer, Cham. https://doi.org/10.1007/978-3-031-31445-2_8
Download citation
DOI: https://doi.org/10.1007/978-3-031-31445-2_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-31444-5
Online ISBN: 978-3-031-31445-2
eBook Packages: Computer ScienceComputer Science (R0)