Adding MUSCLE to Multiscale Simulations

By Joris Borgdorff, Derek Groen, and Mariusz Mamonski

December 11, 2013

Multiscale models help understand phenomena with a wider scope or an increased level of detail. These models allow us to take the best from multiple worlds, for example by combining models with a fine-grained time or space resolution with models that capture systems over a large baseline.

Classical examples of multiscale modeling include coupling atomistic models to coarse-grained models, where several atoms are represented instead as a single fused particle, or coupling fine fluid dynamics models to coarser structural mechanics models. In both cases, we have a fairly good understanding of the single scale phenomena, but still have little knowledge of the interactions between these phenomena. As understanding these interactions is key to understanding these phenomena as a whole, many researchers are now actively developing and using multiscale modeling techniques [1].

Researchers from different disciplines recognized their common need for a general multiscale computing approach, and started the European e-Infrastructure MAPPER project in 2010. The project aimed to bring their demanding multiscale applications to HPC, in an approach that uses the commonalities in multiscale modeling for applications in biomedicine, hydrology, nanomaterials, fusion, and systems biology.

muscle5The project settled on the theoretical and components-based Multiscale Modeling and Simulation Framework [2], which defines a multiscale model as a set of coupled single scale models (see Fig. 1). This approach allows code reuse, since single scale models often already exist, and defines clear opportunities for scheduling and distributing multiscale models, since the coupling is separated from the single scale code. Single scale models (or submodels) are implemented, verified, and validated in isolation, after which their interaction is added. They interact through input and output ports, sending or receiving simple parameters there, or entire datasets or geometries. A conduit transports the data from one port to another and intermediate components transform the data, implementing so-called scale-bridging techniques.

