No downtime for communication: New framework allows for asynchronous communication in exascale machines

Feb 28, 2013
Schematic illustration of push data using a put_notify call in Global Arrays.

(—The productivity of a group of colleagues on a project is always more efficient when required information is sent as soon as it becomes available, rather than sending a request for information when it's needed. In the same way, computer algorithms that send data from one process to another when the data becomes available will be more efficient than one that is requested when it will be used. To facilitate designing such algorithms within the Global Arrays programming model framework, DOE researchers at Pacific Northwest National Laboratory designed a new put_notify capability that allows a process to initiate and complete data to another process without synchronization. The novel feature is a notify element that the receiving process can use to asynchronously determine the completion of the data transfer.

To take advantage of enormous resources that next-generation super computers are expected to have, scientific codes must adapt. For example, (MD) simulation has evolved into a highly useful method for understanding and designing molecular systems. Sophisticated MD analyses can help scientists better understand biomolecular processes, such as and . The advantage of using the programming model is that the data transfer can take place while a receiving process is still working on other tasks, a mechanism often referred to as hiding communication behind computation.  

To support the needed asynchronous communication and coordination for MD algorithms, the team designed (in Global Arrays, the library-based Partitioned Global Address Space programming model) and implemented the non-blocking put_notify capability. To do this, a two-stage process was created-a put message and notification element-for data communication using a push-data instead of a pull-data model. The researchers were able to show there was discernible time spent between a process sending data and another that receives data. This design reduces the communication bottleneck and the associated load imbalance.

Using novel data-centric capabilities provides unique opportunities to address primary challenges for parallel scalability of MD time-stepping algorithms. In future work, the algorithm will be expanded to include dynamic load-balancing through topology-aware assignment and periodic redistribution of tasks.

Explore further: What the dog-fish and camel-bird can tell us about how our brains work

More information: Straatsma, T. and Chavarria-Miranda, D. 2013. On eliminating synchronous communication in molecular simulations to improve scalability. Computer Physics Communications, January 23. DOI: 10.1016/j.cpc.2013.01.009

Related Stories

Fewer Faults for Faster Computing

Mar 28, 2011

( -- Environmental Molecular Sciences Laboratory (EMSL) users have designed and implemented an efficient fault-tolerant version of the coupled cluster method for high-performance computational ...

Python bindings snake into global arrays toolkit

Sep 26, 2011

While many of us don't want anything to do with snakes, for some, a certain kind of Python—the computer programming language, that is—is the preferred option. Researchers at Pacific Northwest National ...

Scaling Goes eXtreme: Researchers reach 34K CPUs

May 25, 2010

( -- Currently, researchers have demonstrated the scalability of high-level excited-state coupled-cluster approaches and parallel-in-time algorithms, reaching a staggering 34,000 Core Processing ...

Digital processors limited by power; what's the upside?

Aug 15, 2012

Today’s Defense missions rely on a massive amount of sensor data collected by intelligence, surveillance and reconnaissance (ISR) platforms. Not only has the volume of sensor data increased exponentially, ...

Recommended for you

Researchers build first working memcomputer prototype

Jul 06, 2015

(Tech Xplore)—A combined team of researchers from the University of California and Politecnico di Torino in Italy has built, for the first time, a working memory-crunching computer (memcomputer) prototype. ...

EU open source software project receives green light

Jul 01, 2015

An open source software project involving the University of Southampton to extend the capacity of computational mathematics and interactive computing environments has received over seven million euros in EU funding.

Can computers be creative?

Jul 01, 2015

The EU-funded 'What-if Machine' (WHIM) project not only generates fictional storylines but also judges their potential usefulness and appeal. It represents a major advance in the field of computational creativity.

User comments : 1

Adjust slider to filter visible comments by rank

Display comments: newest first

1 / 5 (1) Feb 28, 2013
For quantum computers another architectural language in needed.
'No measure' is not a problem.
The prefixes coming after yocto and yotta are.

Please sign in to add a comment. Registration is free, and takes less than a minute. Read more

Click here to reset your password.
Sign in to get notified via email when new comments are made.