Auto-tuned nested parallelism: A way to reduce the execution time of scientific software in NUMA systems |
| |
Authors: | Jesús Cámara Javier Cuenca Luis-Pedro García Domingo Giménez |
| |
Affiliation: | 1. Departamento de Informática y Sistemas, Facultad de Informática, Universidad de Murcia, 30100 Murcia, Spain;2. Departamento de Ingeniería y Tecnología de Computadores, Facultad de Informática, Universidad de Murcia, 30100 Murcia, Spain;3. Servicio de Apoyo a la Investigación Tecnológica, Universidad Politécnica de Cartagena, 30203 Cartagena, Spain |
| |
Abstract: | The most computationally demanding scientific problems are solved with large parallel systems. In some cases these systems are Non-Uniform Memory Access (NUMA) multiprocessors made up of a large number of cores which share a hierarchically organized memory. The main basic component of these scientific codes is often matrix multiplication, and the efficient development of other linear algebra packages is directly based on the matrix multiplication routine implemented in the BLAS library. BLAS library is used in the form of packages implemented by the vendors or free implementations. The latest versions of this library are multithreaded and can be used efficiently in multicore systems, but when they are used inside parallel codes, the two parallelism levels can interfere and produce a degradation of the performance. In this work, an auto-tuning method is proposed to select automatically the optimum number of threads to use at each parallel level when multithreaded linear algebra routines are called from OpenMP parallel codes. The method is based on a simple but effective theoretical model of the execution time of the two-level routines. The methodology is applied to a two-level matrix–matrix multiplication and to different matrix factorizations (LU, QR and Cholesky) by blocks. Traditional schemes which directly use the multithreaded routine of BLAS, dgemm, are compared with schemes combining the multithreaded dgemm with OpenMP. |
| |
Keywords: | Auto-tuning Linear algebra Performance modeling NUMA |
本文献已被 ScienceDirect 等数据库收录! |
|