[BACK]Return to OX-RFC-102.tex CVS log [TXT][DIR] Up to [local] / OpenXM / doc / OpenXM-specs

Diff for /OpenXM/doc/OpenXM-specs/OX-RFC-102.tex between version 1.4 and 1.5

version 1.4, 2003/12/10 08:50:28 version 1.5, 2003/12/11 06:40:10
Line 138  $0$ $B$r%9%?%C%/$KCV$/(B. $peer$ $B$O(B, $BAj<j$N
Line 138  $0$ $B$r%9%?%C%/$KCV$/(B. $peer$ $B$O(B, $BAj<j$N
   
 \end{enumerate}  \end{enumerate}
   
 \section{server $B4V$NDL?.(B}  \section{server $B4V$NDL?.(B, broadcast $B$*$h$S(B reduction}
   
 RFC-102 $B2<$G$N%W%m%0%i%_%s%0%9%?%$%k$O(B, $B4pK\E*$K$O(B RFC-100,101 $B$HJQ$o$i$J$$(B.  RFC-102 $B2<$G$N%W%m%0%i%_%s%0%9%?%$%k$O(B, $B4pK\E*$K$O(B RFC-100,101 $B$HJQ$o$i$J$$(B.
 $B$9$J$o$A(B, master $B$G$"$k%W%m%0%i%`$,<B9T$5$l(B, $BI,MW$K1~$8$F(B server $B$K(B  $B$9$J$o$A(B, master $B$G$"$k%W%m%0%i%`$,<B9T$5$l(B, $BI,MW$K1~$8$F(B server $B$K(B
Line 148  RFC-102 $B2<$G$N%W%m%0%i%_%s%0%9%?%$%k$O(B, $B4pK\E
Line 148  RFC-102 $B2<$G$N%W%m%0%i%_%s%0%9%?%$%k$O(B, $B4pK\E
 $BAw?.$9$k5!G=(B, $B$^$?!"(Bserver $B4VDL?.O)$+$i(B OX $B%G!<%?$r<u?.$9$k5!G=$r(B  $BAw?.$9$k5!G=(B, $B$^$?!"(Bserver $B4VDL?.O)$+$i(B OX $B%G!<%?$r<u?.$9$k5!G=$r(B
 $BDs6!$7$J$1$l$P$J$i$J$$(B.  $BDs6!$7$J$1$l$P$J$i$J$$(B.
   
 \subsection{broadcast $B$*$h$S(B reduction}  
   
 server $B4VDL?.$rMxMQ$9$k:G$bE57?E*$JNc$H$7$F(B broadcast $B$,$"$k(B.  server $B4VDL?.$rMxMQ$9$k:G$bE57?E*$JNc$H$7$F(B broadcast $B$,$"$k(B.
   
 \begin{enumerate}  \begin{enumerate}
Line 190  server $B$NAm?t$r(B $nserver$ $B$H$9$k$H$-(B, $B9
Line 188  server $B$NAm?t$r(B $nserver$ $B$H$9$k$H$-(B, $B9
 $B0J2<$K(B, {\tt ox\_asir} $B$K$*$1$k<BAu$r<($9(B.  $B0J2<$K(B, {\tt ox\_asir} $B$K$*$1$k<BAu$r<($9(B.
   
 \begin{verbatim}  \begin{verbatim}
 void ox_bcast_102(int root,Obj *rp)  void ox_bcast_102(int root)
 {  {
     Obj data;      Obj data;
     int r,mask,id,src,dst;      int r,mask,id,src,dst;
   
     data = *rp;  
     r = myrank_102-root;      r = myrank_102-root;
       if ( r == 0 )
           data = (Obj)asir_pop_one();
     if ( r < 0 ) r += nserver_102;      if ( r < 0 ) r += nserver_102;
     for ( mask = 1; mask < nserver_102; mask <<= 1 )      for ( mask = 1; mask < nserver_102; mask <<= 1 )
         if ( r&mask ) {          if ( r&mask ) {
Line 211  void ox_bcast_102(int root,Obj *rp)
Line 210  void ox_bcast_102(int root,Obj *rp)
             if ( dst >= nserver_102 ) dst -= nserver_102;              if ( dst >= nserver_102 ) dst -= nserver_102;
             ox_send_data_102(dst,data);              ox_send_data_102(dst,data);
         }          }
     *rp = data;      asir_push_one(data);
 }  }
 \end{verbatim}  \end{verbatim}
   
Line 233  server $B$NAm?t$r(B $nserver$ $B$H$9$k$H$-(B, $B9
Line 232  server $B$NAm?t$r(B $nserver$ $B$H$9$k$H$-(B, $B9
 $B%9%F%C%W8e$K$O<jB3$-$,=*N;$9$k(B.  $B%9%F%C%W8e$K$O<jB3$-$,=*N;$9$k(B.
   
 \begin{verbatim}  \begin{verbatim}
 void ox_reduce_102(int root,void (*func)(),Obj data,Obj *rp)  void ox_reduce_102(int root,void (*func)())
 {  {
     Obj data0,t;      Obj data,data0,t;
     int r,mask,id,src,dst;      int r,mask,id,src,dst;
   
     r = myrank_102-root;      r = myrank_102-root;
     if ( r < 0 ) r += nserver_102;      if ( r < 0 ) r += nserver_102;
       data = (Obj)asir_pop_one();
     for ( mask = 1; mask < nserver_102; mask <<= 1 )      for ( mask = 1; mask < nserver_102; mask <<= 1 )
         if ( r&mask ) {          if ( r&mask ) {
             dst = (r-mask)+root;              dst = (r-mask)+root;
Line 255  void ox_reduce_102(int root,void (*func)(),Obj data,Ob
Line 255  void ox_reduce_102(int root,void (*func)(),Obj data,Ob
                 (*func)(CO,data,data0,&t); data = t;                  (*func)(CO,data,data0,&t); data = t;
             }              }
         }          }
     if ( !r )      asir_push_one(r?0:data);
         *rp = data;  
     else  
         *rp = 0;  
 }  }
 \end{verbatim}  \end{verbatim}
   
   $BBP1~$9$k(B SM $B%3%^%s%I$O0J2<$NDL$j$G$"$k(B.
   
   \begin{enumerate}
   \item
   \begin{verbatim}
   SM_bcast_102
   \end{verbatim}
   
   Request:
   \begin{tabular}{|c|c|c|} \hline
   {\tt int32 OX\_COMMAND} & {\tt int32 SM\_bcast\_102} & {\tt int32 $root$} \\ \hline
   \end{tabular}
   
   Output: none.
   
   Stack after the request:
   \begin{tabular}{|c|c|}  \hline
   {\tt int32 OX\_DATA} & {\tt $CMObject$} \\ \hline
   \end{tabular}
   
   \item
   \begin{verbatim}
   SM_reduce_102
   \end{verbatim}
   
   Request:
   \begin{tabular}{|c|c|}  \hline
   {\tt int32 OX\_COMMAND} & {\tt int32 SM\_reduce\_102} \\ \hline
   {\tt int32 $root$} & {\tt int32 CMO\_String} {$opname$} \\ \hline
   \end{tabular}
   
   Stack after the request:
   \begin{tabular}{|c|c|}  \hline
   {\tt int32 OX\_DATA} & {\tt $CMObject$} \\ \hline
   \end{tabular}
   
   Output: none.
   \end{enumerate}
   
 \section{$B%(%i!<=hM}(B}  \section{$B%(%i!<=hM}(B}
   
 server $B$O(B RFC-100,101 $B$N(B $B%j%;%C%H%W%m%H%3%k$r<BAu$7$F$$$l$P(B,  server $B$O(B RFC-100,101 $B$N(B $B%j%;%C%H%W%m%H%3%k$r<BAu$7$F$$$l$P(B,
Line 346  $Server$ $B$KBP$7DL?.O)%j%;%C%HF0:n$r;X<($9$k(B. $B
Line 381  $Server$ $B$KBP$7DL?.O)%j%;%C%HF0:n$r;X<($9$k(B. $B
 $B<1JL;R(B $Rank$ $B$N(B server $B$+$i(B OX $B%G!<%?$r<u?.$9$k(B.  $B<1JL;R(B $Rank$ $B$N(B server $B$+$i(B OX $B%G!<%?$r<u?.$9$k(B.
 $B<1JL;R(B $Rank$ $B$N(B server $B$OBP1~$9$kAw?.$r3+;O$7$J$1$l$P$J$i$J$$(B.  $B<1JL;R(B $Rank$ $B$N(B server $B$OBP1~$9$kAw?.$r3+;O$7$J$1$l$P$J$i$J$$(B.
   
 \item {\tt ox\_bcast\_102($Rank$[,$Data$])}  \item {\tt ox\_bcast\_102($Root$[,$Data$])}
   
 $B<1JL;R(B $Rank$ $B$N(B server $B$r(B root $B$H$7$F(B, $B%0%k!<%WFb$G(B broadcast $B$9$k(B.  $B<1JL;R(B $Root$ $B$N(B server $B$r(B root $B$H$7$F(B, $B%0%k!<%WFb$G(B broadcast $B$9$k(B.
 $Root$ $B$N$_(B $Data$ $B$r;XDj$9$kI,MW$,$"$k(B. $B3F(B server $B$G$NLa$jCM$O(B  $Data$ $B$,;XDj$5$l$?>l9g(B, $B%9%?%C%/$K%W%C%7%e$5$l$k(B.
 $Data$ $B$G$"$k(B.  $B$r;XDj$9$kI,MW$,$"$k(B. $B<1JL;R$,(B $Root$ $B$KEy$7$$(B server $B$G(B, $B%9%?%C%/(B
   $B$+$i%G!<%?$,%]%C%W$5$l(B, $B$=$N%G!<%?$,(B, $B3F8F$S=P$7$NLa$jCM$H$J$k(B.
   
   \item {\tt ox\_reduce\_102($Root$,$Operation$[,$Data$])}
   
   $B%0%k!<%WFb$N3F(B server $B$N%9%?%C%/$+$i%]%C%W$7$?%G!<%?$KBP$7(B
   $Operation$ $B$G;XDj$5$l$kFs9`1i;;$r9T$$(B,
   $B7k2L$r(B $Root$ $B$G;XDj$5$l$k(B server $B$G$N4X?t8F$S=P$7$NLa$jCM$H$7$F(B
   $BJV$9(B.
   $Data$ $B$,;XDj$5$l$?>l9g(B, $B%9%?%C%/$K%W%C%7%e$7$F$+$i>e5-$NA`:n$r(B
   $B<B9T$9$k(B. $Root$ $B0J30$N(B server $B$G$NLa$jCM$O(B 0 $B$G$"$k(B.
   
 \end{itemize}  \end{itemize}
   
 \begin{thebibliography}{99}  \begin{thebibliography}{99}

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>