]> AND Private Git Repository - kahina_paper2.git/commitdiff
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
algo 1
authorzianekhodja <zianekhodja.lilia@gmail.com>
Sun, 17 Jan 2016 15:42:58 +0000 (16:42 +0100)
committerzianekhodja <zianekhodja.lilia@gmail.com>
Sun, 17 Jan 2016 15:42:58 +0000 (16:42 +0100)
paper.tex

index 2ee181ae60f1fe2012fbe30549aa396a4c097521..b579c69cf1e7bc134798b74fb1a2cbe0e38cb963 100644 (file)
--- a/paper.tex
+++ b/paper.tex
@@ -1,17 +1,8 @@
-
-
-
 \documentclass[conference]{IEEEtran}
-
 \usepackage[ruled,vlined]{algorithm2e}
-
-
 \hyphenation{op-tical net-works semi-conduc-tor}
-
 \bibliographystyle{IEEEtran}
 
-
-
 \usepackage{amsfonts}
 \usepackage[utf8]{inputenc}
 \usepackage[T1]{fontenc}
@@ -123,7 +114,7 @@ This latter approach is more used on clusters to solve very complex problems tha
 \LZK{Pas d'autres contributions possibles? J'ai supprimé les deux premiers points proposés précédemment.}
 
 The paper is organized as follows. In Section~\ref{sec2} we present three different parallel programming models OpenMP, MPI and CUDA. In Section~\ref{sec3} we present the implementation of the Ehrlich-Aberth algorithm on a single GPU. In Section~\ref{sec4} we present the parallel implementations of the Ehrlich-Aberth algorithm on multiple GPUs using the OpenMP and MPI approaches. In section~\ref{sec5} we present our experiments and discuss them. Finally, Section~\ref{sec6} concludes this paper and gives some hints for future research directions in this topic. 
-%\LZK{A revoir toute cette organization: je viens de la revoir}
+
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -247,20 +238,15 @@ implementation of Ehrlich-Aberth method.
 Initialize the polynomial $P$ and its derivative $P'$\;
 Set the initial values of vector $Z$\;
 Copy $P$, $P'$ and $Z$ from CPU to GPU\;
-\While{\emph{not convergence}}{
+\While{$\Delta Z_{max} > \epsilon$}{
   $Z^{prev}$ = KernelSave($Z,n$)\;
   $Z$ = KernelUpdate($P,P',Z,n$)\;
   $\Delta Z$ = KernelComputeError($Z,Z^{prev},n$)\;
   $\Delta Z_{max}$ = CudaMaxFunction($\Delta Z,n$)\;
-  TestConvergence($\Delta Z_{max},\epsilon$)\;
 }
 Copy $Z$ from GPU to CPU\;
 \label{alg1-cuda}
-\LZK{J'ai modifié l'algo. Sinon, est ce qu'on doit mettre en paramètre
-  $Z^{prev}$ ou $Z$ tout court (dans le cas où on exploite
-  l'asynchronisme des threads cuda!) pour le Kernel\_Update? }
-\RC{Le $Z_{prev}$ sert à calculer l'erreur donc j'ai remis Z. La ligne
-avec TestConvergence ca fait une ligne de plus.}
+\RC{La ligne avec TestConvergence ca fait une ligne de plus.\LZK{Oui j'ai hésité à l'ajouter. On peut faire le test dans la condition de while mais quelle est la valeur initiale de $\Delta Z_{max}$?! Ou bien on s'en fiche?}}
 \end{algorithm}