1,685 research outputs found
A task-based approach to parallel parametric linear programming solving, and application to polyhedral computations
Parametric linear programming is a central operation for polyhedral
computations, as well as in certain control applications.Here we propose a
task-based scheme for parallelizing it, with quasi-linear speedup over large
problems.This type of parallel applications is challenging, because several
tasks mightbe computing the same region. In this paper, we are presenting
thealgorithm itself with a parallel redundancy elimination algorithm,
andconducting a thorough performance analysis.Comment: arXiv admin note: text overlap with arXiv:1904.0607
Simplifying Dependent Reductions in the Polyhedral Model
A Reduction -- an accumulation over a set of values, using an associative and
commutative operator -- is a common computation in many numerical computations,
including scientific computations, machine learning, computer vision, and
financial analytics.
Contemporary polyhedral-based compilation techniques make it possible to
optimize reductions, such as prefix sums, in which each component of the
reduction's output potentially shares computation with another component in the
reduction. Therefore an optimizing compiler can identify the computation shared
between multiple components and generate code that computes the shared
computation only once.
These techniques, however, do not support reductions that -- when phrased in
the language of the polyhedral model -- span multiple dependent statements. In
such cases, existing approaches can generate incorrect code that violates the
data dependences of the original, unoptimized program.
In this work, we identify and formalize the optimization of dependent
reductions as an integer bilinear program. We present a heuristic optimization
algorithm that uses an affine sequential schedule of the program to determine
how to simplfy reductions yet still preserve the program's dependences.
We demonstrate that the algorithm provides optimal complexity for a set of
benchmark programs from the literature on probabilistic inference algorithms,
whose performance critically relies on simplifying these reductions. The
complexities for 10 of the 11 programs improve siginifcantly by factors at
least of the sizes of the input data, which are in the range of to
for typical real application inputs. We also confirm the significance of
the improvement by showing speedups in wall-clock time that range from
to over
A Finite-Time Cutting Plane Algorithm for Distributed Mixed Integer Linear Programming
Many problems of interest for cyber-physical network systems can be
formulated as Mixed Integer Linear Programs in which the constraints are
distributed among the agents. In this paper we propose a distributed algorithm
to solve this class of optimization problems in a peer-to-peer network with no
coordinator and with limited computation and communication capabilities. In the
proposed algorithm, at each communication round, agents solve locally a small
LP, generate suitable cutting planes, namely intersection cuts and cost-based
cuts, and communicate a fixed number of active constraints, i.e., a candidate
optimal basis. We prove that, if the cost is integer, the algorithm converges
to the lexicographically minimal optimal solution in a finite number of
communication rounds. Finally, through numerical computations, we analyze the
algorithm convergence as a function of the network size.Comment: 6 pages, 3 figure
Experiments with a Convex Polyhedral Analysis Tool for Logic Programs
Convex polyhedral abstractions of logic programs have been found very useful
in deriving numeric relationships between program arguments in order to prove
program properties and in other areas such as termination and complexity
analysis. We present a tool for constructing polyhedral analyses of
(constraint) logic programs. The aim of the tool is to make available, with a
convenient interface, state-of-the-art techniques for polyhedral analysis such
as delayed widening, narrowing, "widening up-to", and enhanced automatic
selection of widening points. The tool is accessible on the web, permits user
programs to be uploaded and analysed, and is integrated with related program
transformations such as size abstractions and query-answer transformation. We
then report some experiments using the tool, showing how it can be conveniently
used to analyse transition systems arising from models of embedded systems, and
an emulator for a PIC microcontroller which is used for example in wearable
computing systems. We discuss issues including scalability, tradeoffs of
precision and computation time, and other program transformations that can
enhance the results of analysis.Comment: Paper presented at the 17th Workshop on Logic-based Methods in
Programming Environments (WLPE2007
Parametric shortest-path algorithms via tropical geometry
We study parameterized versions of classical algorithms for computing
shortest-path trees. This is most easily expressed in terms of tropical
geometry. Applications include shortest paths in traffic networks with variable
link travel times.Comment: 24 pages and 8 figure
- …