2,729 research outputs found
Idle Period Propagation in Message-Passing Applications
Idle periods on different processes of Message Passing applications are
unavoidable. While the origin of idle periods on a single process is well
understood as the effect of system and architectural random delays, yet it is
unclear how these idle periods propagate from one process to another. It is
important to understand idle period propagation in Message Passing applications
as it allows application developers to design communication patterns avoiding
idle period propagation and the consequent performance degradation in their
applications. To understand idle period propagation, we introduce a methodology
to trace idle periods when a process is waiting for data from a remote delayed
process in MPI applications. We apply this technique in an MPI application that
solves the heat equation to study idle period propagation on three different
systems. We confirm that idle periods move between processes in the form of
waves and that there are different stages in idle period propagation. Our
methodology enables us to identify a self-synchronization phenomenon that
occurs on two systems where some processes run slower than the other processes.Comment: 18th International Conference on High Performance Computing and
Communications, IEEE, 201
Empowering parallel computing with field programmable gate arrays
After more than 30 years, reconfigurable computing has grown from a concept to a mature field of science and technology. The cornerstone of this evolution is the field programmable gate array, a building block enabling the configuration of a custom hardware architecture. The departure from static von Neumannlike architectures opens the way to eliminate the instruction overhead and to optimize the execution speed and power consumption. FPGAs now live in a growing ecosystem of development tools, enabling software programmers to map algorithms directly onto hardware. Applications abound in many directions, including data centers, IoT, AI, image processing and space exploration. The increasing success of FPGAs is largely due to an improved toolchain with solid high-level synthesis support as well as a better integration with processor and memory systems. On the other hand, long compile times and complex design exploration remain areas for improvement. In this paper we address the evolution of FPGAs towards advanced multi-functional accelerators, discuss different programming models and their HLS language implementations, as well as high-performance tuning of FPGAs integrated into a heterogeneous platform. We pinpoint fallacies and pitfalls, and identify opportunities for language enhancements and architectural refinements
TinkerCell: Modular CAD Tool for Synthetic Biology
Synthetic biology brings together concepts and techniques from engineering
and biology. In this field, computer-aided design (CAD) is necessary in order
to bridge the gap between computational modeling and biological data. An
application named TinkerCell has been created in order to serve as a CAD tool
for synthetic biology. TinkerCell is a visual modeling tool that supports a
hierarchy of biological parts. Each part in this hierarchy consists of a set of
attributes that define the part, such as sequence or rate constants. Models
that are constructed using these parts can be analyzed using various C and
Python programs that are hosted by TinkerCell via an extensive C and Python
API. TinkerCell supports the notion of a module, which are networks with
interfaces. Such modules can be connected to each other, forming larger modular
networks. Because TinkerCell associates parameters and equations in a model
with their respective part, parts can be loaded from databases along with their
parameters and rate equations. The modular network design can be used to
exchange modules as well as test the concept of modularity in biological
systems. The flexible modeling framework along with the C and Python API allows
TinkerCell to serve as a host to numerous third-party algorithms. TinkerCell is
a free and open-source project under the Berkeley Software Distribution
license. Downloads, documentation, and tutorials are available at
www.tinkercell.com.Comment: 23 pages, 20 figure
- …