\relax \@writefile{toc}{\author{Lilia Ziane Khodja}{}} \@writefile{toc}{\author{Ming Chau}{}} \@writefile{toc}{\author{Rapha\IeC {\"e}l Couturier}{}} \@writefile{toc}{\author{Pierre Spit\IeC {\'e}ri}{}} \@writefile{toc}{\author{Jacques Bahi}{}} \@writefile{loa}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {chapter}{\numberline {12}Solving sparse nonlinear systems of obstacle problems on GPU clusters}{279}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \newlabel{ch13}{{12}{279}} \@writefile{toc}{\contentsline {section}{\numberline {12.1}Introduction}{279}} \newlabel{ch13:sec:01}{{12.1}{279}} \@writefile{toc}{\contentsline {section}{\numberline {12.2}Obstacle problems}{280}} \newlabel{ch13:sec:02}{{12.2}{280}} \@writefile{toc}{\contentsline {subsection}{\numberline {12.2.1}Mathematical model}{280}} \newlabel{ch13:sec:02.01}{{12.2.1}{280}} \newlabel{ch13:eq:01}{{12.1}{280}} \newlabel{ch13:eq:02}{{12.2}{280}} \@writefile{toc}{\contentsline {subsection}{\numberline {12.2.2}Discretization}{281}} \newlabel{ch13:sec:02.02}{{12.2.2}{281}} \newlabel{ch13:eq:03}{{12.3}{281}} \newlabel{ch13:eq:04}{{12.4}{281}} \newlabel{ch13:eq:05}{{12.5}{281}} \@writefile{toc}{\contentsline {section}{\numberline {12.3}Parallel iterative method}{282}} \newlabel{ch13:sec:03}{{12.3}{282}} \newlabel{ch13:eq:06}{{12.6}{282}} \newlabel{ch13:eq:07}{{12.7}{282}} \newlabel{ch13:eq:08}{{12.8}{282}} \newlabel{ch13:eq:09}{{12.9}{282}} \newlabel{ch13:eq:10}{{12.10}{283}} \newlabel{ch13:eq:11}{{12.11}{283}} \newlabel{ch13:eq:12}{{12.12}{283}} \newlabel{ch13:eq:13}{{12.13}{284}} \newlabel{ch13:eq:14}{{12.14}{284}} \newlabel{ch13:eq:15}{{12.15}{284}} \newlabel{ch13:eq:16}{{12.16}{284}} \@writefile{toc}{\contentsline {section}{\numberline {12.4}Parallel implementation on a GPU cluster}{285}} \newlabel{ch13:sec:04}{{12.4}{285}} \@writefile{lof}{\contentsline {figure}{\numberline {12.1}{\ignorespaces Data partitioning of a problem to be solved among $S=3\times 4$ computing nodes.\relax }}{285}} \newlabel{ch13:fig:01}{{12.1}{285}} \@writefile{loa}{\contentsline {algocf}{\numberline {11}{\ignorespaces Parallel solving of the obstacle problem on a GPU cluster\relax }}{286}} \newlabel{ch13:alg:01}{{11}{286}} \newlabel{ch13:eq:18}{{12.17}{286}} \@writefile{loa}{\contentsline {algocf}{\numberline {12}{\ignorespaces Parallel iterative solving of the nonlinear systems on a GPU cluster ($Solve()$ function)\relax }}{287}} \newlabel{ch13:alg:02}{{12}{287}} \@writefile{lof}{\contentsline {figure}{\numberline {12.2}{\ignorespaces Decomposition of a sub-problem in a GPU into $nz$ slices.\relax }}{288}} \newlabel{ch13:fig:02}{{12.2}{288}} \newlabel{ch13:list:01}{{12.1}{288}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {12.1}Skeleton codes of a GPU kernel and a CPU function}{288}} \newlabel{ch13:eq:17}{{12.18}{289}} \@writefile{lof}{\contentsline {figure}{\numberline {12.3}{\ignorespaces Matrix constant coefficients in a three-dimensional domain.\relax }}{290}} \newlabel{ch13:fig:03}{{12.3}{290}} \newlabel{ch13:list:02}{{12.2}{290}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {12.2}GPU kernels of the projected Richardson method}{290}} \@writefile{lof}{\contentsline {figure}{\numberline {12.4}{\ignorespaces Computation of a vector element with the projected Richardson method.\relax }}{291}} \newlabel{ch13:fig:04}{{12.4}{291}} \newlabel{ch13:list:03}{{12.3}{292}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {12.3}Memory access to the cache texture memory}{292}} \@writefile{toc}{\contentsline {section}{\numberline {12.5}Experimental tests on a GPU cluster}{293}} \newlabel{ch13:sec:05}{{12.5}{293}} \@writefile{lof}{\contentsline {figure}{\numberline {12.5}{\ignorespaces GPU cluster of tests composed of 12 computing nodes (six machines, each with two GPUs.\relax }}{294}} \newlabel{ch13:fig:05}{{12.5}{294}} \@writefile{lot}{\contentsline {table}{\numberline {12.1}{\ignorespaces Execution times in seconds of the parallel projected Richardson method implemented on a cluster of 24 CPU cores.\relax }}{295}} \newlabel{ch13:tab:01}{{12.1}{295}} \@writefile{lot}{\contentsline {table}{\numberline {12.2}{\ignorespaces Execution times in seconds of the parallel projected Richardson method implemented on a cluster of 12 GPUs.\relax }}{295}} \newlabel{ch13:tab:02}{{12.2}{295}} \@writefile{toc}{\contentsline {section}{\numberline {12.6}Red-Black ordering technique}{296}} \newlabel{ch13:sec:06}{{12.6}{296}} \newlabel{ch13:fig:06.01}{{12.6(a)}{297}} \newlabel{sub@ch13:fig:06.01}{{(a)}{297}} \newlabel{ch13:fig:06.02}{{12.6(b)}{297}} \newlabel{sub@ch13:fig:06.02}{{(b)}{297}} \@writefile{lof}{\contentsline {figure}{\numberline {12.6}{\ignorespaces Red-Black ordering for computing the iterate vector elements in a three-dimensional space.\relax }}{297}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {Red-Black ordering on x, y and z axises}}}{297}} \@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Red-Black ordering on y axis}}}{297}} \newlabel{ch13:list:04}{{12.4}{297}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {12.4}GPU kernels of the projected Richardson method using the red-black technique}{297}} \@writefile{lot}{\contentsline {table}{\numberline {12.3}{\ignorespaces Execution times in seconds of the parallel projected Richardson method using read-black ordering technique implemented on a cluster of 12 GPUs.\relax }}{299}} \newlabel{ch13:tab:03}{{12.3}{299}} \@writefile{lof}{\contentsline {figure}{\numberline {12.7}{\ignorespaces Weak scaling of both synchronous and asynchronous algorithms of the projected Richardson method using red-black ordering technique.\relax }}{300}} \newlabel{ch13:fig:07}{{12.7}{300}} \@writefile{toc}{\contentsline {section}{\numberline {12.7}Conclusion}{300}} \newlabel{ch13:sec:07}{{12.7}{300}} \@writefile{toc}{\contentsline {section}{Bibliography}{301}} \@setckpt{Chapters/chapter13/ch13}{ \setcounter{page}{303} \setcounter{equation}{18} \setcounter{enumi}{4} \setcounter{enumii}{0} \setcounter{enumiii}{0} \setcounter{enumiv}{15} \setcounter{footnote}{0} \setcounter{mpfootnote}{0} \setcounter{part}{1} \setcounter{chapter}{12} \setcounter{section}{7} \setcounter{subsection}{0} \setcounter{subsubsection}{0} \setcounter{paragraph}{0} \setcounter{subparagraph}{0} \setcounter{figure}{7} \setcounter{table}{3} \setcounter{numauthors}{0} \setcounter{parentequation}{46} \setcounter{subfigure}{0} \setcounter{lofdepth}{1} \setcounter{subtable}{0} \setcounter{lotdepth}{1} \setcounter{lstnumber}{55} \setcounter{ContinuedFloat}{0} \setcounter{AlgoLine}{12} \setcounter{algocfline}{12} \setcounter{algocfproc}{12} \setcounter{algocf}{12} \setcounter{proposition}{1} \setcounter{theorem}{0} \setcounter{exercise}{0} \setcounter{example}{0} \setcounter{definition}{0} \setcounter{proof}{1} \setcounter{lstlisting}{4} }