sorry, forget to send to maillist<br><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Jie Chen</b> <span dir="ltr">&lt;<a href="mailto:chenjie.hust@gmail.com">chenjie.hust@gmail.com</a>&gt;</span><br>
Date: Tue, Feb 14, 2012 at 1:04 PM<br>Subject: Re: [Paraview-developers] How does ParaView schedule render tasks among all the processes?<br>To: &quot;Biddiscombe, John A.&quot; &lt;<a href="mailto:biddisco@cscs.ch">biddisco@cscs.ch</a>&gt;<br>
<br><br>John,<div><br></div><div>Thanks for your answer. It&#39;s much clear to understand how ParaView splits a file for parallel processing. However, I still have questions about merging the split pieces into a final result: </div>

<div><br></div><div>1)How does ParaView merge the split pieces together after the pieces have been processed by their pipelines? </div><div><br></div><div>2)Does the mergence occur in the server-side or the client-side?</div>

<div><br></div><div>3)Which function call would trigger this mergence? Just give me some clue, I can find myself.</div><div><br></div><div>Thanks.</div><span class="HOEnZb"><font color="#888888"><div><br></div></font></span><div>
<span class="HOEnZb"><font color="#888888">Jie</font></span><div><div class="h5"><br><div><br><div class="gmail_quote">On Tue, Feb 14, 2012 at 11:43 AM, Biddiscombe, John A. <span dir="ltr">&lt;<a href="mailto:biddisco@cscs.ch" target="_blank">biddisco@cscs.ch</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-GB" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Jie<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p><u></u><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><span>1)<span style="font:7.0pt &quot;Times New Roman&quot;">     
</span></span></span><u></u><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">each reader/source must split pieces itself. If I am a vtkSTUFFreader, when I execute, I am given a piece number or an extent (depending on datatype),
 based on this information, I read the part of the data that I was told to (the reader has to work out how to get the piece it was asked for)<u></u><u></u></span></p>
<p><u></u><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><span>2)<span style="font:7.0pt &quot;Times New Roman&quot;">     
</span></span></span><u></u><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">The number of pieces is currently always the same as the number of MPI ranks (but it doesn’t have to be). A reader can set MAX_PIECES to -1 initially
 before the description in 1) above happens, which tells the pipeline that it is allowed to split the data into as many pieces as it wants. Be careful that the pipeline also uses pieces to represent streaming data pieces, which is confusing, I am not considering
 this case here. data paralle pieces are not quite the same as streaming pieces. we’re talking data parallel now.<u></u><u></u></span></p>
<p><u></u><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><span>3)<span style="font:7.0pt &quot;Times New Roman&quot;">     
</span></span></span><u></u><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">assignment of piece number is essentially MPI rank<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hope this helps<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">JB<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> <a href="mailto:paraview-developers-bounces@paraview.org" target="_blank">paraview-developers-bounces@paraview.org</a> [mailto:<a href="mailto:paraview-developers-bounces@paraview.org" target="_blank">paraview-developers-bounces@paraview.org</a>]
<b>On Behalf Of </b>Jie Chen<br>
<b>Sent:</b> 14 February 2012 17:38<br>
<b>To:</b> <a href="mailto:paraview-developers@paraview.org" target="_blank">paraview-developers@paraview.org</a><br>
<b>Subject:</b> [Paraview-developers] How does ParaView schedule render tasks among all the processes?<u></u><u></u></span></p><div><div>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><br clear="all">
<u></u><u></u></p>
<div>
<p class="MsoNormal">Hi all,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">I have installed the ParaView-3.12.0 on a cluster with MPI enabled. And I use it in a client-server mode.(pvserver is running on the cluster)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">I&#39;m curious about how ParaView process a task parallelly. The following is my questions:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">(1) How does ParaView split a file into multi-pieces for parallel processing, and how to combine the results together?  Is there any special process which handles these splitting and combining works?<u></u><u></u></p>


</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">(2) What policy does ParaView use when it computes the number of pieces? <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">(3)What policy does ParaView use when it assign the pieces to all the processes?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">I&#39;m just beginning to look into the ParaView source code. Hope somebody can give me some clue.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Thanks<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Jie<u></u><u></u></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><u></u> </p></div></div></div></div></blockquote></div><br>
</div></div></div></div>
</div><br><br clear="all"><div><br></div>-- <br><font color="#999999"><span>Jie Chen</span><br><span>Visiting Scholar</span><br><span>Department of EECS, University of Central Florida,</span></font><div><font face="arial, sans-serif" color="#999999"><span style="font-size:14px">4000 Central Florida Blvd, Bld. 116 Rm. 231</span></font><div>
<span><font color="#999999">Orlando, FL 32816, USA</font></span></div><div><font face="arial, sans-serif" color="#999999"><span style="font-size:14px">Phone: 407-408-8917</span></font></div></div><br>