1,721,293 research outputs found

    What have we learnt from using real parallel machines to solve real problems?

    No full text
    We briefly review some key scientific and parallel processing issues in a selection of some 84 existing applications of parallel machines. We include the MIMD hypercube transputer array, BBN Butterfly, and the SIMD ICL DAP, Goodyear MPP and Connection Machine from Thinking Machines. We use a space-time analogy to classify problems and show how a division into synchronous, loosely synchronous and asynchronous problems is helpful. This classifies problems into those suitable for SIMD or MIMD machines and isolates the asynchronous class as that for which major uncertainties as to possible parallelism exist. Interestingly about half of the scientific applications run excellently on SIMD machines with the other half able to take especial advantage of the MIMD architecture

    A string theory for time dependent complex systems and its application to automatic decomposition

    No full text
    We introduce a string or world line formalism that provides a general description of time dependent complex systems. We show that it can be applied to mapping general problems onto both sequential and parallel computers. In principle it unifies the concepts of an optimizing compiler with that of parallel decomposition. We show that it reproduces and smoothly interpolates both our original load balancing methods for loosely synchronous problems and optimal communication and combining algorithms such as index and fold. We evaluate two explicit implementations, the neural_router and neural_accumulator, which use an optimizing neural network

    The Flux-corrected transport algorithm on the NCUBE hypercube

    No full text
    This work describes the implementation of a finite-difference algorithm, incorporating the flux-corrected transport technique, on the NCUBE hypercube. The algorithm is used to study two-dimensional, convectively-dominated fluid flows, and as a sample problem the onset and growth of the Kelvin-Helmholtz instability is investigated. Timing results are presented for a number of different sized problems on hypercubes of dimension up to 9. These results are interpreted by means of a simple performance model. The extension of the algorithm to the three-dimensional case is also discussed

    Optimal matrix algorithms on homogeneous hypercubes

    No full text
    This paper describes a set of concurrent algorithms for matrix algebra, based on a library of collective communication routines for the hypercube. We show how a systematic application of scattering reduces load imbalance. A number of examples are considered (Gaussian elimination, Gauss-Jordan matrix inversion, the power method for eigenvectors, and tridiagonalisation by Householder's method), and the concurrent efficiencies are discussed

    A universal concurrent algorithm for plasma particle-in-cell simulation codes

    No full text
    e have developed a new algorithm for implementation of plasma particle-in-cell (PIC) simulation codes on concurrent processors. This algorithm, termed the universal concurrent PIC algorithm (UC-PIC), has been utilized in a one-dimensional electrostatic PIC code on the JPL Mark III Hypercube parallel computer. To decompose the problem using the UC-PIC algorithm, the physical domain of the simulation is divided into sub-domains, equal in number to the number of processors, such that all sub-domains have roughly equal numbers of particles. For problems with non-uniform particle densities, these sub-domains will be of unequal physical size. Each processor is assigned, a sub-domain, with nearest neighbor sub-domains assigned to nearest neighbor processors. Using this algorithm in the Mark III PIC code, the increase in speed in going from 1 to 32 processors for the dominant portion of code (push time, defined below) was 29, yielding a parallel efficiency of 90%. Although implemented on a hypercube concurrent computer, this algorithm should be also be efficient for PIC codes on other parallel architectures and on sequential computers where part of the data resides in external memory

    PC-CUBE: A Personal Computer Based Hypercube

    Get PDF
    PC-CUBE is an ensemble of IBM PCs or close compatibles connected in the hypercube topology with ordinary computer cables. Communication occurs at the rate of 115.2 K-band via the RS-232 serial links. Available for PC-CUBE is the Crystalline Operating System III (CrOS III), Mercury Operating System, CUBIX and PLOTIX which are parallel I/O and graphics libraries. A CrOS performance monitor was developed to facilitate the measurement of communication and computation time of a program and their effects on performance. Also available are CXLISP, a parallel version of the XLISP interpreter; GRAFIX, some graphics routines for the EGA and CGA; and a general execution profiler for determining execution time spent by program subroutines. PC-CUBE provides a programming environment similar to all hypercube systems running CrOS III, Mercury and CUBIX. In addition, every node (personal computer) has its own graphics display monitor and storage devices. These allow data to be displayed or stored at every processor, which has much instructional value and enables easier debugging of applications. Some application programs which are taken from the book Solving Problems on Concurrent Processors (Fox 88) were implemented with graphics enhancement on PC-CUBE. The applications range from solving the Mandelbrot set, Laplace equation, wave equation, long range force interaction, to WaTor, an ecological simulation

    MAC-CUBE, the Macintosh-based hypercube

    No full text
    The MAC-CUBE is a Macintosh-based hypercube. It uses AppleTalk hardware and software as the medium for the nodal connections. At the physical level AppleTalk has a bus topology. Hypercube connectivity is emulated on the AppleTalk local area network while the hypercube communication protocol is integrated in the AppleTalk software. Available for MAC-CUBE is the Crystalline Operating System III (CrOS III.) MAC-CUBE provides a programming environment similar to any other hypercube systems running CrOS III. It allows inexpensive hands-on experience with a concurrent machine. Data can be displayed on graphics monitor and/or stored locally at each node. In addition to the low cost, these capabilities of the Mac-Cube makes it an indispensable instructional and development tool for parallel processing. Some application programs which are taken from the book Solving Problems on Concurrent Processors [Fox 88] have been implemented with graphics enhancement on Mac-Cube. The applications are solving the Mandelbrot set in the complex plane, and solving a 2-dimensional Laplace equation using finite difference
    corecore