Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Alain Darte is active.

Publication


Featured researches published by Alain Darte.


compilers, architecture, and synthesis for embedded systems | 2008

Advanced conservative and optimistic register coalescing

Florent Bouchez; Alain Darte; Fabrice Rastello

In the context of embedded systems, it is crucial to minimize memory transfers to reduce latency and power consumption. Stack access due to variable spilling during register allocation can be significantly reduced using aggressive live-range splitting. However, without a good (conservative) coalescing technique, the benefit of a good spilling may be lost due to the many register-to-register moves introduced. The challenge is thus to find a good trade-off between a too aggressive strategy that could make the interference graph uncolorable without more spilling, and a too conservative strategy that preserves colorability but leaves unnecessary moves. Two main approaches are iterated register coalescing by George and Appel and optimistic coalescing by Park and Moon. The first coalesces moves one by one conservatively. The second coalesces moves regardless of the colorability, then undo coalescings to reduce spilling. Focusing on greedy-k-colorable graphs---which are usually obtained after all spill decisions and, possibly, some split decisions---we show how these two approaches can be improved, optimistic coalescing with a more involved de-coalescing phase, incremental coalescing with a less pessimistic conservative technique. Unlike previous experiments, our results show that optimistic strategies do not outperform conservative ones. Our incremental conservative coalescing performs even better than our improved de-coalescing scheme and leads to about 15% improvement compared to the state-of-the-art optimistic coalescing.


joint international conference on vector and parallel processing parallel processing | 1994

Evaluating Array Expressions on Massively Parallel Machines with Communication/ Computation Overlap

Vincent Bouchitté; Pierre Boulet; Alain Darte; Yves Robert

This paper deals with the problem of evaluating HPF style array expressions on massively parallel distributed-memory computers (DMPCs). This problem has been addressed by Chat-terjee et al. under the strict hypothesis that computations and communications cannot overlap. As such a model appears to be unnecessarily restrictive for modeling state-of-the-art DMPCs, we relax the restriction and we allow for simultaneous computations and communications. This simple modiication has a tremendous eeect on the complexity of the optimal evaluation of array expressions. We rst show that even a simple version of the problem is NP-complete. Then, we present some heuristics, which we are able to guarantee in some very important cases in practice, namely for coarse-grain or ne grain computations.


ACM Transactions in Embedded Computing Systems | 2012

SSI Properties Revisited

Benoit Boissinot; Philip Brisk; Alain Darte; Fabrice Rastello

The static single information (SSI) form is an extension of the static single assignment (SSA) form, a well-established compiler intermediate representation that has been successfully used for numerous compiler analysis and optimizations. Several interesting results have also been shown for SSI form concerning liveness analysis and the representation of live-ranges of variables, which could make SSI form appealing for just-in-time compilation. Unfortunately, we have uncovered several mistakes in the previous literature on SSI form, which, admittedly, is already quite sparse. This article corrects the mistakes that are most germane to SSI form. We first explain why the two definitions of SSI form proposed in past literature, first by C. S. Ananian, then by J. Singer, are not equivalent. Our main result is then to prove that basic blocks, and thus program points, can be totally ordered so that live-ranges of variables correspond to intervals on a line, a result that holds for both variants of SSI form. In other words, in SSI form, the intersection graph defined by live-ranges is an interval graph, a stronger structural property than for SSA form for which the intersection graph of live-ranges is chordal. Finally, we show how this structure of live-ranges can be used to simplify liveness analysis.


compiler construction | 2016

Extended lattice-based memory allocation

Alain Darte; Alexandre Isoard; Tomofumi Yuki

This work extends lattice-based memory allocation, an earlier work on memory reuse through array contraction. Such an optimization is used for optimizing high-level programming languages where storage mapping may be abstracted away from programmers and to complement code transformations that introduce intermediate buffers. The main motivation for this extension is to improve the handling of more general forms of specifications we see today, e.g., with loop tiling, pipelining, and other forms of parallelism available in explicitly-parallel languages. Specifically, we handle the case when conflicting constraints (those that describe the array indices that cannot share the same location) are specified as a (non-convex) union of polyhedra. The choice of directions (or basis) of array reuse becomes important when dealing with non-convex specifications. We extend the two dual approaches in the original work to handle unions of polyhedra, and to select a suitable basis. Our final approach relies on a combination of the two, also revealing their links with, on one hand, the construction of multi-dimensional schedules for parallelism and tiling (but with a fundamental difference that we identify) and, on the other hand, the construction of universal reuse vectors (UOV), which was only used so far in a specific context, for schedule-independent mapping.


Archive | 2011

Kernel Offloading with Optimized Remote Accesses

Christophe Alias; Alain Darte; Alexandru Plesco


Archive | 2010

Bounding the Computational Complexity of Flowchart Programs with Multi-dimensional Rankings

Christophe Alias; Alain Darte; Paul Feautrier; Laure Gonnord


Archive | 2008

Program Termination and Worst Time Complexity with Multi-Dimensional Affine Ranking Functions

Christophe Alias; Alain Darte; Paul Feautrier; Laure Gonnord; Clément Quinson


Archive | 2011

Program Analysis and Source-Level Communication Optimizations for High-Level Synthesis

Christophe Alias; Alain Darte; Alexandru Plesco


Algorithmique Parallèle | 1992

Séquencement des nids de boucles

Alain Darte; Yves Robert


Application Specific Array Processors 91 | 1991

Synthesizing systolic algorithms: some recent developments

Alain Darte; Tanguy Risset; Yves Robert

Collaboration


Dive into the Alain Darte's collaboration.

Top Co-Authors

Avatar

Christophe Alias

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Florent Bouchez

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Benoit Boissinot

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Yves Robert

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Alexandre Isoard

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Alexandru Plesco

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Fabrice Baray

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Antoine Fraboulet

Institut national des sciences Appliquées de Lyon

View shared research outputs
Researchain Logo
Decentralizing Knowledge