Software CRESTA https://www.cresta-project.eu/cresta-co-design/software/feed/atom.html 2019-07-18T11:35:12+00:00 CRESTA lorna@epcc.ed.ac.uk Joomla! - Open Source Content Management The CRESTA Software Collection 2013-10-29T13:54:11+00:00 2013-10-29T13:54:11+00:00 https://www.cresta-project.eu/software/software-2.html Doug Rocks-Macqueen doug.rocks-macqueen@ed.ac.uk <p style="text-align: justify;"><span style="font-family: Arial, sans-serif;">The CRESTA software collection contains a collection of software designed and enhanced to exploit future exascale platforms and to support applications on exascale platforms. The software selected and the chosen developments have been designed with the co-design applications as drivers. Many of the research activities have been integrated into software components within the collection.</span> </p> <div id="holder"> <div id="CA"> <p><strong>Co-design Applications</strong> </p> <ul> <li id="Engimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=23:engineering&amp;catid=10:applications&amp;Itemid=119">Engineering</a> </li> <li id="FEimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=22:fusion-energy&amp;catid=10:applications&amp;Itemid=119">Fusion Energy</a> </li> <li id="Bioimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=19:biomolecular-systems&amp;catid=10:applications&amp;Itemid=119">Biomolecular systems</a> </li> <li id="VPAimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=21:the-virtual-physiological-human&amp;catid=10:applications&amp;Itemid=119">The Virtual Physiological Human</a> </li> <li id="GNWPimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=20:global-numerical-weather-prediction&amp;catid=10:applications&amp;Itemid=119">Global Numerical Weather Prediction</a> </li> <div id="CAimage">&nbsp;</div> <div id="infoApp"> <p id="Engineering"><strong>Engineering:</strong> Computational Fluid dynamics (CFD) is widely used in the automotive, aeronautical and heavy engineering industries, as well as being a staple of the academic community. Click to Learn More.</p> <p id="FusionEnergy"><strong>Fusion Energy:</strong> The decision to construct the first power-plant scale fusion reactor, ITER, in Cadarache, France has dramatically increased the need to solve the remaining technical challenges of the reactor design. Click to Learn More.</p> <p id="GNWP"><strong>Global Numerical Weather Prediction:</strong> ECMWF leads the world in global Numerical Weather Prediction, the advanced computer observation-analysis modelling technique used to predict the weather. Click to Learn More.</p> <p id="VPH"><strong>The Virtual Physiological Human:</strong> The Virtual Physiological Human initiative is a collection of European projects which undertake research in biomedical modelling and simulation of the human body. Click to Learn More.</p> <p id="Biosystems"><strong>Biomolecular systems:</strong> Molecular Dynamics simulation is one the most rapidly growing methods for modelling in general, and for life science in particular. Click to Learn More.</p> </div> </ul> </div> <div id="sat4" class="systemware"> <p id="sat4p"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=category&amp;id=9&amp;Itemid=101">CRESTA </a><br /><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=category&amp;id=9&amp;Itemid=101">Co-design</a> </p> </div> <div id="sat0" class="systemware"> <p id="sat0p">Algorithms <br /> and Libraries</p><img id="arrow0" class="arrow" src="https://www.cresta-project.eu//images/arrow_right_down.png" alt="" /> <div id="CEL" class="P1 software"> <p><a href="https://www.cresta-project.eu/#AandL">CEL FFT/LS</a> </p><img class="arrowsmall ad" src="https://www.cresta-project.eu//images/arrow_down.png" alt="" /> </div> <div id="HPR" class="P2 software"> <p><a href="https://www.cresta-project.eu/#AandL">HP Reduction</a> </p><img class="arrowsmall ar" src="https://www.cresta-project.eu//images/arrow_right.png" alt="" /> </div> <div class="P3 software"> <p><a href="https://www.cresta-project.eu/#AandL">Collectives MB</a> </p><img class="arrowsmall al" src="https://www.cresta-project.eu//images/arrow_left.png" alt="" /> </div> <div class="P4 software"> <p><a href="https://www.cresta-project.eu/#AandL">Collectives Lib</a> </p><img class="arrowsmall au" src="https://www.cresta-project.eu//images/arrow_up.png" alt="" /> </div> </div> <div id="sat1" class="systemware"> <p id="sat1p">Development <br />Environment</p><img id="arrow1" class="arrow" src="https://www.cresta-project.eu//images/arrow_left_down.png" alt="" /> <div class="P61 software"> <p><a href="https://www.cresta-project.eu/#Vampir">Vampir</a> </p><img class="arrowsmall ar" src="https://www.cresta-project.eu//images/arrow_right.png" alt="" /> </div> <div class="P62 software"> <p><a href="https://www.cresta-project.eu/#allineaDDT">Allinea's DDT</a> </p><img class="arrowsmall al" src="https://www.cresta-project.eu//images/arrow_left.png" alt="" /> </div> <div class="P63 software"><img class="arrowsmall al" src="https://www.cresta-project.eu//images/arrow_left.png" alt="" /> <p><a href="https://www.cresta-project.eu/#MUST">MUST</a> </p> </div> <div class="P64 software"> <p><a href="https://www.cresta-project.eu/#ScoreP">Score-P</a> </p><img class="arrowsmall ar" src="https://www.cresta-project.eu//images/arrow_right.png" alt="" /> </div> <div class="P65 software"> <p><a href="https://www.cresta-project.eu/#Adaptiveruntimesystem">ARS</a> </p><img class="arrowsmall ad" src="https://www.cresta-project.eu//images/arrow_down.png" alt="" /> </div> <div class="P66 software"> <p><a href="https://www.cresta-project.eu/#Adaptiveruntimesystem">ATF</a> </p><img class="arrowsmall au" src="https://www.cresta-project.eu//images/arrow_up.png" alt="" /> </div> </div> <div id="sat2" class="systemware"> <p>Cross-Cutting <br />Technologies</p><img id="arrow2" class="arrow" src="https://www.cresta-project.eu//images/arrow_right_up.png" alt="" /> <div class="P1 software"> <p><a href="https://www.cresta-project.eu/#benchmark">Benchmark Suite</a> </p><img class="arrowsmall ad" src="https://www.cresta-project.eu//images/arrow_down.png" alt="" /> </div> </div> <div id="sat3" class="systemware"> <p>Pre and Post <br />Processing</p><img id="arrow3" class="arrow" src="https://www.cresta-project.eu//images/arrow_left_up.png" alt="" /> <div class="P1 software"> <p><a href="https://www.cresta-project.eu/#PPSTEE">PPSTee</a> </p><img class="arrowsmall ad" src="https://www.cresta-project.eu//images/arrow_down.png" alt="" /> </div> <div class="P3 software"> <p><a href="https://www.cresta-project.eu/RemoteHybridRendering">Remote HRS</a> </p><img class="arrowsmall al" src="https://www.cresta-project.eu//images/arrow_left.png" alt="" /> </div> <div class="P4 software"> <p><a href="https://www.cresta-project.eu/#InteractiveDataExploration">Interactive Data EVS</a> </p><img class="arrowsmall au" src="https://www.cresta-project.eu//images/arrow_up.png" alt="" /> </div> </div> <div id="info"> <p id="AlgorLib"><strong>Algorithms and Libraries:</strong> CRESTA evaluated and quantified the limitations of key numerical libraries for the co-design applications.</p> <p id="DevEv"><strong>Development Environment:</strong> Applications at the exascale will need to exploit every bit of parallelism in the codes, see how CRESTA did this.</p> <p id="CrossTech"><strong>Cross-Cutting Technologies:</strong> CRESTA evaluated, researched and developed best practice in technologies that cut across the entire exascale software stack: fault tolerance, performance optimisation and power management.</p> <p id="PrePost"><strong>Pre and Post Processing:</strong> In order to evaluate new scalable and fault tolerant approaches for the pre- and post-processing in heterogeneous exascale environments, a variety of simulation grid types were tested.</p> <p id="CRESTAco"><strong>CRESTA Co-design:</strong> Co-design is at the heart of CRESTA. Co-design is software and hardward engineers working together to meet the goal of reaching the exascale.</p> </div> </div> <p style="text-align: justify;">The core components&nbsp;software collection can be found here:<span style="font-size: 0.8em;">&nbsp;</span> </p> <table style="width: 100%; border-collapse: collapse; border: none;" border="1" cellspacing="0" cellpadding="0"> <tbody> <tr> <td style="width: 100%; border: 1pt solid black; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p>WP2: Cross Cutting and Underpinning Technologies</p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#benchmark">CRESTA benchmark suite</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Benchmark suite for the major co-design applications within CRESTA</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/CRESTA_BENCH">https://github.com/cresta-eu/CRESTA_BENCH</a> </p> </td> </tr> <tr> <td style="width: 100%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP3: Development Environment</p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#ScoreP">Score-P</a> and <a href="https://www.cresta-project.eu/#Vampir">Vampir</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">New additions to Score-P (support for energy hw counters) and Vampir (selective monitoring)</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">Score-P: available under the New BSD Open Source license from:</p> <p align="left"><a href="http://www.vi-hps.org/projects/score-p/">http://www.vi-hps.org/projects/score-p/</a> </p> <p align="left">Vampir: proprietary license, contact <a href="mailto:contact@vampir.eu">contact@vampir.eu</a>.</p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#allineaDDT">Allinea DDT</a> and <a href="https://www.cresta-project.eu/#MUST">MUST</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Improved scalability and support for new programming systems in Allinea DDT and MUST. Integration of MUST into Allinea DDT</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">DDT: proprietary license – available from <a href="http://www.allinea.com/products/ddt/%20purchase">http://www.allinea.com/products/ddt/ purchase</a> </p> <p align="left">MUST: MUST is distributed under a BSD style license and can be downloaded from: <a href="https://doc.itc.rwth-aachen.de/display/CCP/Project+MUST">https://doc.itc.rwth-aachen.de/display/CCP/Project+MUST</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#Adaptiveruntimesystem">Adaptive runtime system</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Adaptive runtime system</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 100%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP4: Libraries and Algorithms<a name="AandL"></a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Optimised reduction Library</p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Community prototype</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">Public repository:</p> <p align="left"><a href="http://gitlab.excess-project.eu/numlibs/">http://gitlab.excess-project.eu/numlibs/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Collectives Microbenchmark Suite</p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Collective operations benchmark suite</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Non-Blocking Collectives Runtime Library</p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Non-blocking collectives library</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">CEL FFT/LS</p> <p align="left"><em>&nbsp;</em> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Community prototype of linear solver and FFT libraries</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">Public repository:</p> <p align="left"><a href="http://gitlab.excess-project.eu/numlibs/cel_v3">http://gitlab.excess-project.eu/numlibs/cel_v3</a> </p> </td> </tr> <tr> <td style="width: 100%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP5: Pre and Post Processing</p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#PPSTEE">PPStee</a><a href="https://www.cresta-project.eu/#PPSTEE"></a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Pre-processing software to balance load of simulation.</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#InteractiveDataExploration">Interactive Post-Processing software</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Software to allow interactive data post-processing, in-situ processing, and enable computational steering.</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#RemoteHybridRendering">RHR</a> &amp; Vistle</p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Vistle - Modular, dynamic data-parallel visualisation pipeline</p> <p align="left">Remote Hybrid Rendering – Decouple Rendering &amp; Interaction</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">Vistle (including RHR server)</p> <p align="left">Github: <a href="https://github.com/vistle.git">https://github.com/vistle.git</a> </p> <p align="left">RHR Client depends on OpenCOVER</p> <p align="left">Part of COVISE: <a href="http://www.hlrs.de/organization/av/vis/%20covise/%20support/download/">http://www.hlrs.de/organization/av/vis/ covise/ support/download/</a> </p> </td> </tr> </tbody> </table> <p>&nbsp;</p> <p>In addition to the core components&nbsp;of the software collection CRESTA created the following additional pieces of software:</p> <table style="width: 100%; border-collapse: collapse; border: none;" border="1" cellspacing="0" cellpadding="0"> <tbody> <tr> <td style="width: 100%; border: 1pt solid black; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP3: Development Environment</p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Coarray Fortran Benchmark</p> <p align="left"><strong>&nbsp;</strong> </p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">A low-level benchmark suite for Fortran coarrays, which measures a set of basic parallel operations.</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">Available from: <a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">https://</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">www.epcc.ed.ac.uk</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">/research/ computing/performance-</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">characterisation</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">-and-benchmarking/</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">epcc</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">-co-array-</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">fortran</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">-micro</a> </p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">targetDP &nbsp;</p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">Target Data Parallel (targetDP), a framework to allow lattice-based applications take advantage of either traditional CPUs or accelerators in a performance portable manner</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">The framework is incorporated in the open-source Ludwig software package, and will be publicly available within future Ludwig releases at:</p> <p align="left"><a href="http://ccpforge.cse.rl.ac.uk/gf/project/ludwig/"><span style="color: blue;">http://ccpforge.cse.rl.ac.uk/gf/project/ludwig/</span></a> </p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Auto-Tuner</p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">This is a mock-up version of an Auto-Tuner, used to demonstrate the Auto-tuner API. API is available within deliverable 3.6.2.</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">As a mock-up auto-tuner to demonstrate the auto-tuning API, this was never intended for public use. It is available to project partners on the internal CREST SVN system.</p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">pm_mpi_lib</p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">Provides an API to read Cray node power counters from an application (these counters are exposed in /proc files but need to be read consistently.&nbsp; The API was used to incorporate power monitoring into Scope-P collection (and Vampir display) to facilitate CRESTA work in that area.</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">CRESTA public GitHub repository:</p> <p align="left"><a href="https://github.com/cresta-eu/pm_mpi_lib">https://github.com/cresta-eu/pm_mpi_lib</a> </p> <p align="left"><em>&nbsp;</em> </p> </td> </tr> <tr> <td style="width: 100%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP5: Pre and Post Processing</p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Protopart, PPStee wrapper + tools</p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">Software associated with PPStee:</p> <p align="left">Protopart: extraction of HemeLB‘s pre-processing into separate tool, enabling faster ensemble simulation.</p> <p align="left">PPStee wrapper:<br /> calculate geometry distribution for Protopart</p> <p align="left">Additional tool chain for visualisation</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">Due for release in summer 2015, under an LGPL license, on the same public repository as HemeLB:</p> <p align="left"><a href="http://ccs.chem.ucl.ac.uk/hemelb">http://ccs.chem.ucl.ac.uk/hemelb</a> </p> </td> </tr> </tbody> </table> <p>&nbsp;</p> <p><strong>&nbsp;</strong> </p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Tools for the Development Environment</em> </p> <p><strong><a name="allineaDDT"></a>Allinea DDT</strong> </p> <p><span style="color: #262626;">Allinea DDT is widely used parallel software debugger. Renowned for scaling to very large core counts, it can run at the full size of the largest Petascale class systems available with performance measured in milliseconds. To transition Allinea DDT to exascale, within CRESTA extensions are being developed to cope with new paradigms and heterogeneous approaches to high performance computing.</span> </p> <p>Further information can be obtained from here: <a href="http://www.allinea.com/products/ddt/">http://www.allinea.com/products/ddt/</a> </p> <p><strong><a name="MUST"></a>MUST</strong> </p> <p>MUST offers a new approach to runtime error detection in MPI applications and is specifically designed to overcome the scalability limitations of current runtime detection tools while facilitating the implementation of additional detection routines. For CRESTA, MUST is being extended in the areas of scalability and programming paradigm support.</p> <p>Further information can be obtained from here:</p> <p><a href="http://tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/zih/forschung/projekte/must/">http://tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/zih/forschung/projekte/must/</a> </p> <p><strong><a name="ScoreP"></a>Score-P</strong> </p> <p>Score-P is a joint performance measurement runtime infrastructure for petascale performance monitoring for the tools Periscope, Scalasca, TAU, and Vampir. Within CRESTA, Score-P is being developed to address the key challenges of scalability and heterogeneity to meet exascale performance analysis requirements.</p> <p>Further details can be obtained from here:</p> <p><a href="http://www.vi-hps.org/projects/score-p/">http://www.vi-hps.org/projects/score-p/</a> </p> <p><strong><a name="Vampir"></a>Vampir</strong> </p> <p>Vampir is popular piece of interactive event trace visualisation software. This allows the analysis of parallel applications with thousands of concurrent processing elements with various graphical representations in a post-mortem fashion. Vampir is being enhanced to allow the investigation of the performance information of millions of concurrent processing elements, through enhanced scalable and intelligent data analysis and processing techniques.</p> <p>Further details can be obtained from here:</p> <p><a href="http://www.tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/zih/forschung/projekte/vampir/index_html/document_view?set_language=en">http://www.tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/zih/forschung/projekte/vampir/index_html/document_view?set_language=en</a> </p> <p><strong><a name="Adaptiveruntimesystem"></a>Adaptive Runtime System Software</strong> </p> <p>Being developed at KTH, this experimental runtime system explores the power of adaptive runtime support for exascale applications. Consisting of a resource manager, a library for runtime administration of parallel applications, and a performance monitoring and analysis tool, the design is based on a task model that will help programmers to exploit the parallelism of their applications. The system should react automatically to the application's behaviour, that is, supporting a high parallel efficiency and improving the performance of the application based on the combined use of hints provided by the programmer as well as the transparent supervision of the program execution.</p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Pre and Post Processing Tools</em> </p> <p><strong><a name="PPSTEE"></a>PPSTee</strong> </p> <p>PPStee is a new interface for pre-processing steering for exascale simulations, being developed by DLR. Supplied with information on simulation data, its main purpose is to optimise the overall simulation load-balance starting with initial data distribution and not necessarily ending after visualisation of the simulation results.</p> <p><strong><a name="InteractiveDataExploration"></a>Interactive Data Exploration and Visualisation Software</strong> </p> <p>Within CRESTA, DLR is developing interactive data exploration and visualisation software for exascale. This software will provide in-situ processing of the simulation data, interactive visualisation for exascale simulations, and further computational steering capability of the on-going simulation. In-situ post and interactive visualisation provides the user with the possibility to explore the simulation result on-the-fly, while computational steering allows the user to change and modify an on-going simulation process by modifying simulation parameters.</p> <p><strong><a name="RemoteHybridRendering"></a>Remote Hybrid Rendering Software</strong> </p> <p>HLRS is developing remote hybrid rendering software within the CRESTA project. This piece of software will be able to be used to access remote exascale simulations from immersive projection environments over the Internet. The display system may range from a desktop computer to an immersive virtual environment such as a CAVE. The display system forwards user input to the visualisation cluster, which uses highly scalable methods to render images of the post-processed simulation data and returns them to the display system. The display system enriches these with context information before they are shown.</p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Algorithms and Libraries</em> </p> <p><strong>CRESTA Exascale Library (CEL)</strong> </p> <p>The CRESTA Exascale Library is a new library being developed by CRESTA, targeted at two important classes of numerical problem: linear solvers and multi-dimensional Fourier transforms. The CEL-FFT library is intended to make it easier to implement FFT implementations. The CEL-Linear-Solver is used to solve large linear systems and will contain a set of the iterative solvers with Jacobi- and AMG-preconditioner.</p> <p><strong>High-Precision Reduction Summation Library for MPI</strong> </p> <p>Within CRESTA we are developing a prototypical version of a library that allows the user to replace the MPI collective reduction, specifically for summation, with a high-precision version. This can be used to test whether an application or a use-case is affected by inaccuracies in the MPI summations. To analyse inaccuracies in local computations a set of routines to do local summation of a vector of values at high precision are also being developed.</p> <p><strong>Collectives Microbenchmark Suite</strong> </p> <p>This benchmark suite is being developed to help deriving metrics that characterise the efficiency of an implementation of a given collective. It is also being developed to assess the respective efficiency of a set of implementations of a collective for his particular use-case in order to choose the most suitable implementation.</p> <p><strong>The CRESTA Collective Communication Library</strong> </p> <p>This software will be a platform for studying scalability bottlenecks caused by collective operations: It allows for an application developer to experiment with various alternative implementations for a particular set of collectives with minimal changes into the application source.</p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Benchmarking<a name="benchmark"></a></em> </p> <p><strong>The CRESTA Benchmark Suite</strong> </p> <p>The CRESTA benchmark suite contains each of the six co-design applications, with a range of appropriate input files. Used within the project for test and development purposes, these input files are representative of the types of simulations that may require exascale resources in the future. The suite also contains a selection of lower level benchmarks, including appropriate solvers and algorithms developed within the project.</p> <p style="line-height: 1.15; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 18px;"><span style="font-size: 12pt;"><a href="https://www.cresta-project.eu/images/Benchmarks/CRESTA_BENCH.tar.gz">Download the Benchmarks Here</a></span> </p> <p style="line-height: 1.15; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 18px;"><span style="font-size: 12pt;">After downloading the CRESTA_BENCH.tar.gz file, you can unpack it using</span> </p> <p>tar -xvfz CRESTA_BENCH.tar.gz</p> <p><span>Instructions on how to use the benchmark suite are provided in the top-level README file. The application specific instructions are given in the README files located in each application directory (e.g. GROMACS specific instructions are inside the CRESTA_BENCH/applications/GROMACS/README file).</span> </p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Applications</em> </p> <p><strong><a name="elmfire"></a>ELMFIRE</strong> </p> <p>This is a gyro kinetic particle-in-cell code that simulates movement and interaction between high-speed particles in a torus-shaped geometry on a three dimensional grid. The particles are held together by an external magnetic field. By preparing this code to utilise exascale platforms the aim is to simulate significant portions of large-scale fusion reactors like JET or ITER.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/fusion-energy.html">http://www.cresta-project.eu/applications/fusion-energy.html</a> </p> <p><strong><a name="gromacs"></a>GROMACS</strong> </p> <p>GROMACSis a molecular dynamics code that is extensively used for simulation of biomolecular systems. Useful investigation of this kind of system is often limited by computational capacity. The limitations concern both system sizes and in particular time duration of interesting processes. Also efficient implementations of ensembles of simulation are needed for gathering statistic validity. Addressing these limitations is an aim within CRESTA.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/biomolecular-systems.html">http://www.cresta-project.eu/applications/biomolecular-systems.html</a> </p> <p><strong><a name="openfoam"></a>OpenFOAM</strong><strong>®</strong> </p> <p>OpenFOAM is an open source application for computational fluid dynamics (CFD). The program is a “toolbox” which provides a selection of different solvers as well as routines for various kinds of analysis, pre- and post-processing. Within CRESTA the objective is to simulate a whole hydraulic machine in preparation for exascale architectures.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/engineering.html">http://www.cresta-project.eu/applications/engineering.html</a> </p> <p><strong><a name="nek5000"></a>NEK5000</strong> </p> <p>NEK5000 is an open-source code for the simulation of incompressible flow in complex geometries. Simulation of turbulent flow is of one of our major objectives in CRESTA.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/engineering.html">http://www.cresta-project.eu/applications/engineering.html</a> </p> <p><strong><a name="ifs"></a>IFS: </strong> </p> <p>IFSis the production weather forecasting application used at the European Centre for Medium Range Weather Forecasts (ECMWF). Within CRESTA the aim is to develop more reliable 10-day weather forecasts that can be run in an hour or less.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/global-numerical-weather-prediction.html">http://www.cresta-project.eu/applications/global-numerical-weather-prediction.html</a> </p> <p><strong><a name="hemeLB"></a>HemeLB</strong> </p> <p>HemeLB is being developed and is intended to form part of a clinically deployed exascale virtual physiological human. HemeLB simulates blood flow in measured blood vessel geometries. The objective in CRESTA is to develop a clinically useful exascale tool.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/the-virtual-physiological-human.html">http://www.cresta-project.eu/applications/the-virtual-physiological-human.html</a> </p> <p><strong><a name="latticeboltzmann"></a>Lattice Boltzmann Applications</strong> </p> <p>As part of a co-design activity around Lattice Boltzmann techniques, two codes have been developed within CRESTA. These are:</p> <ul> <li>JYU has developed a general MPI based coupling interface for MPI parallel codes, this couples Lattice Boltzmann and particle diffusion codes;</li> <li>JYU has collaborated closely with ABO to develop a Lattice Boltzmann code for GPU accelerators using both native programming CUDA and pragma based OpenACC. JYU has provided the LB algorithm and simulation expertise and, in addition, has implemented the CPU based prototype codes.ABO has developed the LB code for GPU accelerators using both native programming CUDA and pragma based OpenACC.</li> </ul> <p style="text-align: justify;"><span style="font-family: Arial, sans-serif;">The CRESTA software collection contains a collection of software designed and enhanced to exploit future exascale platforms and to support applications on exascale platforms. The software selected and the chosen developments have been designed with the co-design applications as drivers. Many of the research activities have been integrated into software components within the collection.</span> </p> <div id="holder"> <div id="CA"> <p><strong>Co-design Applications</strong> </p> <ul> <li id="Engimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=23:engineering&amp;catid=10:applications&amp;Itemid=119">Engineering</a> </li> <li id="FEimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=22:fusion-energy&amp;catid=10:applications&amp;Itemid=119">Fusion Energy</a> </li> <li id="Bioimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=19:biomolecular-systems&amp;catid=10:applications&amp;Itemid=119">Biomolecular systems</a> </li> <li id="VPAimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=21:the-virtual-physiological-human&amp;catid=10:applications&amp;Itemid=119">The Virtual Physiological Human</a> </li> <li id="GNWPimage"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=article&amp;id=20:global-numerical-weather-prediction&amp;catid=10:applications&amp;Itemid=119">Global Numerical Weather Prediction</a> </li> <div id="CAimage">&nbsp;</div> <div id="infoApp"> <p id="Engineering"><strong>Engineering:</strong> Computational Fluid dynamics (CFD) is widely used in the automotive, aeronautical and heavy engineering industries, as well as being a staple of the academic community. Click to Learn More.</p> <p id="FusionEnergy"><strong>Fusion Energy:</strong> The decision to construct the first power-plant scale fusion reactor, ITER, in Cadarache, France has dramatically increased the need to solve the remaining technical challenges of the reactor design. Click to Learn More.</p> <p id="GNWP"><strong>Global Numerical Weather Prediction:</strong> ECMWF leads the world in global Numerical Weather Prediction, the advanced computer observation-analysis modelling technique used to predict the weather. Click to Learn More.</p> <p id="VPH"><strong>The Virtual Physiological Human:</strong> The Virtual Physiological Human initiative is a collection of European projects which undertake research in biomedical modelling and simulation of the human body. Click to Learn More.</p> <p id="Biosystems"><strong>Biomolecular systems:</strong> Molecular Dynamics simulation is one the most rapidly growing methods for modelling in general, and for life science in particular. Click to Learn More.</p> </div> </ul> </div> <div id="sat4" class="systemware"> <p id="sat4p"><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=category&amp;id=9&amp;Itemid=101">CRESTA </a><br /><a href="https://www.cresta-project.eu/index.php?option=com_content&amp;view=category&amp;id=9&amp;Itemid=101">Co-design</a> </p> </div> <div id="sat0" class="systemware"> <p id="sat0p">Algorithms <br /> and Libraries</p><img id="arrow0" class="arrow" src="https://www.cresta-project.eu//images/arrow_right_down.png" alt="" /> <div id="CEL" class="P1 software"> <p><a href="https://www.cresta-project.eu/#AandL">CEL FFT/LS</a> </p><img class="arrowsmall ad" src="https://www.cresta-project.eu//images/arrow_down.png" alt="" /> </div> <div id="HPR" class="P2 software"> <p><a href="https://www.cresta-project.eu/#AandL">HP Reduction</a> </p><img class="arrowsmall ar" src="https://www.cresta-project.eu//images/arrow_right.png" alt="" /> </div> <div class="P3 software"> <p><a href="https://www.cresta-project.eu/#AandL">Collectives MB</a> </p><img class="arrowsmall al" src="https://www.cresta-project.eu//images/arrow_left.png" alt="" /> </div> <div class="P4 software"> <p><a href="https://www.cresta-project.eu/#AandL">Collectives Lib</a> </p><img class="arrowsmall au" src="https://www.cresta-project.eu//images/arrow_up.png" alt="" /> </div> </div> <div id="sat1" class="systemware"> <p id="sat1p">Development <br />Environment</p><img id="arrow1" class="arrow" src="https://www.cresta-project.eu//images/arrow_left_down.png" alt="" /> <div class="P61 software"> <p><a href="https://www.cresta-project.eu/#Vampir">Vampir</a> </p><img class="arrowsmall ar" src="https://www.cresta-project.eu//images/arrow_right.png" alt="" /> </div> <div class="P62 software"> <p><a href="https://www.cresta-project.eu/#allineaDDT">Allinea's DDT</a> </p><img class="arrowsmall al" src="https://www.cresta-project.eu//images/arrow_left.png" alt="" /> </div> <div class="P63 software"><img class="arrowsmall al" src="https://www.cresta-project.eu//images/arrow_left.png" alt="" /> <p><a href="https://www.cresta-project.eu/#MUST">MUST</a> </p> </div> <div class="P64 software"> <p><a href="https://www.cresta-project.eu/#ScoreP">Score-P</a> </p><img class="arrowsmall ar" src="https://www.cresta-project.eu//images/arrow_right.png" alt="" /> </div> <div class="P65 software"> <p><a href="https://www.cresta-project.eu/#Adaptiveruntimesystem">ARS</a> </p><img class="arrowsmall ad" src="https://www.cresta-project.eu//images/arrow_down.png" alt="" /> </div> <div class="P66 software"> <p><a href="https://www.cresta-project.eu/#Adaptiveruntimesystem">ATF</a> </p><img class="arrowsmall au" src="https://www.cresta-project.eu//images/arrow_up.png" alt="" /> </div> </div> <div id="sat2" class="systemware"> <p>Cross-Cutting <br />Technologies</p><img id="arrow2" class="arrow" src="https://www.cresta-project.eu//images/arrow_right_up.png" alt="" /> <div class="P1 software"> <p><a href="https://www.cresta-project.eu/#benchmark">Benchmark Suite</a> </p><img class="arrowsmall ad" src="https://www.cresta-project.eu//images/arrow_down.png" alt="" /> </div> </div> <div id="sat3" class="systemware"> <p>Pre and Post <br />Processing</p><img id="arrow3" class="arrow" src="https://www.cresta-project.eu//images/arrow_left_up.png" alt="" /> <div class="P1 software"> <p><a href="https://www.cresta-project.eu/#PPSTEE">PPSTee</a> </p><img class="arrowsmall ad" src="https://www.cresta-project.eu//images/arrow_down.png" alt="" /> </div> <div class="P3 software"> <p><a href="https://www.cresta-project.eu/RemoteHybridRendering">Remote HRS</a> </p><img class="arrowsmall al" src="https://www.cresta-project.eu//images/arrow_left.png" alt="" /> </div> <div class="P4 software"> <p><a href="https://www.cresta-project.eu/#InteractiveDataExploration">Interactive Data EVS</a> </p><img class="arrowsmall au" src="https://www.cresta-project.eu//images/arrow_up.png" alt="" /> </div> </div> <div id="info"> <p id="AlgorLib"><strong>Algorithms and Libraries:</strong> CRESTA evaluated and quantified the limitations of key numerical libraries for the co-design applications.</p> <p id="DevEv"><strong>Development Environment:</strong> Applications at the exascale will need to exploit every bit of parallelism in the codes, see how CRESTA did this.</p> <p id="CrossTech"><strong>Cross-Cutting Technologies:</strong> CRESTA evaluated, researched and developed best practice in technologies that cut across the entire exascale software stack: fault tolerance, performance optimisation and power management.</p> <p id="PrePost"><strong>Pre and Post Processing:</strong> In order to evaluate new scalable and fault tolerant approaches for the pre- and post-processing in heterogeneous exascale environments, a variety of simulation grid types were tested.</p> <p id="CRESTAco"><strong>CRESTA Co-design:</strong> Co-design is at the heart of CRESTA. Co-design is software and hardward engineers working together to meet the goal of reaching the exascale.</p> </div> </div> <p style="text-align: justify;">The core components&nbsp;software collection can be found here:<span style="font-size: 0.8em;">&nbsp;</span> </p> <table style="width: 100%; border-collapse: collapse; border: none;" border="1" cellspacing="0" cellpadding="0"> <tbody> <tr> <td style="width: 100%; border: 1pt solid black; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p>WP2: Cross Cutting and Underpinning Technologies</p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#benchmark">CRESTA benchmark suite</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Benchmark suite for the major co-design applications within CRESTA</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/CRESTA_BENCH">https://github.com/cresta-eu/CRESTA_BENCH</a> </p> </td> </tr> <tr> <td style="width: 100%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP3: Development Environment</p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#ScoreP">Score-P</a> and <a href="https://www.cresta-project.eu/#Vampir">Vampir</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">New additions to Score-P (support for energy hw counters) and Vampir (selective monitoring)</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">Score-P: available under the New BSD Open Source license from:</p> <p align="left"><a href="http://www.vi-hps.org/projects/score-p/">http://www.vi-hps.org/projects/score-p/</a> </p> <p align="left">Vampir: proprietary license, contact <a href="mailto:contact@vampir.eu">contact@vampir.eu</a>.</p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#allineaDDT">Allinea DDT</a> and <a href="https://www.cresta-project.eu/#MUST">MUST</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Improved scalability and support for new programming systems in Allinea DDT and MUST. Integration of MUST into Allinea DDT</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">DDT: proprietary license – available from <a href="http://www.allinea.com/products/ddt/%20purchase">http://www.allinea.com/products/ddt/ purchase</a> </p> <p align="left">MUST: MUST is distributed under a BSD style license and can be downloaded from: <a href="https://doc.itc.rwth-aachen.de/display/CCP/Project+MUST">https://doc.itc.rwth-aachen.de/display/CCP/Project+MUST</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#Adaptiveruntimesystem">Adaptive runtime system</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Adaptive runtime system</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 100%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP4: Libraries and Algorithms<a name="AandL"></a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Optimised reduction Library</p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Community prototype</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">Public repository:</p> <p align="left"><a href="http://gitlab.excess-project.eu/numlibs/">http://gitlab.excess-project.eu/numlibs/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Collectives Microbenchmark Suite</p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Collective operations benchmark suite</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Non-Blocking Collectives Runtime Library</p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Non-blocking collectives library</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">CEL FFT/LS</p> <p align="left"><em>&nbsp;</em> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Community prototype of linear solver and FFT libraries</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">Public repository:</p> <p align="left"><a href="http://gitlab.excess-project.eu/numlibs/cel_v3">http://gitlab.excess-project.eu/numlibs/cel_v3</a> </p> </td> </tr> <tr> <td style="width: 100%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP5: Pre and Post Processing</p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#PPSTEE">PPStee</a><a href="https://www.cresta-project.eu/#PPSTEE"></a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Pre-processing software to balance load of simulation.</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#InteractiveDataExploration">Interactive Post-Processing software</a> </p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Software to allow interactive data post-processing, in-situ processing, and enable computational steering.</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">CRESTA public GitHub repository: <a href="https://github.com/cresta-eu/">https://github.com/cresta-eu/</a> </p> </td> </tr> <tr> <td style="width: 21.6%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left"><a href="https://www.cresta-project.eu/#RemoteHybridRendering">RHR</a> &amp; Vistle</p> </td> <td style="width: 29.36%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="29%"> <p align="left">Vistle - Modular, dynamic data-parallel visualisation pipeline</p> <p align="left">Remote Hybrid Rendering – Decouple Rendering &amp; Interaction</p> </td> <td style="width: 49.04%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="49%"> <p align="left">Vistle (including RHR server)</p> <p align="left">Github: <a href="https://github.com/vistle.git">https://github.com/vistle.git</a> </p> <p align="left">RHR Client depends on OpenCOVER</p> <p align="left">Part of COVISE: <a href="http://www.hlrs.de/organization/av/vis/%20covise/%20support/download/">http://www.hlrs.de/organization/av/vis/ covise/ support/download/</a> </p> </td> </tr> </tbody> </table> <p>&nbsp;</p> <p>In addition to the core components&nbsp;of the software collection CRESTA created the following additional pieces of software:</p> <table style="width: 100%; border-collapse: collapse; border: none;" border="1" cellspacing="0" cellpadding="0"> <tbody> <tr> <td style="width: 100%; border: 1pt solid black; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP3: Development Environment</p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Coarray Fortran Benchmark</p> <p align="left"><strong>&nbsp;</strong> </p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">A low-level benchmark suite for Fortran coarrays, which measures a set of basic parallel operations.</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">Available from: <a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">https://</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">www.epcc.ed.ac.uk</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">/research/ computing/performance-</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">characterisation</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">-and-benchmarking/</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">epcc</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">-co-array-</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">fortran</a><a href="https://www.epcc.ed.ac.uk/research/computing/performance-characterisation-and-benchmarking/epcc-co-array-fortran-micro">-micro</a> </p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">targetDP &nbsp;</p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">Target Data Parallel (targetDP), a framework to allow lattice-based applications take advantage of either traditional CPUs or accelerators in a performance portable manner</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">The framework is incorporated in the open-source Ludwig software package, and will be publicly available within future Ludwig releases at:</p> <p align="left"><a href="http://ccpforge.cse.rl.ac.uk/gf/project/ludwig/"><span style="color: blue;">http://ccpforge.cse.rl.ac.uk/gf/project/ludwig/</span></a> </p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Auto-Tuner</p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">This is a mock-up version of an Auto-Tuner, used to demonstrate the Auto-tuner API. API is available within deliverable 3.6.2.</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">As a mock-up auto-tuner to demonstrate the auto-tuning API, this was never intended for public use. It is available to project partners on the internal CREST SVN system.</p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">pm_mpi_lib</p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">Provides an API to read Cray node power counters from an application (these counters are exposed in /proc files but need to be read consistently.&nbsp; The API was used to incorporate power monitoring into Scope-P collection (and Vampir display) to facilitate CRESTA work in that area.</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">CRESTA public GitHub repository:</p> <p align="left"><a href="https://github.com/cresta-eu/pm_mpi_lib">https://github.com/cresta-eu/pm_mpi_lib</a> </p> <p align="left"><em>&nbsp;</em> </p> </td> </tr> <tr> <td style="width: 100%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" colspan="3" valign="top" width="100%"> <p align="left">WP5: Pre and Post Processing</p> </td> </tr> <tr> <td style="width: 21.38%; border-style: none solid solid; border-right-color: black; border-bottom-color: black; border-left-color: black; border-right-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="21%"> <p align="left">Protopart, PPStee wrapper + tools</p> </td> <td style="width: 35.7%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="35%"> <p align="left">Software associated with PPStee:</p> <p align="left">Protopart: extraction of HemeLB‘s pre-processing into separate tool, enabling faster ensemble simulation.</p> <p align="left">PPStee wrapper:<br /> calculate geometry distribution for Protopart</p> <p align="left">Additional tool chain for visualisation</p> </td> <td style="width: 42.92%; border-style: none solid solid none; border-bottom-color: black; border-bottom-width: 1pt; border-right-color: black; border-right-width: 1pt; padding: 0cm 5.4pt;" valign="top" width="42%"> <p align="left">Due for release in summer 2015, under an LGPL license, on the same public repository as HemeLB:</p> <p align="left"><a href="http://ccs.chem.ucl.ac.uk/hemelb">http://ccs.chem.ucl.ac.uk/hemelb</a> </p> </td> </tr> </tbody> </table> <p>&nbsp;</p> <p><strong>&nbsp;</strong> </p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Tools for the Development Environment</em> </p> <p><strong><a name="allineaDDT"></a>Allinea DDT</strong> </p> <p><span style="color: #262626;">Allinea DDT is widely used parallel software debugger. Renowned for scaling to very large core counts, it can run at the full size of the largest Petascale class systems available with performance measured in milliseconds. To transition Allinea DDT to exascale, within CRESTA extensions are being developed to cope with new paradigms and heterogeneous approaches to high performance computing.</span> </p> <p>Further information can be obtained from here: <a href="http://www.allinea.com/products/ddt/">http://www.allinea.com/products/ddt/</a> </p> <p><strong><a name="MUST"></a>MUST</strong> </p> <p>MUST offers a new approach to runtime error detection in MPI applications and is specifically designed to overcome the scalability limitations of current runtime detection tools while facilitating the implementation of additional detection routines. For CRESTA, MUST is being extended in the areas of scalability and programming paradigm support.</p> <p>Further information can be obtained from here:</p> <p><a href="http://tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/zih/forschung/projekte/must/">http://tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/zih/forschung/projekte/must/</a> </p> <p><strong><a name="ScoreP"></a>Score-P</strong> </p> <p>Score-P is a joint performance measurement runtime infrastructure for petascale performance monitoring for the tools Periscope, Scalasca, TAU, and Vampir. Within CRESTA, Score-P is being developed to address the key challenges of scalability and heterogeneity to meet exascale performance analysis requirements.</p> <p>Further details can be obtained from here:</p> <p><a href="http://www.vi-hps.org/projects/score-p/">http://www.vi-hps.org/projects/score-p/</a> </p> <p><strong><a name="Vampir"></a>Vampir</strong> </p> <p>Vampir is popular piece of interactive event trace visualisation software. This allows the analysis of parallel applications with thousands of concurrent processing elements with various graphical representations in a post-mortem fashion. Vampir is being enhanced to allow the investigation of the performance information of millions of concurrent processing elements, through enhanced scalable and intelligent data analysis and processing techniques.</p> <p>Further details can be obtained from here:</p> <p><a href="http://www.tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/zih/forschung/projekte/vampir/index_html/document_view?set_language=en">http://www.tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/zih/forschung/projekte/vampir/index_html/document_view?set_language=en</a> </p> <p><strong><a name="Adaptiveruntimesystem"></a>Adaptive Runtime System Software</strong> </p> <p>Being developed at KTH, this experimental runtime system explores the power of adaptive runtime support for exascale applications. Consisting of a resource manager, a library for runtime administration of parallel applications, and a performance monitoring and analysis tool, the design is based on a task model that will help programmers to exploit the parallelism of their applications. The system should react automatically to the application's behaviour, that is, supporting a high parallel efficiency and improving the performance of the application based on the combined use of hints provided by the programmer as well as the transparent supervision of the program execution.</p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Pre and Post Processing Tools</em> </p> <p><strong><a name="PPSTEE"></a>PPSTee</strong> </p> <p>PPStee is a new interface for pre-processing steering for exascale simulations, being developed by DLR. Supplied with information on simulation data, its main purpose is to optimise the overall simulation load-balance starting with initial data distribution and not necessarily ending after visualisation of the simulation results.</p> <p><strong><a name="InteractiveDataExploration"></a>Interactive Data Exploration and Visualisation Software</strong> </p> <p>Within CRESTA, DLR is developing interactive data exploration and visualisation software for exascale. This software will provide in-situ processing of the simulation data, interactive visualisation for exascale simulations, and further computational steering capability of the on-going simulation. In-situ post and interactive visualisation provides the user with the possibility to explore the simulation result on-the-fly, while computational steering allows the user to change and modify an on-going simulation process by modifying simulation parameters.</p> <p><strong><a name="RemoteHybridRendering"></a>Remote Hybrid Rendering Software</strong> </p> <p>HLRS is developing remote hybrid rendering software within the CRESTA project. This piece of software will be able to be used to access remote exascale simulations from immersive projection environments over the Internet. The display system may range from a desktop computer to an immersive virtual environment such as a CAVE. The display system forwards user input to the visualisation cluster, which uses highly scalable methods to render images of the post-processed simulation data and returns them to the display system. The display system enriches these with context information before they are shown.</p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Algorithms and Libraries</em> </p> <p><strong>CRESTA Exascale Library (CEL)</strong> </p> <p>The CRESTA Exascale Library is a new library being developed by CRESTA, targeted at two important classes of numerical problem: linear solvers and multi-dimensional Fourier transforms. The CEL-FFT library is intended to make it easier to implement FFT implementations. The CEL-Linear-Solver is used to solve large linear systems and will contain a set of the iterative solvers with Jacobi- and AMG-preconditioner.</p> <p><strong>High-Precision Reduction Summation Library for MPI</strong> </p> <p>Within CRESTA we are developing a prototypical version of a library that allows the user to replace the MPI collective reduction, specifically for summation, with a high-precision version. This can be used to test whether an application or a use-case is affected by inaccuracies in the MPI summations. To analyse inaccuracies in local computations a set of routines to do local summation of a vector of values at high precision are also being developed.</p> <p><strong>Collectives Microbenchmark Suite</strong> </p> <p>This benchmark suite is being developed to help deriving metrics that characterise the efficiency of an implementation of a given collective. It is also being developed to assess the respective efficiency of a set of implementations of a collective for his particular use-case in order to choose the most suitable implementation.</p> <p><strong>The CRESTA Collective Communication Library</strong> </p> <p>This software will be a platform for studying scalability bottlenecks caused by collective operations: It allows for an application developer to experiment with various alternative implementations for a particular set of collectives with minimal changes into the application source.</p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Benchmarking<a name="benchmark"></a></em> </p> <p><strong>The CRESTA Benchmark Suite</strong> </p> <p>The CRESTA benchmark suite contains each of the six co-design applications, with a range of appropriate input files. Used within the project for test and development purposes, these input files are representative of the types of simulations that may require exascale resources in the future. The suite also contains a selection of lower level benchmarks, including appropriate solvers and algorithms developed within the project.</p> <p style="line-height: 1.15; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 18px;"><span style="font-size: 12pt;"><a href="https://www.cresta-project.eu/images/Benchmarks/CRESTA_BENCH.tar.gz">Download the Benchmarks Here</a></span> </p> <p style="line-height: 1.15; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 18px;"><span style="font-size: 12pt;">After downloading the CRESTA_BENCH.tar.gz file, you can unpack it using</span> </p> <p>tar -xvfz CRESTA_BENCH.tar.gz</p> <p><span>Instructions on how to use the benchmark suite are provided in the top-level README file. The application specific instructions are given in the README files located in each application directory (e.g. GROMACS specific instructions are inside the CRESTA_BENCH/applications/GROMACS/README file).</span> </p> <div style="border-width: medium medium 1pt; border-style: none none solid; border-color: -moz-use-text-color -moz-use-text-color windowtext; padding: 0cm 0cm 1pt;">&nbsp;</div> <p><em>Applications</em> </p> <p><strong><a name="elmfire"></a>ELMFIRE</strong> </p> <p>This is a gyro kinetic particle-in-cell code that simulates movement and interaction between high-speed particles in a torus-shaped geometry on a three dimensional grid. The particles are held together by an external magnetic field. By preparing this code to utilise exascale platforms the aim is to simulate significant portions of large-scale fusion reactors like JET or ITER.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/fusion-energy.html">http://www.cresta-project.eu/applications/fusion-energy.html</a> </p> <p><strong><a name="gromacs"></a>GROMACS</strong> </p> <p>GROMACSis a molecular dynamics code that is extensively used for simulation of biomolecular systems. Useful investigation of this kind of system is often limited by computational capacity. The limitations concern both system sizes and in particular time duration of interesting processes. Also efficient implementations of ensembles of simulation are needed for gathering statistic validity. Addressing these limitations is an aim within CRESTA.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/biomolecular-systems.html">http://www.cresta-project.eu/applications/biomolecular-systems.html</a> </p> <p><strong><a name="openfoam"></a>OpenFOAM</strong><strong>®</strong> </p> <p>OpenFOAM is an open source application for computational fluid dynamics (CFD). The program is a “toolbox” which provides a selection of different solvers as well as routines for various kinds of analysis, pre- and post-processing. Within CRESTA the objective is to simulate a whole hydraulic machine in preparation for exascale architectures.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/engineering.html">http://www.cresta-project.eu/applications/engineering.html</a> </p> <p><strong><a name="nek5000"></a>NEK5000</strong> </p> <p>NEK5000 is an open-source code for the simulation of incompressible flow in complex geometries. Simulation of turbulent flow is of one of our major objectives in CRESTA.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/engineering.html">http://www.cresta-project.eu/applications/engineering.html</a> </p> <p><strong><a name="ifs"></a>IFS: </strong> </p> <p>IFSis the production weather forecasting application used at the European Centre for Medium Range Weather Forecasts (ECMWF). Within CRESTA the aim is to develop more reliable 10-day weather forecasts that can be run in an hour or less.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/global-numerical-weather-prediction.html">http://www.cresta-project.eu/applications/global-numerical-weather-prediction.html</a> </p> <p><strong><a name="hemeLB"></a>HemeLB</strong> </p> <p>HemeLB is being developed and is intended to form part of a clinically deployed exascale virtual physiological human. HemeLB simulates blood flow in measured blood vessel geometries. The objective in CRESTA is to develop a clinically useful exascale tool.</p> <p>Further details can be found at:</p> <p><a href="http://www.cresta-project.eu/applications/the-virtual-physiological-human.html">http://www.cresta-project.eu/applications/the-virtual-physiological-human.html</a> </p> <p><strong><a name="latticeboltzmann"></a>Lattice Boltzmann Applications</strong> </p> <p>As part of a co-design activity around Lattice Boltzmann techniques, two codes have been developed within CRESTA. These are:</p> <ul> <li>JYU has developed a general MPI based coupling interface for MPI parallel codes, this couples Lattice Boltzmann and particle diffusion codes;</li> <li>JYU has collaborated closely with ABO to develop a Lattice Boltzmann code for GPU accelerators using both native programming CUDA and pragma based OpenACC. JYU has provided the LB algorithm and simulation expertise and, in addition, has implemented the CPU based prototype codes.ABO has developed the LB code for GPU accelerators using both native programming CUDA and pragma based OpenACC.</li> </ul>