80,189 research outputs found
Structural optimization of numerical programs for high-level synthesis
This thesis introduces a new technique, and its associated tool SOAP, to automatically perform source-to-source optimization of numerical programs, specifically targeting the trade-off among numerical accuracy, latency, and resource usage as a high-level synthesis flow for FPGA implementations. A new intermediate representation, MIR, is introduced to carry out the abstraction and optimization of numerical programs. Equivalent structures in MIRs are efficiently discovered using methods based on formal semantics by taking into account axiomatic rules from real arithmetic, such as associativity, distributivity and others, in tandem with program equivalence rules that enable control-flow restructuring and eliminate redundant array accesses. For the first time, we bring rigorous approaches from software static analysis, specifically formal semantics and abstract interpretation, to bear on program transformation for high-level synthesis. New abstract semantics are developed to generate a computable subset of equivalent MIRs from an original MIR. Using formal semantics, three objectives are calculated for each MIR representing a pipelined numerical program: the accuracy of computation and an estimate of resource utilization in FPGA and the latency of program execution. The optimization of these objectives produces a Pareto frontier consisting of a set of equivalent MIRs. We thus go beyond existing literature by not only optimizing the precision requirements of an implementation, but changing the structure of the implementation itself. Using SOAP to optimize the structure of a variety of real world and artificially generated arithmetic expressions in single precision, we improve either their accuracy or the resource utilization by up to 60%. When applied to a suite of computational intensive numerical programs from PolyBench and Livermore Loops benchmarks, SOAP has generated circuits that enjoy up to a 12x speedup, with a simultaneous 7x increase in accuracy, at a cost of up to 4x more LUTs.Open Acces
AutoBayes: A System for Generating Data Analysis Programs from Statistical Models
Data analysis is an important scientific task which is required whenever information needs to be extracted from raw data. Statistical approaches to data analysis, which use methods from probability theory and numerical analysis, are well-founded but difficult to implement: the development of a statistical data analysis program for any given application is time-consuming and requires substantial knowledge and experience in several areas. In this paper, we describe AutoBayes, a program synthesis system for the generation of data analysis programs from statistical models. A statistical model specifies the properties for each problem variable (i.e., observation or parameter) and its dependencies in the form of a probability distribution. It is a fully declarative problem description, similar in spirit to a set of differential equations. From such a model, AutoBayes generates optimized and fully commented C/C++ code which can be linked dynamically into the Matlab and Octave environments. Code is produced by a schema-guided deductive synthesis process. A schema consists of a code template and applicability constraints which are checked against the model during synthesis using theorem proving technology. AutoBayes augments schema-guided synthesis by symbolic-algebraic computation and can thus derive closed-form solutions for many problems. It is well-suited for tasks like estimating best-fitting model parameters for the given data. Here, we describe AutoBayes's system architecture, in particular the schema-guided synthesis kernel. Its capabilities are illustrated by a number of advanced textbook examples and benchmarks
SWATI: Synthesizing Wordlengths Automatically Using Testing and Induction
In this paper, we present an automated technique SWATI: Synthesizing
Wordlengths Automatically Using Testing and Induction, which uses a combination
of Nelder-Mead optimization based testing, and induction from examples to
automatically synthesize optimal fixedpoint implementation of numerical
routines. The design of numerical software is commonly done using
floating-point arithmetic in design-environments such as Matlab. However, these
designs are often implemented using fixed-point arithmetic for speed and
efficiency reasons especially in embedded systems. The fixed-point
implementation reduces implementation cost, provides better performance, and
reduces power consumption. The conversion from floating-point designs to
fixed-point code is subject to two opposing constraints: (i) the word-width of
fixed-point types must be minimized, and (ii) the outputs of the fixed-point
program must be accurate. In this paper, we propose a new solution to this
problem. Our technique takes the floating-point program, specified accuracy and
an implementation cost model and provides the fixed-point program with
specified accuracy and optimal implementation cost. We demonstrate the
effectiveness of our approach on a set of examples from the domain of automated
control, robotics and digital signal processing
Recommended from our members
Automatic synthesis of analog layout : a survey
A review of recent research in the automatic synthesis of physical geometry for analog integrated circuits is presented. On introduction, an explanation of the difficulties involved in analog layout as opposed to digital layout is covered. Review of the literature then follows. Emphasis is placed on the exposition of general methods for addressing problems specific to analog layout, with the details of specific systems only being given when they surve to illustrate these methods well. The conclusion discusses problems remaining and offers a prediction as to how technology will evolve to solve them. It is argued that although progress has been and will continue to be made in the automation of analog IC layout, due to fundamental differences in the nature of analog IC design as opposed to digital design, it should not be expected that the level of automation of the former will reach that of the latter any time soon
Control of inhomogeneous atomic ensembles of hyperfine qudits
We study the ability to control d-dimensional quantum systems (qudits)
encoded in the hyperfine spin of alkali-metal atoms through the application of
radio- and microwave-frequency magnetic fields in the presence of
inhomogeneities in amplitude and detuning. Such a capability is essential to
the design of robust pulses that mitigate the effects of experimental
uncertainty and also for application to tomographic addressing of particular
members of an extended ensemble. We study the problem of preparing an arbitrary
state in the Hilbert space from an initial fiducial state. We prove that
inhomogeneous control of qudit ensembles is possible based on a semi-analytic
protocol that synthesizes the target through a sequence of alternating rf and
microwave-driven SU(2) rotations in overlapping irreducible subspaces. Several
examples of robust control are studied, and the semi-analytic protocol is
compared to a brute force, full numerical search. For small inhomogeneities, <
1%, both approaches achieve average fidelities greater than 0.99, but the brute
force approach performs superiorly, reaching high fidelities in shorter times
and capable of handling inhomogeneities well beyond experimental uncertainty.
The full numerical search is also applied to tomographic addressing whereby two
different nonclassical states of the spin are produced in two halves of the
ensemble
Synthesizing Switching Controllers for Hybrid Systems by Continuous Invariant Generation
We extend a template-based approach for synthesizing switching controllers
for semi-algebraic hybrid systems, in which all expressions are polynomials.
This is achieved by combining a QE (quantifier elimination)-based method for
generating continuous invariants with a qualitative approach for predefining
templates. Our synthesis method is relatively complete with regard to a given
family of predefined templates. Using qualitative analysis, we discuss
heuristics to reduce the numbers of parameters appearing in the templates. To
avoid too much human interaction in choosing templates as well as the high
computational complexity caused by QE, we further investigate applications of
the SOS (sum-of-squares) relaxation approach and the template polyhedra
approach in continuous invariant generation, which are both well supported by
efficient numerical solvers
An integrated approach to the optimum design of actively controlled composite wings
The importance of interactions among the various disciplines in airplane wing design has been recognized for quite some time. With the introduction of high gain, high authority control systems and the design of thin, flexible, lightweight composite wings, the integrated treatment of control systems, flight mechanics and dynamic aeroelasticity became a necessity. A research program is underway now aimed at extending structural synthesis concepts and methods to the integrated synthesis of lifting surfaces, spanning the disciplines of structures, aerodynamics and control for both analysis and design. Mathematical modeling techniques are carefully selected to be accurate enough for preliminary design purposes of the complicated, built-up lifting surfaces of real aircraft with their multiple design criteria and tight constraints. The presentation opens with some observations on the multidisciplinary nature of wing design. A brief review of some available state of the art practical wing optimization programs and a brief review of current research effort in the field serve to illuminate the motivation and support the direction taken in our research. The goals of this research effort are presented, followed by a description of the analysis and behavior sensitivity techniques used. The presentation concludes with a status report and some forecast of upcoming progress
- …