2018
DOI: 10.1007/978-3-319-96983-1_42
|View full text |Cite
|
Sign up to set email alerts
|

NUMA Optimizations for Algorithmic Skeletons

Abstract: 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… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1

Citation Types

0
4
0

Year Published

2019
2019
2021
2021

Publication Types

Select...
2
1
1

Relationship

1
3

Authors

Journals

citations
Cited by 4 publications
(4 citation statements)
references
References 23 publications
0
4
0
Order By: Relevance
“…Firstly, we exploit inter-job parallelism whereas the authors exploit parallelism within jobs. Secondly, we are the first to demonstrate that structural information encoded in skeletons can be used for performance improvements in the context of real-time systems as demonstrated before in other fields [16], [30], [31], [32]. Thirdly, we are the first to show that skeletons can be used for fine grained analytical application models.…”
Section: Related Workmentioning
confidence: 67%
See 1 more Smart Citation
“…Firstly, we exploit inter-job parallelism whereas the authors exploit parallelism within jobs. Secondly, we are the first to demonstrate that structural information encoded in skeletons can be used for performance improvements in the context of real-time systems as demonstrated before in other fields [16], [30], [31], [32]. Thirdly, we are the first to show that skeletons can be used for fine grained analytical application models.…”
Section: Related Workmentioning
confidence: 67%
“…Benefits of skeletons are more efficient implementations and increased programmer productivity. Structural information encoded in skeletons can be used for implementations with lower execution time, lower energy consumption or higher throughput [30], [31], [32]. Skeletons improve programmer productivity by off-loading the error prone task of writing and tuning low-level parallel code to library or compiler developers [9].…”
Section: A Skeletonsmentioning
confidence: 99%
“…However, these OSbased approaches can suffer from false page-sharing and fragmentation, as well as imperfect OS optimization as suggested by this paper and in algorithmic skeletons by Ref. [18].…”
Section: Related Workmentioning
confidence: 98%
“…Beyond first-touch, advanced page placements such as the numactl API [13] and automatic page migration [8] and balancing [9] are introduced in the Linux kernel. However, these OS-based approaches can suffer from false page-sharing and fragmentation, as well as imperfect OS optimization as suggested by this paper and in algorithmic skeletons by [18].…”
Section: Related Workmentioning
confidence: 99%