8,913 research outputs found
LINVIEW: Incremental View Maintenance for Complex Analytical Queries
Many analytics tasks and machine learning problems can be naturally expressed
by iterative linear algebra programs. In this paper, we study the incremental
view maintenance problem for such complex analytical queries. We develop a
framework, called LINVIEW, for capturing deltas of linear algebra programs and
understanding their computational cost. Linear algebra operations tend to cause
an avalanche effect where even very local changes to the input matrices spread
out and infect all of the intermediate results and the final view, causing
incremental view maintenance to lose its performance benefit over
re-evaluation. We develop techniques based on matrix factorizations to contain
such epidemics of change. As a consequence, our techniques make incremental
view maintenance of linear algebra practical and usually substantially cheaper
than re-evaluation. We show, both analytically and experimentally, the
usefulness of these techniques when applied to standard analytics tasks. Our
evaluation demonstrates the efficiency of LINVIEW in generating parallel
incremental programs that outperform re-evaluation techniques by more than an
order of magnitude.Comment: 14 pages, SIGMO
Scalable Performance Analysis of Massively Parallel Stochastic Systems
The accurate performance analysis of large-scale computer and communication systems is directly
inhibited by an exponential growth in the state-space of the underlying Markovian performance
model. This is particularly true when considering massively-parallel architectures
such as cloud or grid computing infrastructures. Nevertheless, an ability to extract quantitative
performance measures such as passage-time distributions from performance models of
these systems is critical for providers of these services. Indeed, without such an ability, they
remain unable to offer realistic end-to-end service level agreements (SLAs) which they can have
any confidence of honouring. Additionally, this must be possible in a short enough period of
time to allow many different parameter combinations in a complex system to be tested. If we
can achieve this rapid performance analysis goal, it will enable service providers and engineers
to determine the cost-optimal behaviour which satisfies the SLAs.
In this thesis, we develop a scalable performance analysis framework for the grouped PEPA
stochastic process algebra. Our approach is based on the approximation of key model quantities
such as means and variances by tractable systems of ordinary differential equations (ODEs).
Crucially, the size of these systems of ODEs is independent of the number of interacting entities
within the model, making these analysis techniques extremely scalable. The reliability of our
approach is directly supported by convergence results and, in some cases, explicit error bounds.
We focus on extracting passage-time measures from performance models since these are very
commonly the language in which a service level agreement is phrased. We design scalable analysis
techniques which can handle passages defined both in terms of entire component populations
as well as individual or tagged members of a large population.
A precise and straightforward specification of a passage-time service level agreement is as important
to the performance engineering process as its evaluation. This is especially true of
large and complex models of industrial-scale systems. To address this, we introduce the unified
stochastic probe framework. Unified stochastic probes are used to generate a model augmentation
which exposes explicitly the SLA measure of interest to the analysis toolkit. In this thesis,
we deploy these probes to define many detailed and derived performance measures that can
be automatically and directly analysed using rapid ODE techniques. In this way, we tackle
applicable problems at many levels of the performance engineering process: from specification
and model representation to efficient and scalable analysis
The LifeV library: engineering mathematics beyond the proof of concept
LifeV is a library for the finite element (FE) solution of partial
differential equations in one, two, and three dimensions. It is written in C++
and designed to run on diverse parallel architectures, including cloud and high
performance computing facilities. In spite of its academic research nature,
meaning a library for the development and testing of new methods, one
distinguishing feature of LifeV is its use on real world problems and it is
intended to provide a tool for many engineering applications. It has been
actually used in computational hemodynamics, including cardiac mechanics and
fluid-structure interaction problems, in porous media, ice sheets dynamics for
both forward and inverse problems. In this paper we give a short overview of
the features of LifeV and its coding paradigms on simple problems. The main
focus is on the parallel environment which is mainly driven by domain
decomposition methods and based on external libraries such as MPI, the Trilinos
project, HDF5 and ParMetis.
Dedicated to the memory of Fausto Saleri.Comment: Review of the LifeV Finite Element librar
Recommended from our members
Preparing sparse solvers for exascale computing.
Sparse solvers provide essential functionality for a wide variety of scientific applications. Highly parallel sparse solvers are essential for continuing advances in high-fidelity, multi-physics and multi-scale simulations, especially as we target exascale platforms. This paper describes the challenges, strategies and progress of the US Department of Energy Exascale Computing project towards providing sparse solvers for exascale computing platforms. We address the demands of systems with thousands of high-performance node devices where exposing concurrency, hiding latency and creating alternative algorithms become essential. The efforts described here are works in progress, highlighting current success and upcoming challenges. This article is part of a discussion meeting issue 'Numerical algorithms for high-performance computational science'
Language-based Abstractions for Dynamical Systems
Ordinary differential equations (ODEs) are the primary means to modelling
dynamical systems in many natural and engineering sciences. The number of
equations required to describe a system with high heterogeneity limits our
capability of effectively performing analyses. This has motivated a large body
of research, across many disciplines, into abstraction techniques that provide
smaller ODE systems while preserving the original dynamics in some appropriate
sense. In this paper we give an overview of a recently proposed
computer-science perspective to this problem, where ODE reduction is recast to
finding an appropriate equivalence relation over ODE variables, akin to
classical models of computation based on labelled transition systems.Comment: In Proceedings QAPL 2017, arXiv:1707.0366
Extended Differential Aggregations in Process Algebra for Performance and Biology
We study aggregations for ordinary differential equations induced by fluid
semantics for Markovian process algebra which can capture the dynamics of
performance models and chemical reaction networks. Whilst previous work has
required perfect symmetry for exact aggregation, we present approximate fluid
lumpability, which makes nearby processes perfectly symmetric after a
perturbation of their parameters. We prove that small perturbations yield
nearby differential trajectories. Numerically, we show that many heterogeneous
processes can be aggregated with negligible errors.Comment: In Proceedings QAPL 2014, arXiv:1406.156
- …