NUMA Optimizations for Algorithmic Skeletons
Autor: | Christian Fensch, Paul Metzger, Murray Cole |
---|---|
Rok vydání: | 2018 |
Předmět: |
Computer science
020204 information systems 0202 electrical engineering electronic engineering information engineering Programming paradigm 020207 software engineering Linux kernel 02 engineering and technology Algorithmic skeleton Thread (computing) Parallel computing Implementation Stencil Scheduling (computing) |
Zdroj: | Euro-Par 2018: Parallel Processing ISBN: 9783319969824 Euro-Par |
Popis: | To address NUMA performance anomalies, programmers often resort to application specific optimizations that are not transferable to other programs, or to generic optimizations that do not perform well in all cases. Skeleton based programming models allow NUMA optimizations to be abstracted on a pattern-by-pattern basis, freeing programmers from this complexity. As a case study, we investigate computations that can be implemented with stencil skeletons. We present an analysis of the behavior of a range of simple and complex stencil programs from the NAS and Rodinia benchmark suites, under state-of-the-art NUMA aware page placement (PP) schemes. We show that even though an application (or skeleton) may have implemented the correct, intuitive scheduling of data and work to threads, the resulting performance can be disrupted by an inappropriate PP scheme. In contrast, we show that a NUMA PP-aware stencil implementation scheme can achieve speed ups of up to 2x over a similar scheme which uses the Linux default PP, and that this works across a set of complex stencil applications. Furthermore, we show that a supposed PP performance optimization in the Linux kernel never improves and in some cases degrades stencil performance by up to 0.27x and should therefore be deactivated by stencil skeleton implementations. Finally, we show that further speed ups of up to 1.1x can be achieved by addressing a work imbalance issue caused by poor conventional understanding of NUMA PP. |
Databáze: | OpenAIRE |
Externí odkaz: |