In:
The International Journal of High Performance Computing Applications, SAGE Publications, Vol. 27, No. 2 ( 2013-05), p. 193-209
Abstract:
Several emerging petascale architectures use energy-efficient processors with vectorized computational units and in-order thread processing. On these architectures the sustained performance of streaming numerical kernels, ubiquitous in the solution of partial differential equations, represents a challenge despite the regularity of memory access. Sophisticated optimization techniques are required to fully utilize the CPU. We propose a new method for constructing streaming numerical kernels using a high-level assembly synthesis and optimization framework. We describe an implementation of this method in Python targeting the IBM ® Blue Gene ® /P supercomputer’s PowerPC ® 450 core. This paper details the high-level design, construction, simulation, verification, and analysis of these kernels utilizing a subset of the CPU’s instruction set. We demonstrate the effectiveness of our approach by implementing several three-dimensional stencil kernels over a variety of cached memory scenarios and analyzing the mechanically scheduled variants, including a 27-point stencil achieving a 1.7[Formula: see text] speedup over the best previously published results.
Type of Medium:
Online Resource
ISSN:
1094-3420
,
1741-2846
DOI:
10.1177/1094342012444795
Language:
English
Publisher:
SAGE Publications
Publication Date:
2013
detail.hit.zdb_id:
2017480-9