22,562 research outputs found
Self-Stabilizing Repeated Balls-into-Bins
We study the following synchronous process that we call "repeated
balls-into-bins". The process is started by assigning balls to bins in
an arbitrary way. In every subsequent round, from each non-empty bin one ball
is chosen according to some fixed strategy (random, FIFO, etc), and re-assigned
to one of the bins uniformly at random.
We define a configuration "legitimate" if its maximum load is
. We prove that, starting from any configuration, the
process will converge to a legitimate configuration in linear time and then it
will only take on legitimate configurations over a period of length bounded by
any polynomial in , with high probability (w.h.p.). This implies that the
process is self-stabilizing and that every ball traverses all bins in
rounds, w.h.p
Towards a Maude tool for model checking temporal graph properties
We present our prototypical tool for the verification of graph transformation systems. The major novelty of our tool is that it provides a model checker for temporal graph properties based on counterpart semantics for quantified m-calculi. Our tool can be considered as an instantiation of our approach to counterpart semantics which allows for a neat handling of creation, deletion and merging in systems
with dynamic structure. Our implementation is based on the object-based machinery of Maude, which provides the basics to deal with attributed graphs. Graph transformation
systems are specified with term rewrite rules. The model checker evaluates logical formulae of second-order modal m-calculus in the automatically generated CounterpartModel (a sort of unfolded graph transition system) of the graph transformation system under study. The result of evaluating a formula is a set of assignments for each state, associating node variables to actual nodes
The Complexity of Change
Many combinatorial problems can be formulated as "Can I transform
configuration 1 into configuration 2, if certain transformations only are
allowed?". An example of such a question is: given two k-colourings of a graph,
can I transform the first k-colouring into the second one, by recolouring one
vertex at a time, and always maintaining a proper k-colouring? Another example
is: given two solutions of a SAT-instance, can I transform the first solution
into the second one, by changing the truth value one variable at a time, and
always maintaining a solution of the SAT-instance? Other examples can be found
in many classical puzzles, such as the 15-Puzzle and Rubik's Cube.
In this survey we shall give an overview of some older and more recent work
on this type of problem. The emphasis will be on the computational complexity
of the problems: how hard is it to decide if a certain transformation is
possible or not?Comment: 28 pages, 6 figure
Virtual cluster scheduling through the scheduling graph
This paper presents an instruction scheduling and cluster assignment approach for clustered processors. The proposed technique makes use of a novel representation named the scheduling graph which describes all possible schedules. A powerful deduction process is applied to this graph, reducing at each step the set of possible schedules. In contrast to traditional list scheduling techniques, the proposed scheme tries to establish relations among instructions rather than assigning each instruction to a particular cycle. The main advantage is that wrong or poor schedules can be anticipated and discarded earlier. In addition, cluster assignment of instructions is performed using another novel concept called virtual clusters, which define sets of instructions that must execute in the same cluster. These clusters are managed during the deduction process to identify incompatibilities among instructions. The mapping of virtual to physical clusters is postponed until the scheduling of the instructions has finalized. The advantages this novel approach features include: (1) accurate scheduling information when assigning, and, (2) accurate information of the cluster assignment constraints imposed by scheduling decisions. We have implemented and evaluated the proposed scheme with superblocks extracted from Speclnt95 and MediaBench. The results show that this approach produces better schedules than the previous state-of-the-art. Speed-ups are up to 15%, with average speed-ups ranging from 2.5% (2-Clusters) to 9.5% (4-Clusters).Peer ReviewedPostprint (published version
Computational Complexity of Determining the Barriers to Interface Motion in Random Systems
The low-temperature driven or thermally activated motion of several condensed
matter systems is often modeled by the dynamics of interfaces (co-dimension-1
elastic manifolds) subject to a random potential. Two characteristic
quantitative features of the energy landscape of such a many-degree-of-freedom
system are the ground-state energy and the magnitude of the energy barriers
between given configurations. While the numerical determination of the former
can be accomplished in time polynomial in the system size, it is shown here
that the problem of determining the latter quantity is NP-complete. Exact
computation of barriers is therefore (almost certainly) much more difficult
than determining the exact ground states of interfaces.Comment: 8 pages, figures included, to appear in Phys. Rev.
A unified modulo scheduling and register allocation technique for clustered processors
This work presents a modulo scheduling framework for clustered ILP processors that integrates the cluster assignment, instruction scheduling and register allocation steps in a single phase. This unified approach is more effective than traditional approaches based on sequentially performing some (or all) of the three steps, since it allows optimizing the global code generation problem instead of searching for optimal solutions to each individual step. Besides, it avoids the iterative nature of traditional approaches, which require repeated applications of the three steps until a valid solution is found. The proposed framework includes a mechanism to insert spill code on-the-fly and heuristics to evaluate the quality of partial schedules considering simultaneously inter-cluster communications, memory pressure and register pressure. Transformations that allow trading pressure on a type of resource for another resource are also included. We show that the proposed technique outperforms previously proposed techniques. For instance, the average speed-up for the SPECfp95 is 36% for a 4-cluster configuration.Peer ReviewedPostprint (published version
- …