<rss version="2.0">
<channel>
<title>Kitware Blog</title>
<link>http://www.kitware.com</link>
<description>Posts by Andy Bauer in Kitware Blog</description>
<copyright>Copyright Kitware Inc.</copyright>
<pubDate>Tue, 18 May 2010 11:18:09 -0400</pubDate>
<lastBuildDate>Tue, 18 May 2010 11:18:09 -0400</lastBuildDate>
<item>
<title>CoProcessing with ParaView</title>
<link>http://www.kitware.com/blog/home/post/28</link>
<description>&lt;p&gt;With the processing power of supercomputers still rapidly growing, simulation codes that can run on them generate more data at a faster rate.&amp;nbsp; While this growth enables more accurate and/or complex simulations to be run, it also makes examining the results a much more difficult task. A large part of this is due to the fact that while individual processor clock rate improvements are stagnating, more cores are being put in a processor and more processors are being strung together to form the latest supercomputers.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;As an example, the &lt;a href=&quot;http://top500.org/lists/2009/11&quot;&gt;top public supercomputer in the world&lt;/a&gt;, a Cray XT5-HE at Oak Ridge National Laboratory, has 224,162 cores.&amp;nbsp;Similarly, of the top 10 computers on this list the amount of cores range from 41,616 to 294,912 cores.&amp;nbsp;With this amount of computing power available it is unrealistic to hope to efficiently analyze the results on small clusters let alone a single desktop or laptop computer.&amp;nbsp;Just managing the output files from these machines can take a lengthy amount of time.&amp;nbsp;&lt;a href=&quot;http://www.paraview.org&quot;&gt;ParaView&amp;rsquo;s&lt;/a&gt;solution to this problem is to perform coprocessing.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Coprocessing, or in-situ processing, is the term used for computing visualization information during a simulation run.&amp;nbsp; Some of the reasons for this are:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Reduce the amount of file IO needed since only the desired results are saved instead of the whole simulation output&lt;/li&gt;&lt;li&gt;Use the same amount of computing power to analyze the output as the simulation is run on&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;The current work flow is to set up the coprocessing pipeline with a ParaView plugin. This is output as a Python script that is used during the simulation run. The simulation code must be instrumented to use ParaView&amp;rsquo;s coprocessing library.&amp;nbsp; Most of this work involves creating an adaptor that creates a ParaView data structure (e.g., vtkUnstructuredGrid, vtkImageData, vtkGraph, etc.) from the simulation code data structures.&amp;nbsp;Information on this process is available at &lt;a href=&quot;http://paraview.org/Wiki/CoProcessing&quot;&gt;http://paraview.org/Wiki/CoProcessing&lt;/a&gt;.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;We are currently testing the coprocessing library with a CFD simulation code called PHASTA (a 2009 Gordon Bell finalist). Dr. Kenneth Jansen, University of Colorado at Boulder,&amp;nbsp;is the lead developer of PHASTA, with significant contributions from&amp;nbsp;several other researchers.&amp;nbsp; At this point most of the testing has been done on an IBM BlueGene/L at Rensselaer Polytechnic Institute&amp;rsquo;s &lt;a href=&quot;http://www.rpi.edu/research/ccni&quot;&gt;Computational Center for Nanotechnology Innovations&lt;/a&gt;.&amp;nbsp;So far we have only tested between 256 and 16,384 MPI processes but plan on testing up to the full 32,768 cores available on the machine.&lt;/p&gt;</description>
<pubDate>Tue, 18 May 2010 11:18:09 -0400</pubDate>
</item>
</channel>
</rss>

