15 research outputs found
Quantifying fault recovery in multiprocessor systems
Various aspects of reliable computing are formalized and quantified with emphasis on efficient fault recovery. The mathematical model which proves to be most appropriate is provided by the theory of graphs. New measures for fault recovery are developed and the value of elements of the fault recovery vector are observed to depend not only on the computation graph H and the architecture graph G, but also on the specific location of a fault. In the examples, a hypercube is chosen as a representative of parallel computer architecture, and a pipeline as a typical configuration for program execution. Dependability qualities of such a system is defined with or without a fault. These qualities are determined by the resiliency triple defined by three parameters: multiplicity, robustness, and configurability. Parameters for measuring the recovery effectiveness are also introduced in terms of distance, time, and the number of new, used, and moved nodes and edges
Feasible models of computation: three- dimensionality and energy consumption
Using cellular automata as models of parallel machines we investigate the
relation between (r-1)- and r-dimensional machines and constraints for the
energy consumption of r-dimensional machines which are motivated by
fundamental physical limitations for the case r=3. Depending on the
operations which must be considered to dissipate energy (state changes,
communication over unit-length wires, ...), some relations between the
relative performance of 2-dimensional and 3-dimensional machines are
derived. In the light of these results it seems imperative that for
feasible models of computation energy consumption has to be considered as
an additional complexity measure
Some Optimally Adaptive Parallel Graph Algorithms on EREW PRAM Model
The study of graph algorithms is an important area of research in computer science, since graphs offer useful tools to model many real-world situations. The commercial availability of parallel computers have led to the development of efficient parallel graph algorithms.
Using an exclusive-read and exclusive-write (EREW) parallel random access machine (PRAM) as the computation model with a fixed number of processors, we design and analyze parallel algorithms for seven undirected graph problems, such as, connected components, spanning forest, fundamental cycle set, bridges, bipartiteness, assignment problems, and approximate vertex coloring. For all but the last two problems, the input data structure is an unordered list of edges, and divide-and-conquer is the paradigm for designing algorithms. One of the algorithms to solve the assignment problem makes use of an appropriate variant of dynamic programming strategy. An elegant data structure, called the adjacency list matrix, used in a vertex-coloring algorithm avoids the sequential nature of linked adjacency lists.
Each of the proposed algorithms achieves optimal speedup, choosing an optimal granularity (thus exploiting maximum parallelism) which depends on the density or the number of vertices of the given graph. The processor-(time)2 product has been identified as a useful parameter to measure the cost-effectiveness of a parallel algorithm. We derive a lower bound on this measure for each of our algorithms
Visualization of program performance on concurrent computers
A distributed memory concurrent computer (such as a hypercube computer) is inherently a complex system involving the collective and simultaneous interaction of many entities engaged in computation and communication activities. Program performance evaluation in concurrent computer systems requires methods and tools for observing, analyzing, and displaying system performance. This dissertation describes a methodology for collecting and displaying, via a unique graphical approach, performance measurement information from (possibly large) concurrent computer systems. Performance data are generated and collected via instrumentation. The data are then reduced via conventional cluster analysis techniques and converted into a pictorial form to highlight important aspects of program states during execution. Local and summary statistics are calculated. Included in the suite of defined metrics are measures for quantifying and comparing amounts of computation and communication. A novel kind of data plot is introduced to visually display both temporal and spatial information describing system activity. Phenomena such as hot spots of activity are easily observed, and in some cases, patterns inherent in the application algorithms being studied are highly visible. The approach also provides a framework for a visual solution to the problem of mapping a given parallel algorithm to an underlying parallel machine. A prototype implementation applied to several case studies is presented to demonstrate the feasibility and power of the approach
Air Force Institute of Technology Contributions to Air Force Research and Development, Calendar Year 1987
From the introduction:The primary mission of the Air Force Institute of Technology (AFIT) is education, but research and consulting are essential integral elements in the process. This report highlights AFIT\u27s contributions to Air Force research and development activities [in 1987]
The exploitation of parallelism on shared memory multiprocessors
PhD ThesisWith the arrival of many general purpose shared memory multiple processor
(multiprocessor) computers into the commercial arena during the mid-1980's, a
rift has opened between the raw processing power offered by the emerging
hardware and the relative inability of its operating software to effectively deliver
this power to potential users. This rift stems from the fact that, currently, no
computational model with the capability to elegantly express parallel activity is
mature enough to be universally accepted, and used as the basis for programming
languages to exploit the parallelism that multiprocessors offer. To add to this,
there is a lack of software tools to assist programmers in the processes of designing
and debugging parallel programs.
Although much research has been done in the field of programming languages,
no undisputed candidate for the most appropriate language for programming
shared memory multiprocessors has yet been found. This thesis examines why this
state of affairs has arisen and proposes programming language constructs,
together with a programming methodology and environment, to close the ever
widening hardware to software gap.
The novel programming constructs described in this thesis are intended for use
in imperative languages even though they make use of the synchronisation
inherent in the dataflow model by using the semantics of single assignment when
operating on shared data, so giving rise to the term shared values. As there are
several distinct parallel programming paradigms, matching flavours of shared
value are developed to permit the concise expression of these paradigms.The Science and Engineering Research Council
Recommended from our members
Development and application of a parallel chemical compositional reservoir simulator
textSimulation of large-scale and complicated reservoirs requires a large number of gridblocks, which requires a considerable amount of memory and is computationally expensive. One solution to remedy the computational problem is to take advantage of clusters of PCs and high-performance computing (HPC) widely available nowadays. We can run large-scale simulations faster and more efficiently by using parallel processing on these systems. In this research project, we develop a parallel version of an in-house chemical flooding reservoir simulator (UTCHEM), which is the most comprehensive chemical flooding simulator. Every physical feature of the original code has been incorporated in the parallel code. The simulation results of several case studies are compared to the original code for verification and performance of the parallelization. The efficiency of the parallelization is evaluated in terms of speedup using multiple numbers of processors. Consequently, we improve the parallel efficiency to carry out the simulations by minimizing the communications among the processors by modifying the coding. The speedup results in comparison to linear speedup (considering the ideal speedup) indicate excellent efficiency. However, using large number of processors causes the simulator speedup to deviate from linear and the efficiency to decrease. The reason for the degradation is that the time devoted to communication between the processors increases with number of processors. To the best of our knowledge, the parallel version of UTCHEM (UTCHEMP) is the first parallel chemical flooding reservoir simulator that can be effective in running large-scale cases. While it is not feasible to simulate large-scale chemical flooding reservoirs with millions of gridblocks in any serial simulator due to computer memory limitations, UTCHEMP makes simulation of such cases practical. Moreover, this parallel simulator can take advantage of multiple processors to run field-scale simulations with millions of gridblocks in few hours.Mechanical Engineerin