aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2003-01-17 11:57:41 +0000
committerjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2003-01-17 11:57:41 +0000
commit64e9063e97a60d26f672166b61e390e9b8eb3680 (patch)
treec25d1ed0fcd09b9fce2e6b2ea025fd7dce6538ea /doc
parentfa83ade88caec7419e665eaab96622790b527bd7 (diff)
change so that only processor #0 writes data files
(other processors still do all the computations, but writes are supressed) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@922 f88db872-0e4f-0410-b76b-b9085cfa78c5
Diffstat (limited to 'doc')
-rw-r--r--doc/documentation.tex47
1 files changed, 36 insertions, 11 deletions
diff --git a/doc/documentation.tex b/doc/documentation.tex
index d6d8a20..e03538e 100644
--- a/doc/documentation.tex
+++ b/doc/documentation.tex
@@ -270,10 +270,20 @@ here's what works and what doesn't:
are only provided by the thorns \thorn{PUGHInterp} and
\thorn{LocalInterp} respectively, so you need to have
these thorns compiled into your configuration and activated.
-\item Even though it uses the new global interpolation API,
- at present \thorn{AHFinderDirect} doesn't work properly
- for multi-processor Cactus runs.
- I hope to properly support multi-processor operation soon.
+\item \thorn{AHFinderDirect} works in multi-processor Cactus runs,
+ but at present it's quite inefficient for large numbers of
+ processors. (It exhibits ``anti-scaling'' with the number
+ of processors: the run time gets {\em larger\/} as the number
+ of processors increases.)%%%
+\footnote{%%%
+ The run time on $N$ processors should be roughly
+ $\alpha + \beta N$ for some (positive!) constants
+ $\alpha$ and $\beta$. I estimate the value of $N$
+ for which the run time is twice the single-processor
+ value, to be on the order of 10 to 20 for the current
+ implementation.%%%
+ }%%%
+{} I hope to fix this inefficiency soon.
\end{itemize}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -885,12 +895,26 @@ Computationally, this algorithm has 3 main parts:
\begin{itemize}
\item Computation of the ``horizon function'' $H(h)$ given a trial
surface defined by a trial horizon shape function $h$. This is
- done by interpolating the Cactus geometry fields $g_\ij$ and
- $K_\ij$ (and optionally $\psi$) from the 3-D $xyz$ grid
- to the (2-D set of) trial-horizon-surface grid points (also
- computing $\partial_k g_\ij$ in the interpolation process),
- then doing all further computations with angular grid functions
- defined solely on $S^2$ (\ie{} at the horizon-surface grid points).
+ done by interpolating%%%
+\footnote{%%%
+ It's this interpolation that causes the multiprocessor
+ slowdown with the present implementation -- each
+ processor asks for the same set of interpolation
+ points, so for $N$ processors the interpolator
+ has to do $N$ times as much work. Unfortunately,
+ the (global) interpolator must be called synchronously
+ on all processors, so fixing this inefficiency
+ requires a nontrivial interprocessor synchronization
+ at each iteration of the Newton iteration (to ensure
+ that all processors make the same number of Newton
+ iterations).%%%
+ }%%%
+{} the Cactus geometry fields $g_\ij$ and $K_\ij$
+ (and optionally $\psi$) from the 3-D $xyz$ grid to the
+ (2-D set of) trial-horizon-surface grid points (also computing
+ $\partial_k g_\ij$ in the interpolation process), then doing
+ all further computations with angular grid functions defined
+ solely on $S^2$ (\ie{} at the horizon-surface grid points).
\item Computation of the Jacobian matrix $\Jac[H(h)]$ of $H(h)$. This
thorn incorporates the \defn{symbolic differentiation} technique
described in
@@ -998,7 +1022,8 @@ interested in some other related thorns:
\section{Acknowledgments}
I thank Ian Hawke, Peter Diener, and Erik Schnetter for many valuable
-conversations, and the whole Cactus crew for a great infrastructure!
+conversations, to Thomas Radke for his work on the new interpolators,
+and the whole Cactus crew for a great infrastructure!
I thank the Alexander von Humboldt foundation and the AEI visitors'
and postdoctoral fellowships programs for financial support.