SuperMatrix swMATH ID: 20213 Software Authors: Ernie Chan, Field G. Van Zee, Paolo Bientinesi, Enrique S. Quintana-Orti, Gregorio Quintana-Orti, Robert van de Geijn Description: SuperMatrix: a multithreaded runtime scheduling system for algorithms-by-blocks. This paper describes SuperMatrix, a runtime system that parallelizes matrix operations for SMP and/or multi-core architectures. We use this system to demonstrate how code described at a high level of abstraction can achieve high performance on such architectures while completely hiding the parallelism from the library programmer. The key insight entails viewing matrices hierarchically, consisting of blocks that serve as units of data where operations over those blocks are treated as units of computation. The implementation transparently enqueues the required operations, internally tracking dependencies, and then executes the operations utilizing out-of-order execution techniques inspired by superscalar microarchitectures. This separation of concerns allows library developers to implement algorithms without concerning themselves with the parallelization aspect of the problem. Different heuristics for scheduling operations can be implemented in the runtime system independent of the code that enqueues the operations. Results gathered on a 16 CPU ccNUMA Itanium2 server demonstrate excellent performance. Homepage: http://dl.acm.org/citation.cfm?id=1345227 Related Software: ScaLAPACK; LAPACK; FLAME; PLASMA; MAGMA; BLAS; libflame; PLAPACK; MKL; StarPU; Algorithm 1022; randUTV; Algorithm 656; Algorithm 679; PETSc; FLASH; Matlab; PHiPAC; ESSL; CTF Cited in: 5 Publications all top 5 Cited by 17 Authors 2 Quintana-Ortí, Gregorio 2 van de Geijn, Robert Alexander 2 Van Zee, Field Garritt 1 Agullo, Emmanuel 1 Bouwmeester, Henricus 1 Chan, Ernie 1 Dongarra, Jack J. 1 Fernandes, Luiz Gustavo 1 Heavner, Nathan 1 Igual, Francisco D. 1 Kolberg, Mariana Luderitz 1 Kurzak, Jakub 1 Langou, Julien 1 Martinsson, Per-Gunnar 1 Milani, Cleber Roberto 1 Quintana-Ortí, Enrique S. 1 Rosenberg, Lee Cited in 1 Serial 3 ACM Transactions on Mathematical Software Cited in 2 Fields 5 Numerical analysis (65-XX) 1 Linear and multilinear algebra; matrix theory (15-XX) Citations by Year