]> AND Private Git Repository - book_gpu.git/blobdiff - BookGPU/Chapters/chapter16/gpu.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
new
[book_gpu.git] / BookGPU / Chapters / chapter16 / gpu.tex
index f4f62f1611a2ddd1632077ad0daa8118d44d4b4d..4d4d6ef365353105617ca6b9bde55f864738f997 100644 (file)
@@ -5,7 +5,7 @@ In this section, we explain how to efficiently
 use matrix-free GMRES to solve
 the Newton update problems with implicit sensitivity calculation,
 i.e., the steps enclosed by the double dashed block
-in Fig.~\ref{fig:ef_flow}.
+in Figure~\ref{fig:ef_flow}.
 Then implementation issues of GPU acceleration
 will be discussed in detail. 
 Finally,  the Gear-2 integration is briefly introduced.
@@ -15,13 +15,13 @@ Finally,  the Gear-2 integration is briefly introduced.
 \underline{G}eneralized \underline{M}inimum \underline{Res}idual,
 or GMRES method is an iterative method for solving
 systems of linear equations ($A x=b$) with dense matrix $A$.
-The standard GMRES\index{GMRES} is given in Algorithm~\ref{alg:GMRES}.
-It constructs a Krylov subspace\index{Krylov subspace} with order $m$,
+The standard GMRES\index{iterative method!GMRES} is given in Algorithm~\ref{alg:GMRES}.
+It constructs a Krylov subspace\index{iterative method!Krylov subspace} with order $m$,
 \[ \mathcal{K}_m = \mathrm{span}( b, A^{} b, A^2 b,\ldots, A^{m-1} b ),\]
 where the approximate solution $x_m$ resides.
 In practice, an orthonormal basis $V_m$ that spans the
 subspace $\mathcal{K}_{m}$ can be generated by
-the Arnoldi iteration\index{Arnoldi iterations}.
+the Arnoldi iterations\index{iterative method!Arnoldi iterations}.
 The goal of GMRES is to search for an optimal coefficient $y$
 such that the linear combination $x_m = V_m y$ will minimize
 its residual $\| b-Ax_m \|_2$.
@@ -78,7 +78,7 @@ a preset tolerance~\cite{Golub:Book'96}.
 %% \end{algorithm}
 
 \begin{algorithm}
-\caption{Standard GMRES\index{GMRES} algorithm.} \label{alg:GMRES}
+\caption{standard GMRES\index{iterative method!GMRES} algorithm} \label{alg:GMRES}
   \KwIn{ $ A \in \mathbb{R}^{N \times N}$, $b \in \mathbb{R}^N$,
       and initial guess $x_0 \in \mathbb{R}^N$}
   \KwOut{ $x \in \mathbb{R}^N$: $\| b - A x\|_2 < tol$}
@@ -160,7 +160,7 @@ period in order to solve a Newton update.
 At each time step, SPICE\index{SPICE} has
 to linearize device models, stamp matrix elements
 into MNA (short for modified nodal analysis\index{modified nodal analysis, or MNA}) matrices,
-and solve circuit equations in its inner Newton iteration\index{Newton iteration}.
+and solve circuit equations in its inner Newton iteration\index{iterative method!Newton iteration}.
 When convergence is attained,
 circuit states are saved and then next time step begins.
 This is also the time when we store the needed matrices
@@ -225,7 +225,7 @@ Hence, in consideration of the serial nature of the trianularization,
 the small size of Hessenberg matrix,
 and the frequent inspection of values by host, it is
 preferable to allocate $\tilde{H}$ in CPU (host) memory.
-As shown in Fig.~\ref{fig:gmres}, the memory copy from device to host
+As shown in Figure~\ref{fig:gmres}, the memory copy from device to host
 is called each time when Arnoldi iteration generates a new vector
 and the orthogonalization produces the vector $h$.