this is for holding javascript data
Xavier Andrade edited Parallelization.tex
over 9 years ago
Commit id: 93b29eb85c477650a7f4321a5650529a00eaef4c
deletions | additions
diff --git a/Parallelization.tex b/Parallelization.tex
index c4cdf94..4f0766a 100644
--- a/Parallelization.tex
+++ b/Parallelization.tex
...
For example, we have found that the traditional picture of an state as the basic object is not adequate for optimal performance, as it does not expose enough data parallelism~\cite{Andrade_2012_gpus}. In Octopus we use a higher level interface where the basic object is a group of several states.
The developers are exposed to a linear array that contains the values of the field for each grid point. Additional data structures provide information about each grid point and the structure of the grid. This level of abstraction makes it simple for developers to write code that works for different problem dimensionality, and different kinds and shapes of grids.
In terms of performance, this approach allows us to
use sophisticated methods to control how the grid points are stored in
memory.
\ref{fig:gridmapping} memory with the objective of using processor caches more efficiently. We have found that by using space filling curves~\cite{Peano_1890}, as shown in Fig.~\ref{fig:gridmaps}, in particular the Hilbert curve\cite{Hilbert_1891,Skilling2004}.