From: Francis Russell Date: Mon, 18 Feb 2013 15:24:17 +0000 (+0000) Subject: Add slides on variability in ONTEP. X-Git-Url: https://git.unchartedbackwaters.co.uk/w/?a=commitdiff_plain;h=7c2086329ac9f10882de70573d0b1aed196befc7;p=francis%2Fpsl_presentation_20130225.git Add slides on variability in ONTEP. --- diff --git a/presentation.tex b/presentation.tex index ddd1481..17059bb 100644 --- a/presentation.tex +++ b/presentation.tex @@ -316,6 +316,103 @@ generate code subject to the various constraints. \end{minipage} } +} + +\frame{ + +\frametitle{Variability in ONETEP} + +At the ONETEP masterclass, I got assistance in transcribing the calculations +that form the bulk of ONETEP's computations. We worked out DSL descriptions for +the following ONETEP methods: + +\begin{itemize} + +\item {\tt density\_on\_dbl\_grid} +\item {\tt integrals\_grad} +\item {\tt integrals\_kinetic} +\item {\tt integrals\_locpot} +\item {\tt integrals\_pos} + +\end{itemize} + +Although ONETEP is sometimes required to compute other quantities, it is +apparent that the structure of ONETEP's calculations fall into a couple +of distinct patterns. + +} + +\frame{ + +\frametitle{Variability in ONETEP} + +Calculations in ONETEP typically computer either: + +\begin{enumerate} + +\item Matrices for quantities described using ``bra-ket'' notation. + +\item Dense representations of some quantity defined over the entire +simulation cell. + +\end{enumerate} + +Naturally, the ONETEP developers have spent a large amount of effort +optimising the implementation of these computation patterns. It is unclear +how any automated code generator might be able to improve upon these. + +} + +\frame{ + +\frametitle{Cross-component Optimisation} + + +\begin{itemize} + +\item ONETEP makes extensive use of Fast Fourier Transforms (FFTs) to convert +between position and momentum representation of fields. + +\item Each of the ONETEP calculations uses combinations of FFTs in different +ways. These include: + +\begin{itemize} + +\item Up-sampling fields. +\item Down-sampling fields. +\item Computing gradients operations in momentum space. + +\end{itemize} + +\item Can we generate synthesised code that exploits how these transforms are + composed in order to reduce computation? + +\end{itemize} +} + +\frame{ + +\frametitle{What might we be able to exploit?} + +\begin{itemize} + +\item Up-sampling involves performing an inverse-FFT on data-set padded with + zeros (new zero-amplitude frequency components). + +\item Down-sampling involves discarding parts of the frequency decomposition + returned by an FFT (the high-frequency components). + +\item Often, the region being transformed by an FFT is filled with mostly zeros. + +\end{itemize} + +\centering +%\resizebox{0.5\linewidth}{!}{\includegraphics{images/fftbox}} + +\footnote{Skylaris, Mostofi, Haynes, Pickard \& Payne, 2001, "Accurate kinetic +energy evaluation in electronic structure calculations with localized functions +on a real space grid".} + } \end{document}