74,946 research outputs found
Low level conditional move optimization
The high level optimizations are becoming more and more sophisticated, the importance of low level optimizations should not be underestimated. Due to the changes in the inner architecture of modern processors, some optimization techniques may become more or less effective. Existing techniques need, from time to time, to be reconsidered, and new techniques, targeting these modern architectures, may emerge. Due to the growing instruction pipeline of modern processors, recovering after branch mis-predictions is becoming more expensive, and so avoiding that is becoming more critical. In this paper we introduce a novel approach to branch elimination using conditional move operations, namely the CMOVcc instruction group. The inappropriate use of these instructions may result in sensible performance regression, but in many cases they outperform the sequence of a conditional jump and an unconditional move instruction. Our goal is to analyze the usage of CMOVcc in different contexts on modern processors, and based on these results, propose a technique to automatically decide whether the conditional move or the sequence of a conditional jump and an unconditional move should be performed in a given situation
Optimizing the flash-RAM energy trade-off in deeply embedded systems
Deeply embedded systems often have the tightest constraints on energy
consumption, requiring that they consume tiny amounts of current and run on
batteries for years. However, they typically execute code directly from flash,
instead of the more energy efficient RAM. We implement a novel compiler
optimization that exploits the relative efficiency of RAM by statically moving
carefully selected basic blocks from flash to RAM. Our technique uses integer
linear programming, with an energy cost model to select a good set of basic
blocks to place into RAM, without impacting stack or data storage.
We evaluate our optimization on a common ARM microcontroller and succeed in
reducing the average power consumption by up to 41% and reducing energy
consumption by up to 22%, while increasing execution time. A case study is
presented, where an application executes code then sleeps for a period of time.
For this example we show that our optimization could allow the application to
run on battery for up to 32% longer. We also show that for this scenario the
total application energy can be reduced, even if the optimization increases the
execution time of the code
Conditional Task and Motion Planning through an Effort-based Approach
This paper proposes a preliminary work on a Conditional Task and Motion
Planning algorithm able to find a plan that minimizes robot efforts while
solving assigned tasks. Unlike most of the existing approaches that replan a
path only when it becomes unfeasible (e.g., no collision-free paths exist), the
proposed algorithm takes into consideration a replanning procedure whenever an
effort-saving is possible. The effort is here considered as the execution time,
but it is extensible to the robot energy consumption. The computed plan is both
conditional and dynamically adaptable to the unexpected environmental changes.
Based on the theoretical analysis of the algorithm, authors expect their
proposal to be complete and scalable. In progress experiments aim to prove this
investigation
Parametrization of stochastic inputs using generative adversarial networks with application in geology
We investigate artificial neural networks as a parametrization tool for
stochastic inputs in numerical simulations. We address parametrization from the
point of view of emulating the data generating process, instead of explicitly
constructing a parametric form to preserve predefined statistics of the data.
This is done by training a neural network to generate samples from the data
distribution using a recent deep learning technique called generative
adversarial networks. By emulating the data generating process, the relevant
statistics of the data are replicated. The method is assessed in subsurface
flow problems, where effective parametrization of underground properties such
as permeability is important due to the high dimensionality and presence of
high spatial correlations. We experiment with realizations of binary
channelized subsurface permeability and perform uncertainty quantification and
parameter estimation. Results show that the parametrization using generative
adversarial networks is very effective in preserving visual realism as well as
high order statistics of the flow responses, while achieving a dimensionality
reduction of two orders of magnitude
Setting Parameters by Example
We introduce a class of "inverse parametric optimization" problems, in which
one is given both a parametric optimization problem and a desired optimal
solution; the task is to determine parameter values that lead to the given
solution. We describe algorithms for solving such problems for minimum spanning
trees, shortest paths, and other "optimal subgraph" problems, and discuss
applications in multicast routing, vehicle path planning, resource allocation,
and board game programming.Comment: 13 pages, 3 figures. To be presented at 40th IEEE Symp. Foundations
of Computer Science (FOCS '99
Efficient Gaussian Sampling for Solving Large-Scale Inverse Problems using MCMC Methods
The resolution of many large-scale inverse problems using MCMC methods
requires a step of drawing samples from a high dimensional Gaussian
distribution. While direct Gaussian sampling techniques, such as those based on
Cholesky factorization, induce an excessive numerical complexity and memory
requirement, sequential coordinate sampling methods present a low rate of
convergence. Based on the reversible jump Markov chain framework, this paper
proposes an efficient Gaussian sampling algorithm having a reduced computation
cost and memory usage. The main feature of the algorithm is to perform an
approximate resolution of a linear system with a truncation level adjusted
using a self-tuning adaptive scheme allowing to achieve the minimal computation
cost. The connection between this algorithm and some existing strategies is
discussed and its efficiency is illustrated on a linear inverse problem of
image resolution enhancement.Comment: 20 pages, 10 figures, under review for journal publicatio
Game theory of mind
This paper introduces a model of ‘theory of mind’, namely, how we represent the intentions and goals of others to optimise our mutual interactions. We draw on ideas from optimum control and game theory to provide a ‘game theory of mind’. First, we consider the representations of goals in terms of value functions that are prescribed by utility or rewards. Critically, the joint value functions and ensuing behaviour are optimised recursively, under the assumption that I represent your value function, your representation of mine, your representation of my representation of yours, and so on ad infinitum. However, if we assume that the degree of recursion is bounded, then players need to estimate the opponent's degree of recursion (i.e., sophistication) to respond optimally. This induces a problem of inferring the opponent's sophistication, given behavioural exchanges. We show it is possible to deduce whether players make inferences about each other and quantify their sophistication on the basis of choices in sequential games. This rests on comparing generative models of choices with, and without, inference. Model comparison is demonstrated using simulated and real data from a ‘stag-hunt’. Finally, we note that exactly the same sophisticated behaviour can be achieved by optimising the utility function itself (through prosocial utility), producing unsophisticated but apparently altruistic agents. This may be relevant ethologically in hierarchal game theory and coevolution
- …