The Multiscale Coupling Library and Environment 2 (MUSCLE 2, http://apps.man.poznan.pl/trac/muscle) was created to implement and execute multiscale models with feedback loops, which we call cyclic coupling topologies. MUSCLE is truly a domain-independent approach, as it has so far been adopted, amongst others, by the abovementioned applications in MAPPER, and run on several supercomputers and clusters in Europe, as well as the Amazon cloud infrastructure. It consists of a library,  scripted coupling and a runtime environment.

Figure 2. Layered design of MUSCLE 2, separating implementation, coupling and execution.
Figure 2. Layered design of MUSCLE 2, separating implementation, coupling and execution.

By design, submodels do their computations independently, and MUSCLE 2 allows them to be implemented in different programming languages (C, C++, Fortran, Java, Scala, Python, or MATLAB) and for them to run on multiple machines. Conduits in MUSCLE 2 use shared memory communication where possible, and TCP/IP communication otherwise.  Using TCP/IP makes communicating between different computers as transparent as running on a single host. A central simulation manager acts as a white-page service for the submodels in a simulation, but after a submodel is registered there it does decentralized message passing with other submodels to prevent possible bottlenecks. By running each submodel in a separate process or thread, MUSCLE 2 has inherent multiscale parallelism.

MUSCLE 2 separates the submodel code, which just knows about input and output ports, from coupling code, which knows which ports will be coupled. This allows users to change the coupling topology without recompiling or redeploying code. Additionally, the coupling code is independent from the resources that the simulation will be eventually run on, so the same coupling can be submitted to multiple machines or be spread out over them, even when they reside in different countries. This allows us not only to use more resources but, more importantly, to take advantage of architectures that are optimal for each of the models involved. For example, some models in a simulation may greatly benefit from GPGPUs, whereas others have large memory requirements.

Within a supercomputer, MUSCLE 2 can make direct connections between processes, but almost all supercomputers have firewalls in place that prevent direct connections between worker nodes in different supercomputers. In MUSCLE 2we resolve this by providing a TCP/IP forwarding service, the MUSCLE Transport Overlay, that runs on interactive nodes of the cluster and forwards messages between MUSCLE 2 installations on different clusters.

To optimize the speed for large messages, MUSCLE 2 has the option of using the MPWide library (http://www.github.com/djgroen/MPWide), a high-performance communication library that was used to cosmological simulations in parallelized across multiple supercomputers [3]. MUSCLE 2 processes can be run directly as a supercomputer job and have few dependencies, but require the address of the site simulation manager to connect to other processes. This can be done manually or automated via a dedicated service such as provided by the QosCosGrid software stack (http://www.qoscosgrid.org/). QosCosGrid provides middleware solutions, notably on the Polish national grid (PL-Grid), that allow users to schedule and coordinate simulations running in multiple distributed HPC resources [4]. MUSCLE 2 is open source software (LGPL version 3 license) that runs on Linux and OS X and can be freely installed without administrative privileges.

In memoriam Mariusz Mamonski (1984 – 2013)

We wish to dedicate this paper to the memory of Mariusz Mamonski, whose sudden decease came as a shock to us all. The MUSCLE 2 team would like to thank Mariusz for all his professional and personal contributions to distributed multiscale computing. His dedication to end-users, his insight in software quality and his experience with infrastructures was truly impressive, and he will be sorely missed.

Biographies:

muscle3Joris Borgdorff is a PhD candidate at the Computational Science group of the University of Amsterdam, researching the formal background of multiscale and complex systems modeling and the applied aspects of distributed multiscale computing. He received a BSc in Mathematics and in Computer Science (2006) and an MSc in Applied Computing Science (2009) from Utrecht University. He is involved in the European MAPPER and Sophocles projects.

 

muscle2Derek Groen is a post-doctoral researcher at the Centre for Computational Science at University College London and a Fellow of the Software Sustainability Institute. He has expertise in high performance and distributed computing, as well as multiscale simulation. Derek has worked on a range of applications, and modelled star clusters, cosmological dark matter structures, clay-polymer nanocomposite materials, turbulence and human bloodflow using supercomputers. He obtained his PhD in Computational Astrophysics in Amsterdam in 2010.

 

muscle1Mariusz Mamonski (1984 – 2013) received his diploma in Computer Science at the Poznan University of Technology (Laboratory of Computing Systems) in 2008. He started working at the Application Department of the Poznan Supercomputing and Networking Center in 2005. He contributed to several research EU projects, in particular: GridLab, InteliGrid, BREIN and QosCosGrid, and was involved in the national and European e-Infrastracture projects PL-Grid and MAPPER. His research primarily focussed on web services, queueing systems and parallel execution and programing environments. He was an active member of the Open Grid Forum Distributed Resource Management Application API (OGF DRMAA) working group.

Acknowledgements

We would like to thank the Bartosz Bosak and Krzysztof Kurowski from the Poznan Supercomputing and Networking Center for their support and input, and we thank Alfons G. Hoekstra from the University of Amsterdam for his feedback.

References:

[1] Groen et al., Survey of Multiscale and Multiphysics Applications and Communities, IEEE Computing in Science and Engineering, http://dx.doi.org/10.1109/MCSE.2013.47.

[2] Borgdorff et al., Foundations of distributed multiscale computing: Formalization, specification, and analysis, Journal of Parallel and Distributed Computing http://dx.doi.org/10.1016/j.jpdc.2012.12.011

[3] Groen et al., A lightweight communication library for distributed computing, accepted by the Journal of Open Research Software, http://arxiv.org/abs/1312.0910.

[4] Kravtsov et al., Grid-enabling complex system applications with QosCosGrid: An architectural perspective, Proceedings of the 2008 International Conference on Grid Computing & Applications, Las Vegas, Nevada, USA, 2008, pp. 168–174.

[5] Borgdorff et al., Distributed Multiscale Computing with MUSCLE 2, the Multiscale Coupling Library and Environment, submitted to the Journal of Computational Science, http://arxiv.org/abs/1311.5740

Subscribe to HPCwire's Weekly Update!

Be the most informed person in the room! Stay ahead of the tech trends with industy updates delivered to you every week!

Researchers Scale COSMO Climate Code to 4888 GPUs on Piz Daint

October 17, 2017

Effective global climate simulation, sorely needed to anticipate and cope with global warming, has long been computationally challenging. Two of the major obstacles are the needed resolution and prolonged time to compute Read more…

By John Russell

Student Cluster Competition Coverage New Home

October 16, 2017

Hello computer sports fans! This is the first of many (many!) articles covering the world-wide phenomenon of Student Cluster Competitions. Finally, the Student Cluster Competition coverage has come to its natural home: H Read more…

By Dan Olds

UCSD Web-based Tool Tracking CA Wildfires Generates 1.5M Views

October 16, 2017

Tracking the wildfires raging in northern CA is an unpleasant but necessary part of guiding efforts to fight the fires and safely evacuate affected residents. One such tool – Firemap – is a web-based tool developed b Read more…

By John Russell

HPE Extreme Performance Solutions

Transforming Genomic Analytics with HPC-Accelerated Insights

Advancements in the field of genomics are revolutionizing our understanding of human biology, rapidly accelerating the discovery and treatment of genetic diseases, and dramatically improving human health. Read more…

Exascale Imperative: New Movie from HPE Makes a Compelling Case

October 13, 2017

Why is pursuing exascale computing so important? In a new video – Hewlett Packard Enterprise: Eighteen Zeros – four HPE executives, a prominent national lab HPC researcher, and HPCwire managing editor Tiffany Trader Read more…

By John Russell

Student Cluster Competition Coverage New Home

October 16, 2017

Hello computer sports fans! This is the first of many (many!) articles covering the world-wide phenomenon of Student Cluster Competitions. Finally, the Student Read more…

By Dan Olds

Intel Delivers 17-Qubit Quantum Chip to European Research Partner

October 10, 2017

On Tuesday, Intel delivered a 17-qubit superconducting test chip to research partner QuTech, the quantum research institute of Delft University of Technology (TU Delft) in the Netherlands. The announcement marks a major milestone in the 10-year, $50-million collaborative relationship with TU Delft and TNO, the Dutch Organization for Applied Research, to accelerate advancements in quantum computing. Read more…

By Tiffany Trader

Fujitsu Tapped to Build 37-Petaflops ABCI System for AIST

October 10, 2017

Fujitsu announced today it will build the long-planned AI Bridging Cloud Infrastructure (ABCI) which is set to become the fastest supercomputer system in Japan Read more…

By John Russell

HPC Chips – A Veritable Smorgasbord?

October 10, 2017

For the first time since AMD's ill-fated launch of Bulldozer the answer to the question, 'Which CPU will be in my next HPC system?' doesn't have to be 'Whichever variety of Intel Xeon E5 they are selling when we procure'. Read more…

By Dairsie Latimer

Delays, Smoke, Records & Markets – A Candid Conversation with Cray CEO Peter Ungaro

October 5, 2017

Earlier this month, Tom Tabor, publisher of HPCwire and I had a very personal conversation with Cray CEO Peter Ungaro. Cray has been on something of a Cinderell Read more…

By Tiffany Trader & Tom Tabor

Intel Debuts Programmable Acceleration Card

October 5, 2017

With a view toward supporting complex, data-intensive applications, such as AI inference, video streaming analytics, database acceleration and genomics, Intel i Read more…

By Doug Black

OLCF’s 200 Petaflops Summit Machine Still Slated for 2018 Start-up

October 3, 2017

The Department of Energy’s planned 200 petaflops Summit computer, which is currently being installed at Oak Ridge Leadership Computing Facility, is on track t Read more…

By John Russell

US Exascale Program – Some Additional Clarity

September 28, 2017

The last time we left the Department of Energy’s exascale computing program in July, things were looking very positive. Both the U.S. House and Senate had pas Read more…

By Alex R. Larzelere

How ‘Knights Mill’ Gets Its Deep Learning Flops

June 22, 2017

Intel, the subject of much speculation regarding the delayed, rewritten or potentially canceled “Aurora” contract (the Argonne Lab part of the CORAL “ Read more…

By Tiffany Trader

Reinders: “AVX-512 May Be a Hidden Gem” in Intel Xeon Scalable Processors

June 29, 2017

Imagine if we could use vector processing on something other than just floating point problems.  Today, GPUs and CPUs work tirelessly to accelerate algorithms Read more…

By James Reinders

NERSC Scales Scientific Deep Learning to 15 Petaflops

August 28, 2017

A collaborative effort between Intel, NERSC and Stanford has delivered the first 15-petaflops deep learning software running on HPC platforms and is, according Read more…

By Rob Farber

Oracle Layoffs Reportedly Hit SPARC and Solaris Hard

September 7, 2017

Oracle’s latest layoffs have many wondering if this is the end of the line for the SPARC processor and Solaris OS development. As reported by multiple sources Read more…

By John Russell

US Coalesces Plans for First Exascale Supercomputer: Aurora in 2021

September 27, 2017

At the Advanced Scientific Computing Advisory Committee (ASCAC) meeting, in Arlington, Va., yesterday (Sept. 26), it was revealed that the "Aurora" supercompute Read more…

By Tiffany Trader

Google Releases Deeplearn.js to Further Democratize Machine Learning

August 17, 2017

Spreading the use of machine learning tools is one of the goals of Google’s PAIR (People + AI Research) initiative, which was introduced in early July. Last w Read more…

By John Russell

GlobalFoundries Puts Wind in AMD’s Sails with 12nm FinFET

September 24, 2017

From its annual tech conference last week (Sept. 20), where GlobalFoundries welcomed more than 600 semiconductor professionals (reaching the Santa Clara venue Read more…

By Tiffany Trader

Graphcore Readies Launch of 16nm Colossus-IPU Chip

July 20, 2017

A second $30 million funding round for U.K. AI chip developer Graphcore sets up the company to go to market with its “intelligent processing unit” (IPU) in Read more…

By Tiffany Trader

Leading Solution Providers

Amazon Debuts New AMD-based GPU Instances for Graphics Acceleration

September 12, 2017

Last week Amazon Web Services (AWS) streaming service, AppStream 2.0, introduced a new GPU instance called Graphics Design intended to accelerate graphics. The Read more…

By John Russell

Nvidia Responds to Google TPU Benchmarking

April 10, 2017

Nvidia highlights strengths of its newest GPU silicon in response to Google's report on the performance and energy advantages of its custom tensor processor. Read more…

By Tiffany Trader

EU Funds 20 Million Euro ARM+FPGA Exascale Project

September 7, 2017

At the Barcelona Supercomputer Centre on Wednesday (Sept. 6), 16 partners gathered to launch the EuroEXA project, which invests €20 million over three-and-a-half years into exascale-focused research and development. Led by the Horizon 2020 program, EuroEXA picks up the banner of a triad of partner projects — ExaNeSt, EcoScale and ExaNoDe — building on their work... Read more…

By Tiffany Trader

Delays, Smoke, Records & Markets – A Candid Conversation with Cray CEO Peter Ungaro

October 5, 2017

Earlier this month, Tom Tabor, publisher of HPCwire and I had a very personal conversation with Cray CEO Peter Ungaro. Cray has been on something of a Cinderell Read more…

By Tiffany Trader & Tom Tabor

Cray Moves to Acquire the Seagate ClusterStor Line

July 28, 2017

This week Cray announced that it is picking up Seagate's ClusterStor HPC storage array business for an undisclosed sum. "In short we're effectively transitioning the bulk of the ClusterStor product line to Cray," said CEO Peter Ungaro. Read more…

By Tiffany Trader

Intel Launches Software Tools to Ease FPGA Programming

September 5, 2017

Field Programmable Gate Arrays (FPGAs) have a reputation for being difficult to program, requiring expertise in specialty languages, like Verilog or VHDL. Easin Read more…

By Tiffany Trader

IBM Advances Web-based Quantum Programming

September 5, 2017

IBM Research is pairing its Jupyter-based Data Science Experience notebook environment with its cloud-based quantum computer, IBM Q, in hopes of encouraging a new class of entrepreneurial user to solve intractable problems that even exceed the capabilities of the best AI systems. Read more…

By Alex Woodie

Intel, NERSC and University Partners Launch New Big Data Center

August 17, 2017

A collaboration between the Department of Energy’s National Energy Research Scientific Computing Center (NERSC), Intel and five Intel Parallel Computing Cente Read more…

By Linda Barney

  • arrow
  • Click Here for More Headlines
  • arrow
Share This