Optimised three-dimensional Fourier interpolation: An analysis of techniques and application to a linear-scaling density functional theory code
File(s)Russell2015Optimised.pdf (1.26 MB)
Published version
Author(s)
Kelly, PHJ
Russell, FP
Wilkinson, KA
Skylaris, CK
Type
Journal Article
Abstract
The Fourier interpolation of 3D data-sets is a performance critical operation in many fields, including
certain forms of image processing and density functional theory (DFT) quantum chemistry codes based
on plane wave basis sets, to which this paper is targeted. In this paper we describe three different
algorithms for performing this operation built from standard discrete Fourier transform operations,
and derive theoretical operation counts. The algorithms compared consist of the most straightforward
implementation and two that exploit techniques such as phase-shifts and knowledge of zero padding
to reduce computational cost. Through a library implementation (tintl) we explore the performance
characteristics of these algorithms and the performance impact of different implementation choices on
actual hardware. We present comparisons within the linear-scaling DFT code ONETEP where we replace
the existing interpolation implementation with our library implementation configured to choose the most
efficient algorithm. Within the ONETEP Fourier interpolation stages, we demonstrate speed-ups of over
1.55×.
certain forms of image processing and density functional theory (DFT) quantum chemistry codes based
on plane wave basis sets, to which this paper is targeted. In this paper we describe three different
algorithms for performing this operation built from standard discrete Fourier transform operations,
and derive theoretical operation counts. The algorithms compared consist of the most straightforward
implementation and two that exploit techniques such as phase-shifts and knowledge of zero padding
to reduce computational cost. Through a library implementation (tintl) we explore the performance
characteristics of these algorithms and the performance impact of different implementation choices on
actual hardware. We present comparisons within the linear-scaling DFT code ONETEP where we replace
the existing interpolation implementation with our library implementation configured to choose the most
efficient algorithm. Within the ONETEP Fourier interpolation stages, we demonstrate speed-ups of over
1.55×.
Date Issued
2014-10-07
Date Acceptance
2014-09-29
Citation
Computer Physics Communications, 2014, pp.8-19
ISSN
1879-2944
Publisher
Elsevier
Start Page
8
End Page
19
Journal / Book Title
Computer Physics Communications
Volume
187
Copyright Statement
Copyright © 2014 The Authors. Published by Elsevier B.V. This is an open access article under the CC BY license (http://creativecommons.org/licenses/by/3.0/)
Description
24.03.15 KB. OK to add published version to spiral, OA paper
Identifier
S001046551400335X
Publication Status
Published