The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
A synchronization network (SN) consists of processing elements (PEs) at the leaves of a complete binary tree, with routing switches at interior nodes. We study the problem of rendering an SN tolerant to PE failures, by adding queues to its edges. We obtain the following results. In the worst-case, an N-PE SN whose edges have queues of capacity O(log log N) can tolerate the failure of a positive fraction...
New approach to the fragmentation problem of hypercube multiprocessors with dynamic allocation of subcubes is proposed. It is based on constructing Hamiltonian circuits of incomplete hypercubes. The main result is a constructive proof that an n-cube from which up to n−2 vertex-disjoint subcubes are removed so that it remains connected is a Hamiltonian graph and its Hamiltonian circuit can be constructed...
This paper describes a cluster structure to reduce the amount of network hardware in distributed memory parallel processors. The expected reduction in the data transfer rate as the number of nodes is reduced is avoided by raising the transfer rate of each path. Calculations for typical application programs show that clustering can reduce the hardware quantity by 40% provided that inner-cluster parallel...
A comparative analysis for four algorithms that embed pyramids into hypercubes is presented in this paper. Relevant results for a Connection Machine system CM-2 with 16,384 processors are included.
We discuss a method constructing efficient multiprocessor networks based on combinatorial designs. The principal goal is to reduce the network diameter while keeping the number of processor ports small. With a smart multiplexing technique and the use of a class of bipartite graphs we are able to construct e.g. a 1210 processor machine with 4 ports/processor and diameter 2.
A reconfigurable parallel architecture whose interconnection topology can be dynamically modified in order to match the communication characteristics of a given algorithm provides flexibility for efficient execution of various applications. But, due to communication links switching devices design constraints, connecting a large number of processors on a dynamically programmable interconnection structure,...
A class of generalized Shuffle-Exchange (SE) graphs is introduced. As permutation networks these have the same functionality as the classical SE net (and contains it as a special case), but some of them possess recursive structures lacking in the classical SE net. This allow them to be constructed from identical or a small number of different building blocks and make them very attractive from a hardware-design...
Graphical representations of a program execution (also called visualization) have been shown to be useful to understand the behavior of parallel programs. Visualization of an execution is generally done off-line, using an adequate trace generated during execution. However, during the debugging phase, such representations may turn out to be insufficient: use of a symbolic debugger may also be required...
Monitoring tools will play an important role in future programming environments for parallel computers. In this paper the software-monitor DELTA-T and its use are presented. The DAMP multi-transputer system is chosen as a target system. To show the use of DELTA-T for interactive ‘performance debugging’ a farm with a hypothetical load is selected. It is shown that the diameter of the topology is important...
Parallel programming is orders of magnitudes more complex than writing sequential programs. This is particularly true for programming distributed memory multiprocessor architectures based on message passing programming models. Understanding the synchronization and communication behavior of parallel programs is one of the most critical issues in programming distributed memory multiprocessors. The paper...
Parallel algorithms, based on simulated annealing, neural networks and genetic algorithms, for mapping irregular data to multicomputers are presented and compared. The three algorithms deviate from the sequential versions in order to achieve acceptable speed-ups. The parallel annealing and neural algorithms include communication schemes adapted to the properties of the mapping problem and of the algorithms...
Profiling is critical on massively parallel architectures because the combination of a novel architecture and parallel high-level languages changes the rules of optimal program design. The MasPar profiler provides routine and statement level profiling, interactive browsing, and typeset hardcopy integrated into an existing graphical debugger. This integration allows entire programs or program fragments...
Multiprocessor systems are available at moderate costs, but they generally lack high-speed multiwindow colour image visualization capabilities. A multiprocessor multiwindow parallel visualization subsystem is presented which can he hooked onto parallel processor arrays or high-speed network interfaces (FDDI, ATM broadband). Thanks to its well-balanced triple transputer architecture, the multi-window...
We describe an integrated approach to support debugging of nondeterministic concurrent programs. Our tool provides reproducible program behavior and incorporates mechanisms to identify synchronization bugs commonly termed data races or access anomalies. Both features are based on partially ordered event logs captured at run time. Our mechanism identifies a race condition that is guaranteed to be unaffected...
The paper presents an overview of C_NET, a programming environment that has been specially designed to allow for the development of phase-reconfigurable programs on the SuperNode multiprocessor. The design decisions concerning dynamic-reconfiguration handling are discussed with regard to the architectural constraints of the machine. The software architecture is carefully described.
P++ is an innovative parallel array class library for structured grid applications on distributed memory multiprocessor architectures. It is implemented in standard C++ using a serial array class library and a portable communications library. P++ allows for software development in the preferred serial environment and such software to be efficiently run, unchanged, on parallel architectures. The added...
EXTENDED PMD is a methodology for detecting communication- and concurrency-related errors in CSP-based languages. A static analysis of the source program is used to build a model which is augmented with dynamic information from a dedicated hardware monitor. These information allow a post-mortem analysis of the program with automatic detection of errors. EXTENDED PMD has been applied to Joyce[1], a...
The algorithm designed in [12, 15] was the very first distributed algorithm to solve the mutual exclusion problem in complete networks by using a dynamic logical tree structure as its basic distributed data structure, viz. a path reversal Iransformation in rooted n-node trees; besides, it was also the first one to achieve a logarithmic average-case message complexity. The present paper proposes a...
We propose a constructive approach for the specification of distributed systems that allows for a detailed analysis of essential invariance properties like liveness or determinism. A meta-language is defined for the specification of interaction-schemes among processes, each assuring some specific invariance properties. An operational Petri-net semantics, defined for these constructs, allows for an...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.