843 research outputs found
Scalable data abstractions for distributed parallel computations
The ability to express a program as a hierarchical composition of parts is an
essential tool in managing the complexity of software and a key abstraction
this provides is to separate the representation of data from the computation.
Many current parallel programming models use a shared memory model to provide
data abstraction but this doesn't scale well with large numbers of cores due to
non-determinism and access latency. This paper proposes a simple programming
model that allows scalable parallel programs to be expressed with distributed
representations of data and it provides the programmer with the flexibility to
employ shared or distributed styles of data-parallelism where applicable. It is
capable of an efficient implementation, and with the provision of a small set
of primitive capabilities in the hardware, it can be compiled to operate
directly on the hardware, in the same way stack-based allocation operates for
subroutines in sequential machines
Generation of realistic white matter substrates with controllable morphology for diffusion MRI simulations
Numerical phantoms have played a key role in the development of diffusion MRI (dMRI)
techniques seeking to estimate features of the microscopic structure of tissue by providing
a ground truth for simulation experiments against which we can validate and compare
techniques. One common limitation of numerical phantoms which represent white matter
(WM) is that they oversimplify the true complex morphology of the tissue which has
been revealed through ex vivo studies. It is important to try to generate WM numerical
phantoms that capture this realistic complexity in order to understand how it impacts the
dMRI signal.
This thesis presents work towards improving the realism of WM numerical phantoms
by generating fibres mimicking natural fibre genesis. A novel phantom generator is
presented which was developed over two works, resulting in Contextual Fibre Growth
(ConFiG). ConFiG grows fibres one-by-one, following simple rules motivated by real
axonal guidance mechanisms. These simple rules enable ConFiG to generate phantoms
with tuneable microstructural features by growing fibres while attempting to meet
morphological targets such as user-specified density and orientation distribution. We
compare ConFiG to the state-of-the-art approach based on packing fibres together by
generating phantoms in a range of fibre configurations including crossing fibre bundles
and orientation dispersion. Results demonstrate that ConFiG produces phantoms with up
to 20% higher densities than the state-of-the-art, particularly in complex configurations
with crossing fibres. We additionally show that the microstructural morphology of
ConFiG phantoms is comparable to real tissue, producing diameter and orientation
distributions close to electron microscopy estimates from real tissue as well as capturing
complex fibre cross sections. ConFiG is applied to investigate the intra-axonal diffusivity
and probe assumptions in a family of dMRI modelling techniques based on spherical
deconvolution (SD), demonstrating that the microscopic variations in fibresâ shapes
affects the diffusion within axons. This leads to variations in the per-fibre signal contrary
to the assumptions inherent in SD which may have a knock-on effect in popular techniques
such as tractography
Approximation Algorithms for Geometric Networks
The main contribution of this thesis is approximation algorithms for several computational geometry problems. The underlying structure for most of the problems studied is a geometric network. A geometric network is, in its abstract form, a set of vertices, pairwise connected with an edge, such that the weight of this connecting edge is the Euclidean distance between the pair of points connected. Such a network may be used to represent a multitude of real-life structures, such as, for example, a set of cities connected with roads. Considering the case that a specific network is given, we study three separate problems. In the first problem we consider the case of interconnected `islands' of well-connected networks, in which shortest paths are computed. In the second problem the input network is a triangulation. We efficiently simplify this triangulation using edge contractions. Finally, we consider individual movement trajectories representing, for example, wild animals where we compute leadership individuals. Next, we consider the case that only a set of vertices is given, and the aim is to actually construct a network. We consider two such problems. In the first one we compute a partition of the vertices into several subsets where, considering the minimum spanning tree (MST) for each subset, we aim to minimize the largest MST. The other problem is to construct a -spanner of low weight fast and simple. We do this by first extending the so-called gap theorem. In addition to the above geometric network problems we also study a problem where we aim to place a set of different sized rectangles, such that the area of their corresponding bounding box is minimized, and such that a grid may be placed over the rectangles. The grid should not intersect any rectangle, and each cell of the grid should contain at most one rectangle. All studied problems are such that they do not easily allow computation of optimal solutions in a feasible time. Instead we consider approximation algorithms, where near-optimal solutions are produced in polynomial time. In addition to the above geometric network problems we also study a problem where we aim to place a set of different sized rectangles, such that the area of their corresponding bounding box is minimized, and such that a grid may be placed over the rectangles. The grid should not intersect any rectangle, and each cell of the grid should contain at most one rectangle. All studied problems are such that they do not easily allow computation of optimal solutions in a feasible time. Instead we consider approximation algorithms, where near-optimal solutions are produced in polynomial time
Recommended from our members
A strategy for mapping unstructured mesh computational mechanics programs onto distributed memory parallel architectures
The motivation of this thesis was to develop strategies that would enable unstructured mesh based computational mechanics codes to exploit the computational advantages offered by distributed memory parallel processors. Strategies that successfully map structured mesh codes onto parallel machines have been developed over the previous decade and used to build a toolkit for automation of the parallelisation process. Extension of the capabilities of this toolkit to include unstructured mesh codes requires new strategies to be developed.
This thesis examines the method of parallelisation by geometric domain decomposition using the single program multi data programming paradigm with explicit message passing. This technique involves splitting (decomposing) the problem definition into P parts that may be distributed over P processors in a parallel machine. Each processor runs the same program and operates only on its part of the problem. Messages passed between the processors allow data exchange to maintain consistency with the original algorithm.
The strategies developed to parallelise unstructured mesh codes should meet a number of requirements:
The algorithms are faithfully reproduced in parallel.
The code is largely unaltered in the parallel version.
The parallel efficiency is maximised.
The techniques should scale to highly parallel systems.
The parallelisation process should become automated.
Techniques and strategies that meet these requirements are developed and tested in this dissertation using a state of the art integrated computational fluid dynamics and solid mechanics code. The results presented demonstrate the importance of the problem partition in the definition of inter-processor communication and hence parallel performance.
The classical measure of partition quality based on the number of cut edges in the mesh partition can be inadequate for real parallel machines. Consideration of the topology of the parallel machine in the mesh partition is demonstrated to be a more significant factor than the number of cut edges in the achieved parallel efficiency. It is shown to be advantageous to allow an increase in the volume of communication in order to achieve an efficient mapping dominated by localised communications. The limitation to parallel performance resulting from communication startup latency is clearly revealed together with strategies to minimise the effect.
The generic application of the techniques to other unstructured mesh codes is discussed in the context of automation of the parallelisation process. Automation of parallelisation based on the developed strategies is presented as possible through the use of run time inspector loops to accurately determine the dependencies that define the necessary inter-processor communication
A parallel adaptive mesh refinement algorithm
Over recent years, Adaptive Mesh Refinement (AMR) algorithms which dynamically match the local resolution of the computational grid to the numerical solution being sought have emerged as powerful tools for solving problems that contain disparate length and time scales. In particular, several workers have demonstrated the effectiveness of employing an adaptive, block-structured hierarchical grid system for simulations of complex shock wave phenomena. Unfortunately, from the parallel algorithm developer's viewpoint, this class of scheme is quite involved; these schemes cannot be distilled down to a small kernel upon which various parallelizing strategies may be tested. However, because of their block-structured nature such schemes are inherently parallel, so all is not lost. In this paper we describe the method by which Quirk's AMR algorithm has been parallelized. This method is built upon just a few simple message passing routines and so it may be implemented across a broad class of MIMD machines. Moreover, the method of parallelization is such that the original serial code is left virtually intact, and so we are left with just a single product to support. The importance of this fact should not be underestimated given the size and complexity of the original algorithm
Some Economists of the Internet
This is a preliminary version of a paper prepared for the Tenth Michigan Public Utility Conference at Western Michigan University March 25-27, 1993. We describe the history, technology and cost structure of the Internet. We also describe a possible smart-market mechanism for pricing traffic on the internet.Center for Research on Economic and Social Theory, Department of Economics, University of Michiganhttp://deepblue.lib.umich.edu/bitstream/2027.42/100873/1/ECON326.pd
- âŠ