<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE raweb PUBLIC "-//INRIA//DTD " "raweb2.dtd">
<raweb xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" year="2012">
  <identification id="moais" isproject="true">
    <shortname>MOAIS</shortname>
    <projectName>PrograMming and scheduling design fOr Applications in Interactive Simulation</projectName>
    <theme-de-recherche>Distributed and High Performance Computing</theme-de-recherche>
    <domaine-de-recherche>Networks, Systems and Services, Distributed Computing</domaine-de-recherche>
    <urlTeam>http://www-id.imag.fr/MOAIS</urlTeam>
    <datecreation type="Project-Team">January 01, 2006 </datecreation>
    <structure_exterieure type="Labs">
      <libelle>Laboratoire d'Informatique de Grenoble (LIG)</libelle>
    </structure_exterieure>
    <structure_exterieure type="Organism">
      <libelle>CNRS</libelle>
    </structure_exterieure>
    <structure_exterieure type="Organism">
      <libelle>Institut polytechnique de Grenoble</libelle>
    </structure_exterieure>
    <structure_exterieure type="Organism">
      <libelle>Université Pierre Mendes-France (Grenoble)</libelle>
    </structure_exterieure>
    <structure_exterieure type="Organism">
      <libelle>Université Joseph Fourier (Grenoble)</libelle>
    </structure_exterieure>
    <UR name="Grenoble"/>
    <keywords>
      <term>Scheduling</term>
      <term>Interactive Computing</term>
      <term>Parallel And Distributed Algorithms</term>
      <term>High Performance Computing</term>
      <term>Fault Tolerance</term>
      <term>Parallel Programming Model</term>
    </keywords>
  </identification>
  <team id="uid1">
    <person key="moais-2006-idm506023551344">
      <firstname>Jean-Louis</firstname>
      <lastname>Roch</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Team leader, Associate Professor</moreinfo>
    </person>
    <person key="i3d-2007-idm365395927136">
      <firstname>Annie</firstname>
      <lastname>Simon</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>Assistant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Inria Administrative Assistant, 40% (from oct.)</moreinfo>
    </person>
    <person key="moais-2011-idm526020989360">
      <firstname>Annie-Claude</firstname>
      <lastname>Vial-Dallais</lastname>
      <affiliation>CNRS</affiliation>
      <categoryPro>Assistant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>CNRS Administrative Assistant, 10%</moreinfo>
    </person>
    <person key="moais-2012-idm144993635024">
      <firstname>Christine</firstname>
      <lastname>Guimet</lastname>
      <affiliation>CNRS</affiliation>
      <categoryPro>Assistant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>CNRS Administrative Assistant, 20%</moreinfo>
    </person>
    <person key="moais-2011-idm526020986288">
      <firstname>Christian</firstname>
      <lastname>Séguy</lastname>
      <affiliation>CNRS</affiliation>
      <categoryPro>Technique</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>CNRS/LIG Engineer, 40%</moreinfo>
    </person>
    <person key="grand-large-2006-idm343610603024">
      <firstname>Pierre</firstname>
      <lastname>Neyron</lastname>
      <affiliation>CNRS</affiliation>
      <categoryPro>Technique</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>CNRS/LIG, Research engineer, 40%</moreinfo>
    </person>
    <person key="runtime-2007-idm186165884704">
      <firstname>François</firstname>
      <lastname>Broquedis</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Associate Professor</moreinfo>
    </person>
    <person key="espresso-2006-idm439299569616">
      <firstname>Thierry</firstname>
      <lastname>Gautier</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Junior Researcher CR1</moreinfo>
    </person>
    <person key="moais-2006-idm506023542064">
      <firstname>Bruno</firstname>
      <lastname>Raffin</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Junior Researcher CR1</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="moais-2006-idm506023527104">
      <firstname>Vincent</firstname>
      <lastname>Danjean</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Associate Professor</moreinfo>
    </person>
    <person key="algorille-2006-idm304998919840">
      <firstname>Pierre-François</firstname>
      <lastname>Dutot</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Associate Professor</moreinfo>
    </person>
    <person key="moais-2006-idm506023529760">
      <firstname>Guillaume</firstname>
      <lastname>Huard</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Associate Professor</moreinfo>
    </person>
    <person key="moais-2006-idm506023538784">
      <firstname>Grégory</firstname>
      <lastname>Mounié</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Associate Professor</moreinfo>
    </person>
    <person key="moais-2006-idm506023536112">
      <firstname>Denis</firstname>
      <lastname>Trystram</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Professor</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="moais-2006-idm506023533056">
      <firstname>Frédéric</firstname>
      <lastname>Wagner</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Associate Professor</moreinfo>
    </person>
    <person key="moais-2009-idm149800293344">
      <firstname>Clément</firstname>
      <lastname>Pernet</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Associate Professor</moreinfo>
    </person>
    <person key="mascotte-2006-idm166460943344">
      <firstname>Joseph</firstname>
      <lastname>Peters</lastname>
      <affiliation>UnivEtrangere</affiliation>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Simon Fraser University, Canada, 2 months</moreinfo>
    </person>
    <person key="moais-2012-idm144993591312">
      <firstname>Wieslaw</firstname>
      <lastname>Kubiak</lastname>
      <affiliation>UnivEtrangere</affiliation>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Memorial University, Canada, 1 month</moreinfo>
    </person>
    <person key="moais-2009-idm149800284160">
      <firstname>Jacek</firstname>
      <lastname>Blazewicz</lastname>
      <affiliation>UnivEtrangere</affiliation>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Poznan University of Technology, 2 months</moreinfo>
    </person>
    <person key="moais-2012-idm144993585168">
      <firstname>Afredo</firstname>
      <lastname>Goldman</lastname>
      <affiliation>UnivEtrangere</affiliation>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>USP Sao Paulo, Brasil, 1 month</moreinfo>
    </person>
    <person key="moais-2012-idm144994643200">
      <firstname>Alexandre</firstname>
      <lastname>Ancel</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>PostDoc</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Petaflow project</moreinfo>
    </person>
    <person key="moais-2011-idm526020908912">
      <firstname>Joachim</firstname>
      <lastname>Lepping</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>PostDoc</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>1 year</moreinfo>
    </person>
    <person key="moais-2010-idm448216626000">
      <firstname>Eric</firstname>
      <lastname>Amat</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>Technique</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2010-2012. Inria Grant (ADT VGATE)</moreinfo>
    </person>
    <person key="moais-2008-idm545079861200">
      <firstname>Mohamed-Slim</firstname>
      <lastname>Bouguerra</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2008, Inria Cordi</moreinfo>
    </person>
    <person key="moais-2011-idm526020933440">
      <firstname>Matthieu</firstname>
      <lastname>Dreher</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2011-2015.</moreinfo>
    </person>
    <person key="moais-2011-idm526020930416">
      <firstname>Stefano Drimon</firstname>
      <lastname>Kurz Mor</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2011-2015, co-tutelle with UFRGS.</moreinfo>
    </person>
    <person key="evasion-2008-idm27259499824">
      <firstname>Marie</firstname>
      <lastname>Durand</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2010-2013. Funded by ANR project REPDYN</moreinfo>
    </person>
    <person key="moais-2006-idm506022539456">
      <firstname>Adel</firstname>
      <lastname>Essafi</lastname>
      <affiliation>UnivEtrangere</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2006, co-tutelle ESST Tunis, Tunisia (Amine Mahjoub)</moreinfo>
    </person>
    <person key="moais-2011-idm526020921232">
      <firstname>Mathias</firstname>
      <lastname>Ettinger</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2011-2015. Funded by Inria contract EDF</moreinfo>
    </person>
    <person key="moais-2010-idm448216586256">
      <firstname>Joao</firstname>
      <lastname>Ferreira Lima</lastname>
      <affiliation>UnivEtrangere</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2010, co-tutelle Grenoble Univ – UFRGS Brazil, CAPES COFECUB</moreinfo>
    </person>
    <person key="moais-2009-idm149800250528">
      <firstname>Ludovic</firstname>
      <lastname>Jacquin</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2009, common to PLANETE and MOAIS</moreinfo>
    </person>
    <person key="moais-2008-idm545078830464">
      <firstname>Christophe</firstname>
      <lastname>Laferrière</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2009, Nano2012-HiPeComp contract</moreinfo>
    </person>
    <person key="moais-2011-idm526020902768">
      <firstname>Florence</firstname>
      <lastname>Monna</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2011, co-advised Paris-6</moreinfo>
    </person>
    <person key="moais-2008-idm545078864528">
      <firstname>Swann</firstname>
      <lastname>Perarnau</lastname>
      <affiliation>UnivFr</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2008, MRNT scholarship</moreinfo>
    </person>
    <person key="moais-2011-idm526020896704">
      <firstname>Vinicius</firstname>
      <lastname>Pinheiro</lastname>
      <affiliation>UnivEtrangere</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2011, co-advised with USP</moreinfo>
    </person>
    <person key="moais-2012-idm144994597600">
      <firstname>Philippe</firstname>
      <lastname>Virouleau</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>Technique</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2012, Engineer ADT KAHWA</moreinfo>
    </person>
    <person key="moais-2012-idm144994594544">
      <firstname>Ziad</firstname>
      <lastname>Sultan</lastname>
      <affiliation>CNRS</affiliation>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>2012-2015, ANR HPAC scholarship</moreinfo>
    </person>
    <person key="moais-2012-idm144994591504">
      <firstname>Martin</firstname>
      <lastname>Xavier</lastname>
      <affiliation>INRIA</affiliation>
      <categoryPro>Technique</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Apprenti, VISIONAIR project</moreinfo>
    </person>
  </team>
  <presentation id="uid2">
    <bodyTitle>Overall Objectives</bodyTitle>
    <subsection id="uid3" level="1">
      <bodyTitle>Introduction</bodyTitle>
      <p>The goal of the MOAIS team-project is to develop the scientific and technological foundations
for parallel programming
that enable to achieve provable
performances on distributed parallel architectures, from
multi-processor systems on chips to computational grids and global
computing platforms.
Beyond the optimization of the application itself, the effective use of a larger number of resources is expected to enhance the performance. This encompasses large scale scientific interactive simulations (such as immersive virtual reality) that involve various resources: input (sensors, cameras, ...), computing units (processors, memory), output (videoprojectors, images wall) that play a prominent role in the development of high performance parallel computing.</p>
      <p>To reach this goal, MOAIS gathers experts in : algorithm design, scheduling, parallel programming (both low level and high level API), interactive applications. The research directions of the MOAIS team are focused on scheduling problems with a multi-criteria performance objective: precision, reactivity, resources consumption, reliability, ...
The originality of the MOAIS approach is to use the application's adaptability to control its scheduling:</p>
      <simplelist>
        <li id="uid4">
          <p noindent="true">the application describes synchronization conditions;</p>
        </li>
        <li id="uid5">
          <p noindent="true">the scheduler computes a schedule that verifies those conditions on the available resources;</p>
        </li>
        <li id="uid6">
          <p noindent="true">each resource behaves independently and performs the decision of the scheduler.</p>
        </li>
      </simplelist>
      <p>To enable the scheduler to drive the execution, the application is modeled by a macro data flow graph, a popular bridging model for parallel
programming (BSP, Nesl, Earth, Jade, Cilk, Athapascan, Smarts, Satin, ...) and scheduling. A node represents the state transition of a given component; edges represent synchronizations between components. However, the application is malleable and this macro data flow is dynamic and recursive: depending on the available resources and/or the required precision, it may be unrolled to increase precision (e.g. zooming on parts of simulation) or enrolled to increase reactivity (e.g. respecting latency constraints). The decision of unrolling/enrolling is taken by the scheduler; the execution of this decision is performed by the application.</p>
      <p>The MOAIS project-team is structured around four axis:</p>
      <simplelist>
        <li id="uid7">
          <p noindent="true"><b>Scheduling</b>: To formalize and study the related scheduling
problems, the critical points are: the modeling of an adaptive
application; the formalization and the optimization of the
multi-objective problems; the design of scalable scheduling
algorithms. We are interested in classical combinatorial
optimization methods (approximation algorithms, theoretical bounds
and complexity analysis), and also in non-standard methods such as Game
Theory.</p>
        </li>
        <li id="uid8">
          <p noindent="true"><b>Adaptive parallel and distributed algorithms</b>: To
design and analyze algorithms that may adapt their execution under
the control of the scheduling, the critical point is that
algorithms are either parallel or distributed; then, adaptation should be
performed locally while ensuring the coherency of results.</p>
        </li>
        <li id="uid9">
          <p noindent="true"><b>Programming interfaces and tools for coordination and execution</b>:
To specify and implement interfaces that express coupling of components with various synchronization constraints, the critical point is to enable an efficient control of the coupling while ensuring coherency. We develop the
<b>Kaapi</b> runtime software that manages the scheduling of multithreaded computations with billions of threads on a virtual architecture with an arbitrary number of resources; Kaapi supports node additions and resilience. Kaapi manages the <i>fine grain</i> scheduling
of the computation part of the application.
To enable parallel application execution and analysis. We develop runtime tools
that support large scale and fault tolerant processes deployment
(<b>TakTuk</b>), visualization of parallel executions on heterogeneous platforms
(<b>Triva</b>), reproducible CPU load generation on many-cores machines
(<b>KRASH</b>).</p>
        </li>
        <li id="uid10">
          <p noindent="true"><b>Interactivity</b>: To improve interactivity, the critical point is scalability. The number of resources (including input and output devices) should be adapted without modification of the application. We develop the <b>FlowVR</b> middleware that enables to configure an application
on a cluster with a fixed set of input and output resources. FlowVR manages the <i>coarse grain</i> scheduling of the whole application and the latency to produce outputs from the inputs.</p>
        </li>
      </simplelist>
      <p>Often, computing platforms have a dynamic behavior.
The dataflow model of computation directly enables to take into account addition of resources. To deal with resilience, we develop softwares that provide <b>fault-tolerance</b> to dataflow computations.
We distinguish non-malicious faults from malicious intrusions. Our approach is based on a checkpoint of the dataflow with bounded and amortized overhead.</p>
    </subsection>
    <subsection id="uid11" level="1">
      <bodyTitle>Highlights of the Year</bodyTitle>
      <simplelist>
        <li id="uid12">
          <p noindent="true">Moais participates to the Kinovis project (leaded by E. Boyer, Morpheo team): Kinovis is the successor of the Grimage platform and has been selected in the equipex call for proposal.</p>
        </li>
      </simplelist>
    </subsection>
  </presentation>
  <fondements id="uid13">
    <bodyTitle>Scientific Foundations</bodyTitle>
    <subsection id="uid14" level="1">
      <bodyTitle>Scheduling</bodyTitle>
      <participants>
        <person key="algorille-2006-idm304998919840">
          <firstname>Pierre-François</firstname>
          <lastname>Dutot</lastname>
        </person>
        <person key="moais-2006-idm506023529760">
          <firstname>Guillaume</firstname>
          <lastname>Huard</lastname>
        </person>
        <person key="moais-2006-idm506023538784">
          <firstname>Grégory</firstname>
          <lastname>Mounié</lastname>
        </person>
        <person key="moais-2006-idm506023551344">
          <firstname>Jean-Louis</firstname>
          <lastname>Roch</lastname>
        </person>
        <person key="moais-2006-idm506023536112">
          <firstname>Denis</firstname>
          <lastname>Trystram</lastname>
        </person>
        <person key="moais-2006-idm506023533056">
          <firstname>Frédéric</firstname>
          <lastname>Wagner</lastname>
        </person>
      </participants>
      <p>
        <i>The goal of this theme is to determine adequate multi-criteria objectives
which are efficient (precision, reactivity, speed) and to study scheduling algorithms
to reach these objectives. </i>
      </p>
      <p>In the context of parallel and distributed processing, the term <i>scheduling</i> is
used with many acceptations. In general, scheduling means assigning tasks of a program (or processes) to the
various components of a system (processors, communication links).</p>
      <p>Researchers within MOAIS have been working on this subject for many years.
They are known for their multiple contributions
for determining the target dates
and processors the tasks of a parallel program should be executed;
especially regarding execution models
(taking into account inter-task communications or any other system features) and
the design of efficient algorithms (for which there exists a performance guarantee
relative to the optimal scheduling).</p>
      <p><b>Parallel tasks model and extensions.</b>
We have contributed to the definition and promotion of modern task models: parallel moldable tasks and divisible load.
For both models, we have developed new techniques to derive efficient scheduling algorithms
(with a good performance guaranty).
We proposed recently some extensions taking into account machine unavailabilities (reservations).</p>
      <p><b>Multi-objective Optimization.</b>
A natural question while designing practical scheduling algorithms is "which criterion should
be optimized ?". Most existing works have been developed for minimizing the
<i>makespan</i> (time of the latest tasks to be executed).
This objective corresponds to a system administrator view who
wants to be able to complete all the waiting jobs as soon as possible.
The user, from his-her point of view, would be more interested in minimizing
the average of the completion times (called <i>minsum</i>) of the whole set of
submitted jobs.
There exist several other objectives which may be pertinent for specific use.
We worked on the problem of designing scheduling algorithms that
optimize simultaneously several objectives with a theoretical guarantee on each objective.
The main issue is that most of the policies are good for one criterion but bad
for another one.</p>
      <p noindent="true">We have proposed an algorithm that is guaranteed for both <i>makespan</i>
and <i>minsum</i>. This algorithm has been implemented for managing the resources of a cluster
of the regional grid CIMENT.
More recently, we extended such analysis to other objectives (makespan and reliability).
We concentrate now on finding good algorithms able to schedule a set of jobs with a large variety
of objectives simultaneously.
For hard problems, we propose approximation of Pareto curves (best compromizes).</p>
      <p><b>Incertainties.</b>
Most of the new execution supports are characterized by a higher complexity in predicting
the parameters (high versatility in desktop grids, machine crash, communication congestion,
cache effects, etc.). We studied some time ago the impact of incertainties on the scheduling algorithms.
There are several ways for dealing with this problem: First, it is possible to design robust algorithms
that can optimized a problem over a set of scenarii, another solution is to design flexible algorithms.
Finally, we promote semi on-line approaches that start from an optimized off-line solution
computed on an initial data set and updated during the execution on the "perturbed" data
(stability analysis).</p>
      <p><b>Game Theory.</b>
Game Theory is a framework that can be used for obtaining good solution of both previous problems
(multi-objective optimization and incertain data).
On the first hand, it can be used as a complement of multi-objective analysis.
On the other hand, it can take into account the incertainties.
We are curently working at formalizing the concept of cooperation.</p>
      <p><b>Scheduling for optimizing parallel time and memory space.</b>
It is well known that parallel time and memory space are two antagonists criteria.
However, for many scientific computations, the use of parallel architectures
is motivated by increasing both the computation power and the memory space.
Also, scheduling for optimizing both parallel time and memory space targets an
important multicriteria objective.
Based on the analysis of the dataflow related to the execution, we have proposed a scheduling algorithm with provable performance.</p>
      <p><b>Coarse-grain scheduling of fine grain multithreaded computations
on heterogeneous platforms.</b>
Designing multi-objective scheduling algorithms is a transversal problem.
Work-stealing scheduling is well studied for fine grain multithreaded computations
with a small critical time: the speed-up is asymptotically optimal.
However, since the number of tasks to manage is huge, the control of the scheduling is
expensive.
We proposed a generalized lock-free cactus stack execution mechanism, to
extend previous results, mainly from Cilk, based on the
<i>work-first principle</i> for strict multi-threaded computations on SMPs
to general multithreaded computations with dataflow dependencies.
The main result is that optimizing the sequential local executions of tasks enables to
amortize the overhead of scheduling. This distributed work-stealing
scheduling algorithm has been implemented in <b>Kaapi</b>.</p>
    </subsection>
    <subsection id="uid15" level="1">
      <bodyTitle>Adaptive Parallel and Distributed Algorithms Design</bodyTitle>
      <participants>
        <person key="runtime-2007-idm186165884704">
          <firstname>François</firstname>
          <lastname>Broquedis</lastname>
        </person>
        <person key="algorille-2006-idm304998919840">
          <firstname>Pierre-François</firstname>
          <lastname>Dutot</lastname>
        </person>
        <person key="espresso-2006-idm439299569616">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="moais-2006-idm506023529760">
          <firstname>Guillaume</firstname>
          <lastname>Huard</lastname>
        </person>
        <person key="moais-2006-idm506023542064">
          <firstname>Bruno</firstname>
          <lastname>Raffin</lastname>
        </person>
        <person key="moais-2006-idm506023551344">
          <firstname>Jean-Louis</firstname>
          <lastname>Roch</lastname>
        </person>
        <person key="moais-2006-idm506023536112">
          <firstname>Denis</firstname>
          <lastname>Trystram</lastname>
        </person>
        <person key="moais-2006-idm506023533056">
          <firstname>Frédéric</firstname>
          <lastname>Wagner</lastname>
        </person>
      </participants>
      <p>
        <i>This theme deals with the analysis and the design of algorithmic schemes that
control (statically or dynamically) the grain of interactive applications.
</i>
      </p>
      <p>The classical approach consists in setting in advance the number of processors
for an application, the execution being limited to the use of these processors.
This approach is restricted to a constant number of identical resources and
for regular computations.
To deal with irregularity (data and/or computations on the one hand;
heterogeneous and/or dynamical resources on the other hand),
an alternate approach consists in adapting
the potential parallelism degree to the one suited to the resources.
Two cases are distinguished:</p>
      <simplelist>
        <li id="uid16">
          <p noindent="true">in the classical bottom-up approach, the application provides
fine grain tasks; then those tasks are clustered to obtain a minimal parallel degree.</p>
        </li>
        <li id="uid17">
          <p noindent="true">the top-down approach
(Cilk, Cilk+, TBB, Hood, Athapascan) is based on a
work-stealing scheduling driven by idle resources.
A local sequential depth-first execution of tasks is favored when recursive parallelism is available.</p>
        </li>
      </simplelist>
      <p>Ideally, a good parallel execution can be viewed as a flow of computations
flowing through resources with no control overhead. To minimize control overhead, the application has to be adapted: a
parallel algorithm on <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>p</mi></math></formula> resources is not efficient on <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mrow><mi>q</mi><mo>&lt;</mo><mi>p</mi></mrow></math></formula>
resources. On one processor, the scheduler should execute a
sequential algorithm instead of emulating a parallel one. Then,
the scheduler should adapt to resource availability by changing its
underlying algorithm.
This first way of adapting granularity is implemented by Kaapi (default
work-stealing schedule based on work-first principle).</p>
      <p>However, this adaptation is restrictive. More generally, the algorithm
should adapt itself at runtime to improve its performance by
decreasing the overheads induced by parallelism,
namely the arithmetic operations and communications. This motivates the development of new parallel algorithmic schemes
that enable the scheduler to control the distribution between
computation and communication (grain) in the application to
find the good balance between parallelism and synchronizations.
MOAIS has exhibited several techniques to manage adaptivity from an algorithmic
point of view:</p>
      <simplelist>
        <li id="uid18">
          <p noindent="true">amortization of the number of global synchronizations required in an iteration
(for the evaluation of a stopping criterion);</p>
        </li>
        <li id="uid19">
          <p noindent="true">adaptive deployment of an application based on on-line discovery and performance
measurements of communication links;</p>
        </li>
        <li id="uid20">
          <p noindent="true">generic recursive cascading of two kind of algorithms: a sequential one, to provide
efficient executions on the local resource, and a parallel one that enables an idle resource to extract parallelism
to dynamically suit the degree of parallelism to the available resources.</p>
        </li>
      </simplelist>
      <p>The generic underlying approach consists in finding a good mix of various
algorithms, what is often called a "poly-algorithm".
Particular instances of this approach are
Atlas library (performance benchmark are used to decide at compile
time the best block size and instruction interleaving for sequential
matrix product) and FFTW library (at run time, the best recursive splitting
of the FFT butterfly scheme is precomputed by dynamic programming).
Both cases rely on pre-benchmarking of the algorithms.
Our approach is more general in the sense that it also enables to
tune the granularity at any time during execution.
The objective is to develop processor oblivious algorithms:
similarly to cache oblivious algorithms,
we define a parallel algorithm as <i>processor-oblivious</i> if no program
variable that depends on architecture parameters, such as the number or processors
or their respective speeds, needs to be tuned to minimize the algorithm runtime.</p>
      <p>We have applied this technique to develop processor
oblivious algorithms for several applications
with provable performance:
iterated and prefix sum (partial sums) computations, stream computations (cipher and
hd-video transformation),
3D image reconstruction (based on the concurrent usage of multi-core and GPU),
loop computations with early termination.
Finally, to validate these novel parallel computation schemes, we developed a
tool named <b>KRASH</b>. This tool is able to generate dynamic CPU load in a
reproducible way on many-cores machines. Thus, by providing the same
experimental conditions to several parallel applications, it enables users to
evaluate the efficiency of resource uses for each approach.</p>
      <p>By optimizing the work-stealing to our adaptive algorithm scheme,
the non-blocking (wait-free) implementation of Kaapi has been designed and leads to the C library X-kaapi.</p>
      <p>Extensions concern the development of algorithms that are both cache and processor oblivious on heterogeneous processors.
The processor algorithms proposed for prefix sums and segmentation of an array are cache oblivious too.</p>
    </subsection>
    <subsection id="uid21" level="1">
      <bodyTitle>Interactivity</bodyTitle>
      <participants>
        <person key="moais-2006-idm506023527104">
          <firstname>Vincent</firstname>
          <lastname>Danjean</lastname>
        </person>
        <person key="algorille-2006-idm304998919840">
          <firstname>Pierre-François</firstname>
          <lastname>Dutot</lastname>
        </person>
        <person key="espresso-2006-idm439299569616">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="moais-2006-idm506023542064">
          <firstname>Bruno</firstname>
          <lastname>Raffin</lastname>
        </person>
        <person key="moais-2006-idm506023551344">
          <firstname>Jean-Louis</firstname>
          <lastname>Roch</lastname>
        </person>
      </participants>
      <p>
        <i>The goal of this theme is to develop approaches to tackle
interactivity in the context of large scale distributed
applications. </i>
      </p>
      <p>We distinguish two types of interactions. A user can
interact with an application having only little insight about the
internal details of the program running. This is typically the case for a
virtual reality application where the user just manipulates 3D
objects. We have a "user-in-the-loop". In opposite, we have an "expert -in-the-loop"
if the user is an expert that knows the limits of the progam that is being executed
and that he can interacts with it to steer the execution. This is the
case for instance when the user can change some parameters during the execution
to improve the convergence of a computation.</p>
      <subsection id="uid22" level="2">
        <bodyTitle>User-in-the-loop</bodyTitle>
        <p>Some applications, like virtual reality applications, must comply with
interactivity constraints. The user should be able to observe and
interact with the application with an acceptable reaction delay. To
reach this goal the user is often ready to accept a lower level of
details. To execute such application on a distributed architecture
requires to balance the workload and
activation frequency of the different tasks. The goal is to optimize
CPU and network resource use to get as close as possible to the
reactivity/level of detail the user expect.</p>
        <p>Virtual reality environments significantly improve the quality of the
interaction by providing advanced interfaces. The display surface
provided by multiple projectors in CAVE -like systems for
instance, allows a high resolution rendering on a
large surface. Stereoscopic visualization gives an information of
depth. Sound and haptic systems (force feedback) can provide extra
information in addition to visualized data. However driving such an
environment requires an important computation power and raises
difficult issues of synchronization to maintain the overall
application coherent while guaranteeing a good latency, bandwidth (or
refresh rate) and level of details. We define the coherency as the
fact that the information provided to the different user senses at a
given moment are related to the same simulated time.</p>
        <p>Today's availability of high performance commodity components
including networks, CPUs as well as graphics or sound cards make it
possible to build large clusters or grid environments providing the
necessary resources to enlarge the class of applications that can
aspire to an interactive execution.
However the approaches usually
used for mid size parallel machines are not adapted. Typically, there
exist two different approaches to handle data exchange between the
processes (or threads). The synchronous (or FIFO) approach ensures
all messages sent are received in the order they were sent. In this
case, a process cannot compute a new state if all incoming buffers do
not store at least one message each. As a consequence, the application
refresh rate is driven by the slowest process. This can be improved
if the user knows the relative speed of each module and specify a
read frequency on each of the incoming buffers. This approach ensures
a strong coherency but impact on latency. This is the approach
commonly used to ensure the global coherency of the images displayed
in multi-projector
environments.The other approach, the asynchronous one, comes from sampling systems.
The producer updates data in a shared buffer asynchronously read by
the consumer. Some updates may be lost if the consumer is slower than
the producer. The process refresh rates are therefore totally
independent. Latency is improved as produced data are consumed as
soon as possible, but no coherency is ensured. This approach is
commonly used when coupling haptic and visualization systems. A fine
tuning of the application usually leads to satisfactory results where
the user does not experience major incoherences. However, in both
cases, increasing the number of computing nodes quickly makes
infeasible hand tuning to keep coherency and good performance.</p>
        <p>We propose to develop techniques to manage a distributed interactive
application regarding the following criteria :</p>
        <simplelist>
          <li id="uid23">
            <p noindent="true">latency (the application reactivity);</p>
          </li>
          <li id="uid24">
            <p noindent="true">refresh rate (the application continuity);</p>
          </li>
          <li id="uid25">
            <p noindent="true">coherency (between the different components);</p>
          </li>
          <li id="uid26">
            <p noindent="true">level of detail (the precision of computations).</p>
          </li>
        </simplelist>
        <p>We developed a programming environment, called FlowVR, that enables
the expression and realization of loosen but controlled coherency
policies between data flows. The goal is to give users the
possibility to express a large variety of coherency policies from a
strong coherency based on a synchronous approach to an uncontrolled
coherency based on an asynchronous approach. It enables the user to
loosen coherency where it is acceptable, to improve asynchronism and
thus performance. This approach maximizes the refresh rate and
minimizes the latency given the coherency policy and a fixed level of
details. It still requires the user to tune many parameters. In a
second step, we are planning to explore auto-adaptive techniques
that enable to decrease the number of parameters that must be user
tuned. The goal is to take into account (possibly dynamically) user
specified high level parameters like target latencies, bandwidths and
levels of details, and to have the system automatically adapt to reach
a trade-off given the user wishes and the resources available. Issues
include multi-criterion optimizations, adaptive algorithmic schemes,
distributed decision making, global stability and balance of the
regulation effort.</p>
      </subsection>
      <subsection id="uid27" level="2">
        <bodyTitle>Expert-in-the-loop</bodyTitle>
        <p>Some applications can be interactively guided by an expert
who may give advices or answer specific questions to hasten a problem
resolution. A theoretical framework has been developed in the last
decade to define precisely the complexity of a problem when
interactions with an expert is allowed. We are studying these
interactive proof systems and interactive complexity classes in order
to define efficient interactive algorithms dedicated to scheduling
problems. This, in particular, applies to load-balancing of interactive
simulations when a user interaction can generate a sudden surge of
imbalance which could be easily predicted by an operator.</p>
      </subsection>
    </subsection>
    <subsection id="uid28" level="1">
      <bodyTitle>Adaptive middleware for code coupling and data movements</bodyTitle>
      <participants>
        <person key="runtime-2007-idm186165884704">
          <firstname>François</firstname>
          <lastname>Broquedis</lastname>
        </person>
        <person key="moais-2006-idm506023527104">
          <firstname>Vincent</firstname>
          <lastname>Danjean</lastname>
        </person>
        <person key="espresso-2006-idm439299569616">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="moais-2009-idm149800293344">
          <firstname>Clément</firstname>
          <lastname>Pernet</lastname>
        </person>
        <person key="moais-2006-idm506023542064">
          <firstname>Bruno</firstname>
          <lastname>Raffin</lastname>
        </person>
        <person key="moais-2006-idm506023551344">
          <firstname>Jean-Louis</firstname>
          <lastname>Roch</lastname>
        </person>
        <person key="moais-2006-idm506023533056">
          <firstname>Frédéric</firstname>
          <lastname>Wagner</lastname>
        </person>
      </participants>
      <p>
        <i>This theme deals with the
design and implementation of programming interfaces in order to
achieve an efficient coupling of distributed components.
</i>
      </p>
      <p>The implementation of interactive simulation application requires
to assemble together various software components and to ensure
a semantic on the displayed result.
To take into account functional aspects of the computation
(inputs, outputs) as well as non functional aspects (bandwidth, latency, persistence),
elementary actions (method invocation, communication)
have to be coordinated in order to meet
some performance objective
(precision, quality, fluidity, <i>etc</i>).
In such a context the scheduling algorithm plays an important role to adapt
the computational power of a cluster architecture to the dynamic behavior
due to the interactivity. Whatever the scheduling algorithm is, it is fundamental
to enable the control of the simulation.
The purpose of this research theme is to specify the semantics of the
operators that perform components assembling and to develop a prototype
to experiment our proposals on real architectures and applications.</p>
      <subsection id="uid29" level="2">
        <bodyTitle>Application Programming Interface</bodyTitle>
        <p>The specification of an API to compose interactive simulation
application requires to characterize the components and the
interaction between components.The respect of causality between
elementary events ensures, at the application level, that a reader
will see the <i>last</i> write with respect to an order.
Such a consistency should be defined at the level of the application
to control the events ordered by a chain of causality.
For instance, one of the result of Athapascan was to prove that
a data flow consistency is more efficient than other ones
because it generates fewer messages.
Beyond causality based interactions, new
models of interaction should be studied to capture
non predictable events (delay of communication, capture of
image) while ensuring a semantic.</p>
        <p>Our methodology is based on the characterization of
interactions required between components in the context of an
interactive simulation application.
For instance, criteria could be coherency of visualization, degree of interactivity.
Beyond such characterization we hope to provide an operational semantic of interactions (at least well suited and understood by usage) and
a cost model. Moreover they should be preserved by composition
to predict the cost of an execution for part of the application.</p>
        <p>The main result relies on a computable representation of the future of an
execution; representations such as macro data flow are well suited
because they explicit which data are required by a task.
Such a representation can be built at runtime by an interpretation
technique:
the execution of a function call is differed by computing beforehand at
runtime a graph of tasks that represents the (future) calls to execute.</p>
      </subsection>
      <subsection id="uid30" level="2">
        <bodyTitle>Kernel for Asynchronous, Adaptive, Parallel and Interactive Application</bodyTitle>
        <p>Managing the complexity related to fine grain components and reaching
high efficiency on a cluster architecture require to consider
a dynamic behavior.
Also, the runtime kernel is
based on a representation of the execution: data flow
graph with attributes for each node and efficient operators will
be the basis for our software.
This kernel has to be specialized for the considered applications.
The low layer of the kernel has features to transfer data and to perform
remote signalization efficiently.
Well known techniques and legacy code have to be reused.
For instance, multithreading, asynchronous invocation,
overlapping of latency by computing, parallel communication and parallel algorithms for collective operations
are fundamental techniques to reach performance.
Because the choice of the scheduling algorithm depends on the
application and the architecture, the kernel will provide an <i>causally connected representation</i> of the system that
is running. This allows to
specialize the computation of a good schedule of the data flow graph by
providing algorithms (scheduling algorithms for instance) that compute on this (causally
connected) representation: any modification of the representation is turned into
a modification on the system (the parallel program under execution).
Moreover, the kernel provides a set of basic operators to manipulate the graph
(<i>e.g.</i> computes a partition from a schedule, remapping tasks, ...)
to allow to control a distributed execution.</p>
      </subsection>
    </subsection>
  </fondements>
  <domaine id="uid31">
    <bodyTitle>Application Domains</bodyTitle>
    <subsection id="uid32" level="1">
      <bodyTitle>Outline</bodyTitle>
      <p>The scientific methodology of MOAIS consists in:</p>
      <simplelist>
        <li id="uid33">
          <p noindent="true">designing algorithms with provable performance on generic theoretical models.
In particular we develop randomized algorithms for distributed scheduling
and approximate multi-objective optimization theory..</p>
        </li>
        <li id="uid34">
          <p noindent="true">implementing and evaluating those algorithms with our main softwares:</p>
          <simplelist>
            <li id="uid35">
              <p noindent="true">Kaapi for fine grain scheduling of compute-intensive applications;</p>
            </li>
            <li id="uid36">
              <p noindent="true">FlowVR for coarse-grain scheduling of interactive applications;</p>
            </li>
            <li id="uid37">
              <p noindent="true">TakTuk, a tool for large scale remote executions deployment.</p>
            </li>
            <li id="uid38">
              <p noindent="true">Triva, for the visualization of heterogeneous parallel executions.</p>
            </li>
            <li id="uid39">
              <p noindent="true">KRASH, to generate reproducible CPU load on many-cores machines.</p>
            </li>
          </simplelist>
        </li>
        <li id="uid40">
          <p noindent="true">customizing our softwares for their use in real applications studied and developed by other partners. Applications are essential to the validation and further development of MOAIS results.
Application fields are: virtual reality and scientific computing (simulation, visualization, combinatorial optimization, biology, computer algebra). Depending on the application the target architecture ranges from
MPSoCs (multi-processor system on chips), multicore and GPU units to clusters and heterogeneous grids. In all cases, the performance is related to the efficient use of the available, often heterogeneous, parallel resources.</p>
        </li>
      </simplelist>
      <p>MOAIS research is not only oriented towards theory but also focuses on applicative software and hardware platforms developed with external partners. Significant efforts are made to build, manage and maintain these platforms.
We are involved with other teams in four main platforms:</p>
      <simplelist>
        <li id="uid41">
          <p noindent="true">SOFA, a real-time physics simulation engine (<ref xlink:href="http://www.sofa-framework.org/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>sofa-framework.<allowbreak/>org/</ref>;</p>
        </li>
        <li id="uid42">
          <p noindent="true">Grimage, a 3D modeling and high performance 3D rendering platform (<ref xlink:href="http://www.inrialpes.fr/grimage" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>inrialpes.<allowbreak/>fr/<allowbreak/>grimage</ref>) and its evolution with the new Kinovis platform.</p>
        </li>
        <li id="uid43">
          <p noindent="true">Digitalis, a 780 core cluster based on Intel Nehalem processors and Infiniband network. Digitalis is used both for batch computations and interactive applications;</p>
        </li>
        <li id="uid44">
          <p noindent="true">Grid'5000, the exprimental national grid (<ref xlink:href="http://www.grid5000.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>grid5000.<allowbreak/>fr/</ref>).</p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid45" level="1">
      <bodyTitle>Virtual Reality</bodyTitle>
      <participants>
        <person key="espresso-2006-idm439299569616">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="moais-2006-idm506023542064">
          <firstname>Bruno</firstname>
          <lastname>Raffin</lastname>
        </person>
        <person key="moais-2006-idm506023551344">
          <firstname>Jean-Louis</firstname>
          <lastname>Roch</lastname>
        </person>
      </participants>
      <p>We are pursuing and extending existing collaborations to develop virtual
reality applications on PC clusters and grid environments:</p>
      <simplelist>
        <li id="uid46">
          <p noindent="true">Real time 3D modeling. An on-going collaboration with the
MORPHEO project focuses on developing solutions to enable real
time 3D modeling from multiple cameras using a PC cluster.
This work is tightly coupled to the FlowVR software.
Our recent developments take two main directions:</p>
          <simplelist>
            <li id="uid47">
              <p noindent="true">to provide the user a high level of interaction and immersion in
the mixed reality environment. This work is focused on the Grimage platform and its successor, the new equipex Kinovis managed by Morpheo team.
The camera position and orientation need to be precisely known at anytime, requiring to develop on-line calibration approaches. The background subtraction cannot anymore be based on a static background learning for the mobile camera, required here too new algorithms.</p>
            </li>
            <li id="uid48">
              <p noindent="true">Distributed collaboration across distant sites. In the
context of the ANR DALIAn we have developped a collaborative
application where multiple users, distributed in several sites
each using a real time 3D modeling platform, can meet in a virtual world with a
user in Grenoble also using a similar platform.
The main issues are related to data transfers that need to be
carefully managed to ensure a good latency while keeping a good
quality, and the development of new interaction paradigms.
Focusing on distributed scientific simulation, we extend those technologies in the context of the FVNANO and PetaFlow contracts.</p>
            </li>
          </simplelist>
        </li>
        <li id="uid49">
          <p noindent="true">Real time physical simulation. We are collaborating with the
Imagine project on the SOFA simulation framework. Marie Durand
a Ph.D. co-advised by François Faure (IMAGINE) and Bruno Raffin,
works on parallelizing SOFA using the KAAPI programming environment.
The challenge is to provide SOFA with a parallelization that is
efficient (real-time) while not being invasive for SOFA programmers
(usually not parallel programmer). We developed a first version
using the Kaapi environment for SMP machines that relies on a mix
of work-stealing and dependency graph analysis and partitioning.
A second version targets machines with multiples CPUs and multiple GPUs. We extended the
initial framework to support a work stealing based load balancing between
CPUs and GPUs. It required to extend Kaapi to support heterogeneous tasks
(GPU and CPU ones) and to adapt the work stealing strategy to limit
data transfers between CPUs and GPUs (the main bottleneck for GPU computing).</p>
        </li>
        <li id="uid50">
          <p noindent="true">Distant collaborative work. We conduct experiments using
FlowVR for running applications on Grid environments. Two kinds of
experiments will be considered: collaborative work by coupling two
or more distant VR environments ; large scale interactive simulation using
computing resources from the grid. For these experiments, we are
collaborating with the LIFO and the LABRI.</p>
        </li>
        <li id="uid51">
          <p noindent="true">Parallel cache-oblivious algorithms for scientific
visualization. In collaboration with the CEA DAM, we have developed
a cache-oblivious algorithm with provable performance for
irregulars meshes. Based on this work, we are studying parallel
algorithms that take advantage of the shared cache usually
encountered on multi-core architectures (L3 shared cache) and of harware accelerators.
In collaboration with EDF, we develop new parallel algorithms for scientific vizualization (eg VTK) on multicore (phD thesis of Mathias Ettinger).
We are also considering adaptive algorithms to take advantage
of the new trend of computers to integrate several computing units that may have different computing abilities (multicore arithmetic and graphical processing units, eventually integrated
on one chip).
We study balancing workload on multi GPU and CPU architectures for scientific visualization problems.</p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid52" level="1">
      <bodyTitle>Code Coupling and Grid Programming</bodyTitle>
      <participants>
        <person key="runtime-2007-idm186165884704">
          <firstname>François</firstname>
          <lastname>Broquedis</lastname>
        </person>
        <person key="espresso-2006-idm439299569616">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="moais-2006-idm506023551344">
          <firstname>Jean-Louis</firstname>
          <lastname>Roch</lastname>
        </person>
        <person key="moais-2006-idm506023527104">
          <firstname>Vincent</firstname>
          <lastname>Danjean</lastname>
        </person>
        <person key="moais-2006-idm506023533056">
          <firstname>Frédéric</firstname>
          <lastname>Wagner</lastname>
        </person>
      </participants>
      <p>Code coupling aim is to assemble component to build distributed
applications by reusing legacy code. The objective here is to build high
performance applications for cluster and grid infrastructures.</p>
      <simplelist>
        <li id="uid53">
          <p noindent="true"><b>Grid programming model and runtime support.</b>
Programming the grid is a challenging problem. The MOAIS Team has
a strong knowledge in parallel algorithms and develop a runtime support
for scheduling grid program written in a very high level interface.
The parallelism from recursive divide and conquer applications
and those from iterative simulation are studied. Scheduling heuristics
are based on online work stealing for the former class of applications, and
on hierarchical partitioning for the latter. The runtime support provides
capabilities to hide latency by computation thanks to a non-blocking one-side
communication protocol and by re-ordering computational tasks.</p>
        </li>
        <li id="uid54">
          <p noindent="true"><b>Grid application deployment.</b> To test grid
applications, we need to deploy and start programs on all used
computers. This can become difficult if the real topology involves
several clusters with firewall, different runtime environments,
etc. The MOAIS Team designed and implemented a new tool called
<tt>karun</tt> that allows a user to easily deploy a parallel
application wrote with the <span class="smallcap" align="left">Kaapi</span> software. This <span class="smallcap" align="left">Kaapi</span> tool relies on
the <tt>TakTuk</tt> software to quickly launch programs on all
nodes. The user only needs to describe the hierarchical
networks/clusters involved in the experiment with their firewall if
any.</p>
        </li>
        <li id="uid55">
          <p noindent="true"><b>Visualization of grid applications execution.</b> The analysis of
applications execution on the grid is challenging both because of the large
scale of the platform and because of the heterogeneous topology of the
interconnections. To help users to understand their application behavior and to
detect potential bottleneck or load unbalance, the MOAIS team designed and
implemented a tool named <b>Triva</b>. This tool proposes a new three
dimensional visualization model that combines topological information to space
time data collected during the execution. It also proposes an aggregation
mechanism that eases the detection of application load unbalance.</p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid56" level="1">
      <bodyTitle>Safe Distributed Computations</bodyTitle>
      <participants>
        <person key="moais-2006-idm506023527104">
          <firstname>Vincent</firstname>
          <lastname>Danjean</lastname>
        </person>
        <person key="espresso-2006-idm439299569616">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="moais-2009-idm149800293344">
          <firstname>Clément</firstname>
          <lastname>Pernet</lastname>
        </person>
        <person key="moais-2006-idm506023551344">
          <firstname>Jean-Louis</firstname>
          <lastname>Roch</lastname>
        </person>
      </participants>
      <p>Large scale distributed platforms, such as the GRID and Peer-to-Peer computing systems,
gather thousands of nodes for computing parallel applications.
At this scale, component failures, disconnections (fail-stop faults)
or results modifications (malicious faults) are part of operation, and applications have to
deal directly with repeated failures during program runs.
Indeed, since failure rate in such platform is proportional to the number of involved resources,
the mean time between failure is dramatically decreased on very large size architectures.
Moreover, even if a middleware is used to secure the communications and to manage the resources, the computational nodes operate in an unbounded environment and are subject to a wide range of attacks able to break confidentiality or to alter the resources or the computed results. Beyond fault-tolerancy, yet the possibility of massive attacks resulting in an error rate larger than tolerable by the application has to be considered. Such massive attacks are especially
of concern due to Distributed Denial of Service, virus or Trojan attacks, and more generally orchestrated attacks against widespread vulnerabilities of a specific operating system that may result in the corruption of a large
number of resources.
The challenge is then to provide confidence to the parties about the use of such an unbound infrastructure.
The MOAIS team addresses two issues:</p>
      <simplelist>
        <li id="uid57">
          <p noindent="true">fault tolerance (node failures and disconnections):
based on a global distributed consistent state , for the sake of scalability;</p>
        </li>
        <li id="uid58">
          <p noindent="true">security aspects: confidentiality, authentication and integrity of the computations.</p>
        </li>
      </simplelist>
      <p>Our approach to solve those problems is based on the efficient checkpointing of
the dataflow that described the computation at coarse-grain.
This distributed checkpoint, based on the local stack of each work-stealer process, provides a causally linked representation of the state. It is used for a scalable checkpoint/restart protocol and for probabilistic detection of massive attacks.</p>
      <p>Moreover, we study the scalability of security protocols on large scale
infrastructures.
Within the SHIVA contract (global competitiveness cluster Minalogic in Grenoble) and in collaboration with C-S company, the Ph.D. of Ludovic Jacquin (coadvised with the PLANETE EPI)
we developed a high-rate systematic ciphering platform based on the coupling of a multicore architecture with security components (FPGA and smart card) developed by industrial partners.
</p>
    </subsection>
    <subsection id="uid59" level="1">
      <bodyTitle>Embedded Systems</bodyTitle>
      <participants>
        <person key="moais-2006-idm506023551344">
          <firstname>Jean-Louis</firstname>
          <lastname>Roch</lastname>
        </person>
        <person key="moais-2006-idm506023529760">
          <firstname>Guillaume</firstname>
          <lastname>Huard</lastname>
        </person>
        <person key="moais-2006-idm506023536112">
          <firstname>Denis</firstname>
          <lastname>Trystram</lastname>
        </person>
        <person key="moais-2006-idm506023527104">
          <firstname>Vincent</firstname>
          <lastname>Danjean</lastname>
        </person>
      </participants>
      <p>
        <i>To improve the performance of current embedded systems, Multiprocessor
System-on-Chip (MPSoC) offers many advantages, especially in terms of
flexibility and low cost.
Multimedia applications, such as video encoding,
require more and more intensive computations.
The system should be able to exploit the resources as much as possible to save
power and time.
This challenge may be addressed by parallel computing coupled
with performant scheduling.
On-going work focuses on developing the scheduling and monitoring technologies developed in MOAIS
for embedded systems.</i>
      </p>
      <p>
        <i>In the framework of our cooperation with STM (Miguel Santana) and within the SocTrace project,
we are developping tools to manage distributed large scale traces. We especially focus on visualization,
developping visual aggregation techniques (Phd Damien Dosimont, started in 2/2012 advised by Guillaume Huard in collaboration with Jean-Marc Vincent).
</i>
      </p>
    </subsection>
  </domaine>
  <logiciels id="uid60">
    <bodyTitle>Software</bodyTitle>
    <subsection id="uid61" level="1">
      <bodyTitle>
        <ref xlink:href="http://gforge.inria.fr/projects/kaapi" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">KAAPI</ref>
      </bodyTitle>
      <participants>
        <person key="espresso-2006-idm439299569616">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
          <moreinfo>correspondant</moreinfo>
        </person>
        <person key="moais-2006-idm506023527104">
          <firstname>Vincent</firstname>
          <lastname>Danjean</lastname>
        </person>
        <person key="runtime-2007-idm186165884704">
          <firstname>François</firstname>
          <lastname>Broquedis</lastname>
        </person>
        <person key="grand-large-2006-idm343610603024">
          <firstname>Pierre</firstname>
          <lastname>Neyron</lastname>
        </person>
      </participants>
      <p>Kaapi (<ref xlink:href="http://kaapi.gforge.inria.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>kaapi.<allowbreak/>gforge.<allowbreak/>inria.<allowbreak/>fr</ref>, coordinator T. Gautier)
Kaapi is a middleware for high performance applications running on multi-cores/multi- processors as well as cluster or computational grid. Kaapi provides 1/ a very high level API based on macro data flow language; 2/ several scheduling algorithms for multi-threaded computations as well as for iterative applications for numerical sim- ulation on multi-CPUs / multi-GPUs; 3/ fault-tolerant protocols. Publicly available at http://kaapi.gforge.inria.fr under CeCILL licence. Kaapi has won the 2008 Plugtest organized by Grid@Works. Kaapi provides ABI compliant implementa- tions of Quark (PLASMA, Linear Algebra, Univ. of Tennesse) and libGOMP (GCC runtime for OpenMP). Direct competitors with 1/: Quark, StarSs (UPC, BSC), OpenMP. Direct competitors with 2/: StarSs, StarPU (Inria RUNTIME), Quark, OpenACC runtimes. Direct competitors providing 3/: Charm++, MPI.</p>
      <simplelist>
        <li id="uid62">
          <p noindent="true">ACM: D.1.3</p>
        </li>
        <li id="uid63">
          <p noindent="true">License: CeCILL</p>
        </li>
        <li id="uid64">
          <p noindent="true">OS/Middelware: Unix (Linux, MacOSX, ...)</p>
        </li>
        <li id="uid65">
          <p noindent="true">Programming language: C/C++, Fortran</p>
        </li>
      </simplelist>
      <simplelist>
        <li id="uid66">
          <p noindent="true">Characterization of Software : A-3 / SO-4 / SM-3 / EM-3 / SDL-4</p>
        </li>
        <li id="uid67">
          <p noindent="true">Own Contribution: DA-4 / CD-4 / MS-4 / TPM-4</p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid68" level="1">
      <bodyTitle>
        <ref xlink:href="http://flowvr.sourceforge.net" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">FlowVR</ref>
      </bodyTitle>
      <participants>
        <person key="moais-2006-idm506023542064">
          <firstname>Bruno</firstname>
          <lastname>Raffin</lastname>
          <moreinfo>correspondant MOAIS</moreinfo>
        </person>
      </participants>
      <simplelist>
        <li id="uid69">
          <p noindent="true">Characterization of Software : A-3 / SO-4 / SM-3 / EM-3 / SDL-4</p>
        </li>
        <li id="uid70">
          <p noindent="true">Own Contribution: DA-4 / CD-3 / MS-3 / TPM-4</p>
        </li>
        <li id="uid71">
          <p noindent="true">Additional information:
FlowVR (<ref xlink:href="http://flowvr.sf.net" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>flowvr.<allowbreak/>sf.<allowbreak/>net</ref>, coordinator B. Raffin)
provides users with the necessary tools to develop and run high performance interactive applications on PC clusters and Grids. The main target applications include virtual reality, scientific visualization and Web3D. FlowVR enforces a modular programming that leverages software engineering issues while enabling high performance executions on distribued and parallel architectures. FlowVR is the reference API for Grimage.
See also the web page <ref xlink:href="http://flowvr.sf.net" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>flowvr.<allowbreak/>sf.<allowbreak/>net</ref>.
The FlowVR software suite has 3 main components:</p>
          <simplelist>
            <li id="uid72">
              <p noindent="true">FlowVR : The core middleware library. FlowVR relies on the data-flow oriented programming approach that has been successfully used by other scientific visualization tools.</p>
            </li>
            <li id="uid73">
              <p noindent="true">FlowVR Render : A parallel rendering library.</p>
            </li>
            <li id="uid74">
              <p noindent="true">VTK FlowVR : a VTK / FlowVR / FlowVR Render coupling library.</p>
            </li>
          </simplelist>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid75" level="1">
      <bodyTitle>
        <ref xlink:href="http://taktuk.gforge.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">TakTuk - Adaptive large scale remote execution deployment</ref>
      </bodyTitle>
      <participants>
        <person key="moais-2006-idm506023529760">
          <firstname>Guillaume</firstname>
          <lastname>Huard</lastname>
          <moreinfo>correspondant</moreinfo>
        </person>
        <person key="grand-large-2006-idm343610603024">
          <firstname>Pierre</firstname>
          <lastname>Neyron</lastname>
        </person>
      </participants>
      <simplelist>
        <li id="uid76">
          <p noindent="true">Characterization of Software : A-2 / SO-3 / SM-5 / EM-3 / SDL-4</p>
        </li>
        <li id="uid77">
          <p noindent="true">Own Contribution: DA-4 / CD-4 / MS-4 / TPM-4</p>
        </li>
        <li id="uid78">
          <p noindent="true">Additional information:</p>
          <simplelist>
            <li id="uid79">
              <p noindent="true">web site: <ref xlink:href="http://taktuk.gforge.inria.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>taktuk.<allowbreak/>gforge.<allowbreak/>inria.<allowbreak/>fr</ref>, Coordinator G. Huard</p>
            </li>
            <li id="uid80">
              <p noindent="true">Objective of the software:
TakTuk is a tool for deploying parallel remote executions of commands to a potentially large set of remote nodes. It spreads itself using an adaptive algorithm and sets up an interconnection network to transport commands and perform I/Os multiplexing/demultiplexing. The TakTuk mechanics dynamically adapt to environment (machine performance and current load, network contention) by using a reactive work-stealing algorithm that mixes local parallelization and work distribution.</p>
            </li>
            <li id="uid81">
              <p noindent="true">Users community: TakTuk is a research open source project available in the Debian GNU/Linux distribution (package taktuk) used in lower levels of Grid5000 software architectures (nodes monitoring in OAR, environment diffusion in Kadeploy). The community is small : developers and administrators for large scale distributed platforms, but active.</p>
            </li>
            <li id="uid82">
              <p noindent="true">Positioning: main competing tools are pdsh (but uses linear deployment) and gexec (not fault tolerant, requires installation), for more details :
B. Claudel, G. Huard and O. Richard. TakTuk, Adaptive Deployment of Remote Executions. In Proceedings of the International Symposium on High Performance Distributed Computing (HPDC), 2009.
TakTuk is the only tool to provide to deployed processes a communication layer (just like an MPIrun, but not tied to a specific environment) and synchronization capabilities.</p>
            </li>
          </simplelist>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid83" level="1">
      <bodyTitle>
        <ref xlink:href="http://taktuk.gforge.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">KRASH - Kernel for Reproduction and Analysis of System Heterogeneity</ref>
      </bodyTitle>
      <participants>
        <person key="moais-2006-idm506023529760">
          <firstname>Guillaume</firstname>
          <lastname>Huard</lastname>
          <moreinfo>correspondant</moreinfo>
        </person>
        <person key="moais-2008-idm545078864528">
          <firstname>Swann</firstname>
          <lastname>Perarnau</lastname>
        </person>
      </participants>
      <simplelist>
        <li id="uid84">
          <p noindent="true">Characterization of Software : A-1 / SO-3 / SM-4 / EM-2 / SDL-3</p>
        </li>
        <li id="uid85">
          <p noindent="true">Own Contribution: DA-4 / CD-4 / MS-4 / TPM-4</p>
        </li>
        <li id="uid86">
          <p noindent="true">Additional information:</p>
          <simplelist>
            <li id="uid87">
              <p noindent="true">web site: <ref xlink:href="http://krash.ligforge.imag.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>krash.<allowbreak/>ligforge.<allowbreak/>imag.<allowbreak/>fr</ref></p>
            </li>
            <li id="uid88">
              <p noindent="true">Objective of the software:
Krash is a tool to create a synthetic heterogeneity on top of a dedicated system while preserving the OS state and algorithms (no modification). It makes use of the control groups (cgroups) in Linux kernel newer than version 2.6.24 to create a dynamic CPU load enforced no matter how many applications are running in parallel.</p>
            </li>
            <li id="uid89">
              <p noindent="true">Users community:
Research open source project, small community: developers of parallel applications in heterogeneous contexts.</p>
            </li>
            <li id="uid90">
              <p noindent="true">Positioning:
Competing tool is Wreakavoc (less scalable, less precise), more details in :
Swann Perarnau and Guillaume Huard. Krash: Reproducible cpu load generation on many-core machines. In IEEE International Parallel and Distributed Processing Symposium (IPDPS), 2010.</p>
            </li>
          </simplelist>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid91" level="1">
      <bodyTitle>
        <ref xlink:href="http://ccontrol.ligforge.imag.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Cache Control</ref>
      </bodyTitle>
      <participants>
        <person key="moais-2006-idm506023529760">
          <firstname>Guillaume</firstname>
          <lastname>Huard</lastname>
          <moreinfo>correspondant</moreinfo>
        </person>
        <person key="moais-2008-idm545078864528">
          <firstname>Swann</firstname>
          <lastname>Perarnau</lastname>
        </person>
      </participants>
      <simplelist>
        <li id="uid92">
          <p noindent="true">Characterization of Software : A-1 / SO-3 / SM-3 / EM-2 / SDL-3</p>
        </li>
        <li id="uid93">
          <p noindent="true">Own Contribution: DA-4 / CD-4 / MS-4 / TPM-4</p>
        </li>
        <li id="uid94">
          <p noindent="true">Additional information:</p>
          <simplelist>
            <li id="uid95">
              <p noindent="true">web site: <ref xlink:href="http://ccontrol.ligforge.imag.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>ccontrol.<allowbreak/>ligforge.<allowbreak/>imag.<allowbreak/>fr/</ref></p>
            </li>
            <li id="uid96">
              <p noindent="true">Objective of the software:
Cache Control is a Linux kernel module enabling user applications to restrict their memory allocations to a subset of the hardware memory cache.
This module reserves and exports available physical memory as virtual devices that can be mmap'd to. It gives to calling processes physical memory using only a subset of the cache (similarly to page coloring). It actually creates cache partitions that can be used simultaneously by a process to control how much cache a data structure can use.</p>
            </li>
            <li id="uid97">
              <p noindent="true">Users community:
Research open source project, small community: developers wanting to measure or tune the cache usage of their applications. Does not apply to recent NUCA caches.</p>
            </li>
            <li id="uid98">
              <p noindent="true">Positioning:
Competing tool is ULCC which does the same thing at the runtime level, more details in :
Swann Perarnau, Marc Tchiboukdjian, and Guillaume Huard. Controlling cache utilization of hpc applications. In International Conference on Supercomputing (ICS), 2011.</p>
            </li>
          </simplelist>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid99" level="1">
      <bodyTitle>
        <ref xlink:href="http://ggen.ligforge.imag.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">GGen</ref>
      </bodyTitle>
      <participants>
        <person key="moais-2006-idm506023529760">
          <firstname>Guillaume</firstname>
          <lastname>Huard</lastname>
          <moreinfo>correspondant</moreinfo>
        </person>
        <person key="moais-2008-idm545078864528">
          <firstname>Swann</firstname>
          <lastname>Perarnau</lastname>
        </person>
      </participants>
      <simplelist>
        <li id="uid100">
          <p noindent="true">Characterization of Software : A-2 / SO-4 / SM-4 / EM-2 / SDL-3</p>
        </li>
        <li id="uid101">
          <p noindent="true">Own Contribution: DA-4 / CD-4 / MS-4 / TPM-4</p>
        </li>
        <li id="uid102">
          <p noindent="true">Additional information:</p>
          <simplelist>
            <li id="uid103">
              <p noindent="true">web site: <ref xlink:href="http://ggen.ligforge.imag.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>ggen.<allowbreak/>ligforge.<allowbreak/>imag.<allowbreak/>fr/</ref>, Coordinator Swann Perarnau</p>
            </li>
            <li id="uid104">
              <p noindent="true">Objective of the software:
GGen is a free (GPL-compatible) command line application and library for generating and analyzing directed acyclic graphs. Designed primarily to be used in simulations of scheduling algorithms, it helps researchers understand fully the nature of the graphs generated. It implements the most known graph generation algorithms enabling comparisons betweens them.</p>
            </li>
            <li id="uid105">
              <p noindent="true">Users community:
Research open source project, task scheduling community: ggen provides a meaningful way to generate test cases.</p>
            </li>
            <li id="uid106">
              <p noindent="true">Positioning:
To our knowledge, there's no competing tool, more details in :
Daniel Cordeiro, Grégory Mounié, Swann Perarnau, Denis Trystram, Jean-Marc Vincent, and Frédéric Wagner. Random graph generation for scheduling simulations.
In International ICST Conference on Simulation Tools and Techniques (SIMUTools), 2010.</p>
            </li>
          </simplelist>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid107" level="1">
      <bodyTitle>
        <ref xlink:href="http://triva.gforge.inria.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Triva</ref>
      </bodyTitle>
      <participants>
        <person key="moais-2006-idm506023529760">
          <firstname>Guillaume</firstname>
          <lastname>Huard</lastname>
          <moreinfo>correspondant</moreinfo>
        </person>
        <person key="PASUSERID">
          <firstname>Lucas</firstname>
          <lastname>Schnorr</lastname>
        </person>
      </participants>
      <simplelist>
        <li id="uid108">
          <p noindent="true">Characterization of Software : A-2 / SO-4 / SM-5 / EM-3 / SDL-3</p>
        </li>
        <li id="uid109">
          <p noindent="true">Own Contribution: DA-4 / CD-3 / MS-3 / TPM-3</p>
        </li>
        <li id="uid110">
          <p noindent="true">Additional information:</p>
          <simplelist>
            <li id="uid111">
              <p noindent="true">web site: <ref xlink:href="http://triva.gforge.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>triva.<allowbreak/>gforge.<allowbreak/>inria.<allowbreak/>fr/</ref>, Coordinator, Lucas Schnorr</p>
            </li>
            <li id="uid112">
              <p noindent="true">Objective of the software:
Triva is an open-source tool used to analyze traces (in the pajé format) registered during the execution of parallel applications. The tool serves also as a sandbox to the development of new visualization techniques.</p>
            </li>
            <li id="uid113">
              <p noindent="true">Users community:
Research open source project, applications developers, especially parallel applications.</p>
            </li>
            <li id="uid114">
              <p noindent="true">Positioning:
Main competing tools are Vampir (classical 2D Gantt charts) and Tau (less advanced agregation techniques), more details in :
A Hierarchical Aggregation Model to achieve Visualization Scalability in the analysis of Parallel Applications. Lucas Mello Schnorr, Guillaume Huard, Philippe Olivier Alexandre Navaux. Parallel Computing. Volume 38, Issue 3, March 2012.</p>
            </li>
          </simplelist>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid115" level="1">
      <bodyTitle>
        <ref xlink:href="http://oar.imag.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">OAR</ref>
      </bodyTitle>
      <participants>
        <person key="grand-large-2006-idm343610603024">
          <firstname>Pierre</firstname>
          <lastname>Neyron</lastname>
          <moreinfo>correspondant MOAIS</moreinfo>
        </person>
        <person key="moais-2006-idm506023538784">
          <firstname>Grégory</firstname>
          <lastname>Mounié</lastname>
        </person>
      </participants>
      <simplelist>
        <li id="uid116">
          <p noindent="true">Characterization of Software : A-5 / SO-3 / SM-4 / EM-4 / SDL-5</p>
        </li>
        <li id="uid117">
          <p noindent="true">Own Contribution: DA-3 / CD-2 / MS-1 / TPM-1</p>
        </li>
        <li id="uid118">
          <p noindent="true">Additional information:
OAR (<ref xlink:href="http://oar.imag.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>oar.<allowbreak/>imag.<allowbreak/>fr</ref>, Coordinator O. Richard, Inria MESCAL)
is a batch scheduler. The MOAIS team develops the central automata and the scheduling module that includes successive evolutions and improvements of the policy.OAR is used to schedule jobs both on the CiGri (Grenoble region) and Grid50000 (France) grids. CiGri is a production grid that federates about 500 heterogeneous resources of various Grenoble laboratories to perform computations in physics. MOAIS has also developed the distributed authentication for access to Grid5000.</p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid119" level="1">
      <bodyTitle>
        <ref xlink:href="http://www.sofa-framework.org/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">SOFA</ref>
      </bodyTitle>
      <participants>
        <person key="moais-2006-idm506023542064">
          <firstname>Bruno</firstname>
          <lastname>Raffin</lastname>
          <moreinfo>correspondant</moreinfo>
        </person>
      </participants>
      <p>Inria category: ????</p>
      <simplelist>
        <li id="uid120">
          <p noindent="true">Characterization of Software : A-5 / SO-4 / SM-4 / EM-4 / SDL-5</p>
        </li>
        <li id="uid121">
          <p noindent="true">Own Contribution: DA-2 / CD-2 / MS-1 / TPM-1</p>
        </li>
        <li id="uid122">
          <p noindent="true">Additional information:
SOFA (<ref xlink:href="http://www.sofa-framework.org/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>sofa-framework.<allowbreak/>org/</ref>, Coordinator F. Faure, Inria IMAGINE)
is an Open Source framework primarily targeted at real-time simulation, with an emphasis on medical simulation. It is mostly intended for the research community to help develop newer algorithms, but can also be used as an efficient prototyping tool.
Moais contributes to parallelization of kernel algorithms used in the simulation.</p>
        </li>
        <li id="uid123">
          <p noindent="true">ACM: J.3</p>
        </li>
        <li id="uid124">
          <p noindent="true">Programming language: C/C++</p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid125" level="1">
      <bodyTitle>
        <ref xlink:href="http://linalg.org" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">LinBox</ref>
      </bodyTitle>
      <participants>
        <person key="moais-2009-idm149800293344">
          <firstname>Clément</firstname>
          <lastname>Pernet</lastname>
          <moreinfo>correspondant</moreinfo>
        </person>
        <person key="espresso-2006-idm439299569616">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
      </participants>
      <simplelist>
        <li id="uid126">
          <p noindent="true">Characterization of Software : A-3 / SO-4 / SM-2 / EM-3 / SDL-5</p>
        </li>
        <li id="uid127">
          <p noindent="true">Own Contribution: DA-4 / CD-3 / MS-3 / TPM-4</p>
        </li>
        <li id="uid128">
          <p noindent="true">Additional information:</p>
          <simplelist>
            <li id="uid129">
              <p noindent="true">web site: <ref xlink:href="http://linalg.org" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>linalg.<allowbreak/>org</ref></p>
            </li>
            <li id="uid130">
              <p noindent="true">Objective of the software:
LinBox is an open-source C++ template library for exact, high-performance linear
algebra computations. It is considered as the reference library
for numerous computations (such as linear system solving, rank, characteristic polynomial, Smith
normal forms,...) over finite fields and integers with dense, sparse, and
structured matrices.</p>
            </li>
            <li id="uid131">
              <p noindent="true">The LinBox group is an international collaboration (USA: NCSU, UDel; Canada: U Waterloo, U
Calgary; France: LIP, LIRMM, LJK and LIG). Articles related to the library have been published in the
main Conferences of the area: ISSAC, ICMS. MOAIS contributes to its development and more
specifically to its parallelization in the context of ANR HPAC project. It is currently experiencing
a major change of design, to better integrate parallelism.</p>
            </li>
            <li id="uid132">
              <p noindent="true">Users community:
mostly researchers doing computational mathematics (number theory, cryptology,
group theory, persistent homology. They use the library by either linking against it directly (the
library is packaged in Debian, Fedora, etc ) or withing the general purpose math software Sage
(sagemath.org very broad diffusion) which includes LinBox as a kernel for exact linear algebra.</p>
            </li>
          </simplelist>
        </li>
      </simplelist>
    </subsection>
  </logiciels>
  <resultats id="uid133">
    <bodyTitle>New Results</bodyTitle>
    <subsection id="uid134" level="1">
      <bodyTitle>Work Stealing inside GPU</bodyTitle>
      <p>Graphics Processing units (GPU) have become a valuable support for High Performance Computing (HPC) applications. However, despite the many improvements of General Purpose GPUs, the current programming paradigms available, such as NVIDIA?s CUDA, are still low-level and require strong programming effort, especially for irregular applications where dynamic load balancing is a key point to reach high performances.
We have introduced a new hybrid programming scheme for general purpose graphics processors using two levels of parallelism. In the upper level, a program creates, in a lazy fashion, tasks to be scheduled on the different Streaming Multiprocessors (MP), as defined in the NVIDIA?s architecture. We have embedded inside GPU a well-known work stealing algorithm to dynamically balance the workload. At lower level, tasks ex- ploit each Streaming Processor (SP) following a data-parallel approach. Preliminary comparisons on data-parallel iteration over vectors show that this approach is competitive on regular workload over the standard CUDA library Thrust, based on a static scheduling. Nevertheless, our approach outperforms Thrust-based scheduling on irregular workloads.
</p>
    </subsection>
    <subsection id="uid135" level="1">
      <bodyTitle>XKaapi on top of Multi-CPU Multi-GPU</bodyTitle>
      <p>Most recent HPC platforms have heterogeneous nodes composed of a combination of multi-core CPUs and accelerators, like GPUs. Programming such nodes is typically based on a combination of OpenMP and CUDA/OpenCL codes; scheduling relies on a static partitioning and cost model.
We have experiment XKaapi runtime system for multi-CPU and multi-GPU architectures, which supports a data-flow task model and a locality-aware work stealing scheduler. The XKaapi enables task multi-implementation on CPU or GPU and multi-level parallelism with different grain sizes. We demonstrate performance results on two dense linear algebra kernels, matrix product (GEMM) and Cholesky factorization (POTRF), to evaluate XKaapi on a heterogeneous architecture composed of two hexa-core CPUs and eight NVIDIA Fermi GPUs.
Our conclusion is two-fold: First, fine grained parallelism and online scheduling achieve performance results as good as static strategies, and in most cases outperform them. This is due to an improved work stealing strategy that includes locality information; to a very light implementation of the tasks in XKaapi; and to an optimized search for ready tasks. Next, our XKaapi Cholesky is highly efficient on multi-CPU/multi- GPU due to its multi-level parallelism. Using eight NVIDIA Fermi GPUs and four CPUs, we measure up to 2.43 TFlop/s on double precision matrix product and 1.79 TFlop/s on Cholesky factorization; and respectively 5.09 TFlop/s and 3.92 TFlop/s in single precision. This is the first time that such a performance is obtained with more than four GPUs.
</p>
    </subsection>
    <subsection id="uid136" level="1">
      <bodyTitle>Formalizing the concept of cooperation</bodyTitle>
      <p>We study how to optimize scheduling problems for a large number of objectives,
when multiple users are competing for common resources,
with some appropriate notion of fairness between users.
Formalizing the concept of cooperation in relation with multi-objective optimization,
we can refine
the classical methods in combinatorial optimization (that usually optimize one centralized objective)
by introducing extra features (adding more objectives or constraints).
The PhD thesis of Daniel Cordeiro <ref xlink:href="#moais-2012-bid0" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>
proposed various ways for handling this problem:
multi-organization scheduling and its relaxed variant, impact of selfishness. In the same context, we investigated the field of Game Theory through the existence of Nash equilibria in some situations. </p>
    </subsection>
    <subsection id="uid137" level="1">
      <bodyTitle>Fault-tolerance for large parallel systems</bodyTitle>
      <p>This PhD thesis of Slim Bouguerra <ref xlink:href="#moais-2012-bid1" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>
studied fault-tolerance issues for large parallel systems.
We revisited, via a formal proof, the old well-known result which states that the optimal policy for exponential failure law is to
put the check-points at periodic moments. We proposed new algorithms to handle check-points for any law in the input and variable check-point costs (JPDC paper).
</p>
    </subsection>
  </resultats>
  <contrats id="uid138">
    <bodyTitle>Bilateral Contracts and Grants with Industry</bodyTitle>
    <subsection id="uid139" level="1">
      <bodyTitle>Bilateral Grants with Industry</bodyTitle>
      <simplelist>
        <li id="uid140">
          <p noindent="true">Contract with EDF (2010-2013). High performance scientific visualization. Fund 1 postdoc and 1 PhD.
Partners: Inria (MOAIS and EVASION), EDF R&amp;D</p>
        </li>
        <li id="uid141">
          <p noindent="true">HiPeComp, NANO 2008-2012 contract with ST-MicroElectronics. The project HiPeCoMP (High Performance Components for MPSoC) consists in the development an coupling of: on the one hand, wait-free scheduling techniques (pre-partitioning and mapping, on-line work stealing) of component based multimedia applications on MPSoC architectures; and on the other hand, monitoring, debug and performance software tools for the programming of MPSoC with provable performances.</p>
        </li>
        <li id="uid142">
          <p noindent="true">CEA: Contract with CEA (2012): Europlexus Parallelization with
KAAPI. Partners: Inria Rhônes-Alpes and CEA Saclay.</p>
        </li>
      </simplelist>
    </subsection>
  </contrats>
  <partenariat id="uid143">
    <bodyTitle>Partnerships and Cooperations</bodyTitle>
    <subsection id="uid144" level="1">
      <bodyTitle>National Initiatives</bodyTitle>
      <subsection id="uid145" level="2">
        <bodyTitle>ANR</bodyTitle>
        <simplelist>
          <li id="uid146">
            <p noindent="true"><b>ANR grant REPDYN (2010-2012).</b> High performance computing
for structure and fluid computing. Partners: Inria Rhône-Alpes, CEA, ONERA, EDF, LaMSID lab from CNRS and LaMCoS lab from INSA Lyon.</p>
          </li>
          <li id="uid147">
            <p noindent="true"><b>ANR/JST grant PETAFLOW (2010-2012).</b> France/Japan international program. Peta-scale data intensive computing with transnational high-speed networking: application to upper airway flow. Inria Rhône-Alpes, Gipsa-lab from UJF, NITC (Japan), Cyber Center of Osaka, DITS (Osaka) and the Visualization Lab of Kyoto.</p>
          </li>
          <li id="uid148">
            <p noindent="true"><b>ANR grant EXAVIZ (2011-2015).</b> Large Scale
Interactive Visual Analysis for Life Science. Partners: Inria Rhône-Alpes, Université d'Orléans, the LBT lab from IBPC, the LIMSI from Université d'Orsay, and the CEMHTI labs from CNRS.</p>
          </li>
          <li id="uid149">
            <p noindent="true"><b>ANR HPAC (2012-2015)</b>. High Performance Algebraic Computing.
Coordinator: UJF (LJK/CASYS team). Partners: project-team MOAIS (Grenoble), project-team ARENAIRE (LIP, Lyon), project-team SALSA (LIP6, Paris), the ARITH group (LIRMM lab, Montpellier).</p>
          </li>
          <li id="uid150">
            <p noindent="true"><b>Equipex Kinovis (2012-2017)</b>. 2.6 Meuros. Large scale
multi-camera platform (extension of the Grimage platform to 60
cameras, depth and X-ray cameras). Coordinator E Boyer, LJK Inria MORPHEO team.
Partners: Inria Rhône-Alpes and the LJK, LIG, LADAF
and GIPSA labs.</p>
          </li>
        </simplelist>
      </subsection>
      <subsection id="uid151" level="2">
        <bodyTitle>Competitivity Clusters</bodyTitle>
        <simplelist>
          <li id="uid152">
            <p noindent="true">CILOE, 2008-2012, Minalogic: This project is to develop tools and high level interfaces for compute- intensive applications for nano and micro-electronic design and optimizations. The partners are: two large companies CS-SI (leader), Bull; three small size companies EDXACT, INFINISCALE, PROBAYES; and four research units Inria, CEA-LETI, GIPSA-LAB, TIMA. For Moais, the contract funds the phD thesis of Jean-Noel Quintin.</p>
          </li>
          <li id="uid153">
            <p noindent="true">SHIVA, Minalogic 2009-2012 contract. This project aims at the development of a high throug- put backbone ciphering that ensures a high level of security for intranet and extranet communi- cations over internet. The partners are: CS-SI (leader); 1 small size companies: Easii-IC (support for Xilinx FPGA) IWall-Mataru (key management), Netheos (customizable FPGA for ciphering); IN- RIA; CEA-LETI (security certification); Grenoble-INP (TIMA lab, integration of cryptography on FPGA); UJF (LJK and Institut Fourier: open cryptographic protocols and handshake; VERIMAG: provable security). Within Inria, the MOAIS and the PLANET teams provide the parallel imple- mentation on a multicore pltaform of IP-Sec and coordination with hardware accelerators (Frog?s and GPUs). The contract funds the phD thesis of Ludovic Jacquin, coadvised by PLANET and MOAIS and a 1 year engineer (Fabrice Schuler, from 11/2010).</p>
          </li>
          <li id="uid154">
            <p noindent="true">SoC-Trace, Minalogic 2011-2014 contract.
This project aims the development of tools for the monitoring and debug of mumticore systems on chip.
Leader: ST-Microelectonic. Partners: Inria (Mescal, Moais); UJF (TIMA, LIG/Hadas); Magilem, ProBayes.
Moais contributes with technics and tools for visual aggregation of application traces.
The contract funds 1 phD thesis and 1 year engineer.</p>
          </li>
        </simplelist>
      </subsection>
    </subsection>
    <subsection id="uid155" level="1">
      <bodyTitle>European Initiatives</bodyTitle>
      <subsection id="uid156" level="2">
        <bodyTitle>FP7 Projects</bodyTitle>
        <subsection id="uid157" level="3">
          <bodyTitle>VISIONAIR</bodyTitle>
          <sanspuceslist>
            <li id="uid158">
              <p noindent="true">Title: VISIONAIR</p>
            </li>
            <li id="uid159">
              <p noindent="true">Type: CAPACITIES (Infrastructures)</p>
            </li>
            <li id="uid160">
              <p noindent="true">Instrument: Combination of COLLABORATIVE PROJECTS and COORDINATION
and SUPPORT ACTIONS (CPCSA)</p>
            </li>
            <li id="uid161">
              <p noindent="true">Duration: February 2011 - January 2015</p>
            </li>
            <li id="uid162">
              <p noindent="true">Coordinator: Grenoble-INP, France</p>
            </li>
            <li id="uid163">
              <p noindent="true">Others partners: <ref xlink:href="http://www.infra-visionair.eu/members.html" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>infra-visionair.<allowbreak/>eu/<allowbreak/>members.<allowbreak/>html</ref></p>
            </li>
            <li id="uid164">
              <p noindent="true">See also: <ref xlink:href="http://www.infra-visionair.eu/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>infra-visionair.<allowbreak/>eu/</ref></p>
            </li>
            <li id="uid165">
              <p noindent="true">VISIONAIR European platform. With the Grimage platform, we participate to the European project Visionair which objective is to provide an infrastructure that gathers advanced visualization and interaction infrastructures. Visionair is leaded by Grenoble-INP (Frédéric Noel, G-Scop lab) and gathers 25 international partners from 12 countries; it has been funded in 2010 and start in Q1 2011.</p>
            </li>
          </sanspuceslist>
        </subsection>
      </subsection>
      <subsection id="uid166" level="2">
        <bodyTitle>Collaborations with Major European Organizations</bodyTitle>
        <simplelist>
          <li id="uid167">
            <p noindent="true"><b>ADT Vcore (2011-2013)</b>. Partners:
Fraunhofer IGD (Darmstad), Inria IMAGINE and MOAIS (Grenoble), SHAMAN and MINT (Lille), VR4i (Rennes), IN SITU (Saclay), SED Sophia Antipolis.
This project is currently an ADT Inria (funds IJD).
Software infrastructure for advanced applications in augnmented and virtual reality.</p>
          </li>
        </simplelist>
      </subsection>
    </subsection>
    <subsection id="uid168" level="1">
      <bodyTitle>International Initiatives</bodyTitle>
      <subsection id="uid169" level="2">
        <bodyTitle>Inria International Partners</bodyTitle>
        <p>MOAIS has a long term collaboration with several universities in
Brazil, and in particular with UFRGS, Porto Alegre and USP, Sao
Paulo. Several mobility grants support these collaborations:</p>
        <simplelist>
          <li id="uid170">
            <p noindent="true">Inria Diode-A associated team (2006-2011),</p>
          </li>
          <li id="uid171">
            <p noindent="true">CNRS/Cnpq (2011-2013).</p>
          </li>
          <li id="uid172">
            <p noindent="true">Inria/Cnpq (2008-2010),</p>
          </li>
          <li id="uid173">
            <p noindent="true">Capes/Cofecub (2006-2007, 2008-2009, 2010-2012),</p>
          </li>
          <li id="uid174">
            <p noindent="true">Associated International Laboratory LICIA
(<ref xlink:href="http://www.inf.ufrgs.br/licia" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>inf.<allowbreak/>ufrgs.<allowbreak/>br/<allowbreak/>licia</ref>) funded by CNRS (since 2011).</p>
          </li>
        </simplelist>
        <p>This collaboration is important to get access to high quality
students. Classically students pursue their PhD in our team full
or half time in "co-tutelle” (double graduation). These PhDs are
almost all funded by Brazil. Over the 2008-2012 period, 5 PhD students
(3 from UFRGS, 2 from USP) were advised at Moais. Initially based on experimented researcher
exchanges, the increase of fundings enabled to involve Master students
that usually stay 2-4 months in our team and often come back later for
a PhD.</p>
      </subsection>
    </subsection>
    <subsection id="uid175" level="1">
      <bodyTitle>International Research Visitors</bodyTitle>
      <subsection id="uid176" level="2">
        <bodyTitle>Visits of International Scientists</bodyTitle>
        <simplelist>
          <li id="uid177">
            <p noindent="true">Wieslaw Kubiak (memorial Univiersity, New Foundland, Canada), invited prof UJF (2 months)</p>
          </li>
          <li id="uid178">
            <p noindent="true">Joseph Peters (SFU Vancouver, Canada, contract INP VOLVIC (3 months)</p>
          </li>
        </simplelist>
        <subsection id="uid179" level="3">
          <bodyTitle>Internships</bodyTitle>
          <sanspuceslist>
            <li id="uid180">
              <p noindent="true">Julio TOSS (from Apr 2012 until Sep 2012)</p>
              <sanspuceslist>
                <li id="uid181">
                  <p noindent="true">Subject: A new programming paradigm for GPU</p>
                </li>
                <li id="uid182">
                  <p noindent="true">Institution: Universidade Federal do Rio Grande do Sul (Brazil)</p>
                </li>
              </sanspuceslist>
            </li>
          </sanspuceslist>
          <sanspuceslist>
            <li id="uid183">
              <p noindent="true">Nikhil BANSAL (from Jun 2012 until Sep 2012)</p>
              <sanspuceslist>
                <li id="uid184">
                  <p noindent="true">Subject: Multi-objective optimization strategies for parallel multi-users applications</p>
                </li>
                <li id="uid185">
                  <p noindent="true">Institution: IIT Delhi (India)</p>
                </li>
              </sanspuceslist>
            </li>
          </sanspuceslist>
        </subsection>
      </subsection>
    </subsection>
  </partenariat>
  <diffusion id="uid186">
    <bodyTitle>Dissemination</bodyTitle>
    <subsection id="uid187" level="1">
      <bodyTitle>Scientific Animation</bodyTitle>
      <descriptionlist>
        <label>ISSAC 2012</label>
        <li id="uid188">
          <p noindent="true">: Treasurer and Local Arrangements committee (the coference held in Grenoble in July 2012)</p>
        </li>
        <label>ComPAS/Renpar 2013</label>
        <li id="uid189">
          <p noindent="true">: Chair of the Program Committee for the next edition of ComPAS/Renpar that will be held at Grenoble in January 2013.</p>
        </li>
        <label>ComPAS/Renpar 2013</label>
        <li id="uid190">
          <p noindent="true">: local organization of ComPAS/Renpar.</p>
        </li>
      </descriptionlist>
    </subsection>
    <subsection id="uid191" level="1">
      <bodyTitle>Teaching - Supervision - Juries</bodyTitle>
      <subsection id="uid192" level="2">
        <bodyTitle>Teaching</bodyTitle>
        <sanspuceslist>
          <li id="uid193">
            <p noindent="true">Master: V Danjean, T Gautier: course "Parallel Programming" (M2), Grenoble University,.</p>
          </li>
          <li id="uid194">
            <p noindent="true">Master: J-L. Roch co-director (Grenoble-INP) with P Elbaz-Vincent (Université Joseph Fourier, Math. Dept) of the Master
"SCCI Security, Cryptology and Coding of Information Systems" (M2)
joined between UJF and INP Grenoble Universities.
This Master, started in 2001, is taught in English from sept 2007
(international Master).</p>
          </li>
          <li id="uid195">
            <p noindent="true">Master: C. Pernet and Denis Trystram are responsible of the first year (M1) of the international
Master of Science in Informatics at Grenoble (MOSIG-M1).</p>
          </li>
          <li id="uid196">
            <p noindent="true">Master: J-L. Roch, "Security models" 24h (M2), Grenoble University</p>
          </li>
          <li id="uid197">
            <p noindent="true">Master: D. Trystram, P.-F. Dutot, J.-L. Roch, "Complexity, approximation theory and randomization" master course (M2) at Grenoble University</p>
          </li>
          <li id="uid198">
            <p noindent="true">Master: François Broquedis. 192 hours per year.
192 hours per year. Engineering school Grenoble-INP/Ensimag, 1st year/L3 and
Master (M1/2nd year and M2/3rd year).</p>
          </li>
          <li id="uid199">
            <p noindent="true">Master: Vincent Danjean. 242 hours per year. Licence (third year) and
Master (first and second year) at Joseph Fourier University. First
to third year of engineering school at Polytech' Grenoble.</p>
          </li>
          <li id="uid200">
            <p noindent="true">Master: Pierre-François Dutot. 226 hours per year. Licence (first
and second year) at IUT2/UPMF (Institut Universitaire Technologique
de l'Université Pierre Mendès-France) and 9 hours Master M2R-ISC
Informatique-Systèmes-Communication at Joseph Fourier University.</p>
          </li>
          <li id="uid201">
            <p noindent="true">Master: Guillaume Huard. 242 hours per year. Licence (first and third year) and
Master (first year) at Joseph Fourier University.</p>
          </li>
          <li id="uid202">
            <p noindent="true">Master: Grégory Mounié. 242 hours per year. Master (first year) and
Computer Science for Non Computer Scientist Post-Master at
Engineering school ENSIMAG and Dept TELECOM, Grenoble-INP.</p>
          </li>
          <li id="uid203">
            <p noindent="true">Master: Clement Pernet. 210 hours per year. University J. Fourier.
Master (first year and second year) and Licence (3rd year).</p>
          </li>
          <li id="uid204">
            <p noindent="true">Master: Bruno Raffin. 22 hours per year. Master at Université d'Orléans and Polytech'Grenoble.</p>
          </li>
          <li id="uid205">
            <p noindent="true">Master: Jean-Louis Roch. 242 hours per year. Engineering school Grenoble-INP/Ensimag and Master
(M1/2nd year and M2/3rd year)</p>
          </li>
          <li id="uid206">
            <p noindent="true">Master: Denis Trystram. 200 hours per year in average, mainly at first level of Engineering School.</p>
          </li>
          <li id="uid207">
            <p noindent="true">Master: Frédéric Wagner. 220 hours per year. Engineering
school ENSIMAG, Grenoble-INP (M1/2nd year and M2/3rd year)
(190h) ; Master DESS/M2-P SCCI Security (30h).</p>
          </li>
        </sanspuceslist>
      </subsection>
    </subsection>
  </diffusion>
  <biblio id="bibliography" html="bibliography" numero="10" titre="Bibliography">
    <biblStruct dedoublkey="1926" id="moais-2012-bid24" type="book" rend="year" n="cite:2012-springer-codes">
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Foundations of Coding: Compression, Encryption, Error-Correction</title>
        <author>
          <persName>
            <foreName>Jean-Guillaume</foreName>
            <surname>Dumas</surname>
            <initial>J.-G.</initial>
          </persName>
          <persName key="moais-2006-idm506023551344">
            <foreName>Jean-Louis</foreName>
            <surname>Roch</surname>
            <initial>J.-L.</initial>
          </persName>
          <persName key="helix-2006-idm43776690976">
            <foreName>Eric</foreName>
            <surname>Tannier</surname>
            <initial>E.</initial>
          </persName>
          <persName>
            <foreName>Sébastien</foreName>
            <surname>Varrette</surname>
            <initial>S.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="1930" id="moais-2012-bid25" type="book" rend="year" n="cite:L12">
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Genetic Fuzzy Scheduling - Development of Rule-based Scheduling Strategies for Parallel Machines</title>
        <author>
          <persName key="moais-2011-idm526020908912">
            <foreName>Joachim</foreName>
            <surname>Lepping</surname>
            <initial>J.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName>AV Akademikerverlag</orgName>
          </publisher>
          <dateStruct>
            <month>July</month>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="https://www.morebooks.de/store/de/book/genetic-fuzzy-scheduling/isbn/978-3-639-43762-1" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>www.<allowbreak/>morebooks.<allowbreak/>de/<allowbreak/>store/<allowbreak/>de/<allowbreak/>book/<allowbreak/>genetic-fuzzy-scheduling/<allowbreak/>isbn/<allowbreak/>978-3-639-43762-1</ref>
        </imprint>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="5568" id="moais-2012-bid1" type="phdthesis" rend="year" n="cite:bouguerra12:_toler">
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Tolérance aux pannes dans des environnements de calcul parallèle et distribué : optimisation des stratégies de sauvegarde/reprise et ordonnancement</title>
        <author>
          <persName key="moais-2008-idm545079861200">
            <foreName>Mohamed Slim</foreName>
            <surname>Bouguerra</surname>
            <initial>M. S.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="school">University of Grenoble</orgName>
          </publisher>
          <dateStruct>
            <month>April</month>
            <year>2012</year>
          </dateStruct>
        </imprint>
      </monogr>
      <note type="typdoc">Ph. D. Thesis</note>
    </biblStruct>
    <biblStruct dedoublkey="5566" id="moais-2012-bid0" type="phdthesis" rend="year" n="cite:cordeiro:tel-00690908">
      <identifiant type="hal" value="tel-00690908"/>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">The impact of cooperation on new high performance computing platforms</title>
        <author>
          <persName key="moais-2007-idm391258010720">
            <foreName>Daniel</foreName>
            <surname>Cordeiro</surname>
            <initial>D.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="school">Université de Grenoble</orgName>
          </publisher>
          <dateStruct>
            <month>February</month>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://tel.archives-ouvertes.fr/tel-00690908" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>tel.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>tel-00690908</ref>
        </imprint>
      </monogr>
      <note type="typdoc">THESE</note>
    </biblStruct>
    <biblStruct dedoublkey="0432" id="moais-2012-bid10" type="article" rend="year" n="cite:10.1109/TC.2012.57">
      <identifiant type="doi" value="10.1109/TC.2012.57"/>
      <analytic>
        <title level="a">Complexity Analysis of Checkpoint Scheduling with Variable Costs</title>
        <author>
          <persName key="moais-2008-idm545079861200">
            <foreName>Mohamed Slim</foreName>
            <surname>Bouguerra</surname>
            <initial>M. S.</initial>
          </persName>
          <persName key="moais-2006-idm506023536112">
            <foreName>Denis</foreName>
            <surname>Trystram</surname>
            <initial>D.</initial>
          </persName>
          <persName key="moais-2006-idm506023533056">
            <foreName>Frédéric</foreName>
            <surname>Wagner</surname>
            <initial>F.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid00804">
        <idno type="issn">0018-9340</idno>
        <title level="j">IEEE Transactions on Computers</title>
        <imprint>
          <biblScope type="volume">99</biblScope>
          <biblScope type="number">PrePrints</biblScope>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://doi.ieeecomputersociety.org/10.1109/TC.2012.57" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>doi.<allowbreak/>ieeecomputersociety.<allowbreak/>org/<allowbreak/>10.<allowbreak/>1109/<allowbreak/>TC.<allowbreak/>2012.<allowbreak/>57</ref>
        </imprint>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="0547" id="moais-2012-bid2" type="article" rend="year" n="cite:durand:hal-00733674">
      <identifiant type="doi" value="10.1080/19648189.2012.716590"/>
      <identifiant type="hal" value="hal-00733674"/>
      <analytic>
        <title level="a">DEM-based simulation of concrete structures on GPU</title>
        <author>
          <persName key="evasion-2008-idm27259499824">
            <foreName>Marie</foreName>
            <surname>Durand</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>Philippe</foreName>
            <surname>Marin</surname>
            <initial>P.</initial>
          </persName>
          <persName key="evasion-2006-idm398237299184">
            <foreName>François</foreName>
            <surname>Faure</surname>
            <initial>F.</initial>
          </persName>
          <persName key="moais-2006-idm506023542064">
            <foreName>Bruno</foreName>
            <surname>Raffin</surname>
            <initial>B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-editorial-board="yes" x-international-audience="yes" id="rid02393">
        <idno type="issn">1964-8189</idno>
        <title level="j">European Journal of Environmental and Civil Engineering</title>
        <imprint>
          <dateStruct>
            <month>August</month>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">1-13</biblScope>
          <ref xlink:href="http://hal.inria.fr/hal-00733674" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00733674</ref>
        </imprint>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="0966" id="moais-2012-bid14" type="article" rend="year" n="cite:FL2012">
      <identifiant type="doi" value=""/>
      <analytic>
        <title level="a">Knowledge Discovery for Scheduling in Computational Grids</title>
        <author>
          <persName>
            <foreName>Alexander</foreName>
            <surname>Fölling</surname>
            <initial>A.</initial>
          </persName>
          <persName key="moais-2011-idm526020908912">
            <foreName>Joachim</foreName>
            <surname>Lepping</surname>
            <initial>J.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid00511">
        <idno type="issn">1384-5810</idno>
        <title level="j">WIREs Data Mining and Knowledge Discovery</title>
        <imprint>
          <biblScope type="volume">2</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">287-297</biblScope>
          <ref xlink:href="http://doi.wiley.com/10.1002/widm.1060" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>doi.<allowbreak/>wiley.<allowbreak/>com/<allowbreak/>10.<allowbreak/>1002/<allowbreak/>widm.<allowbreak/>1060</ref>
        </imprint>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="1316" id="moais-2012-bid13" type="article" rend="year" n="cite:JST11">
      <analytic>
        <title level="a">Optimizing Performance and reliability on heterogeneous parallel systems: Approximation algorithms and heuristics</title>
        <author>
          <persName key="algorille-2006-idm304998941200">
            <foreName>Emmanuel</foreName>
            <surname>Jeannot</surname>
            <initial>E.</initial>
          </persName>
          <persName key="moais-2007-idm391257970640">
            <foreName>Érik</foreName>
            <surname>Saule</surname>
            <initial>É.</initial>
          </persName>
          <persName key="moais-2006-idm506023536112">
            <foreName>Denis</foreName>
            <surname>Trystram</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid01326">
        <idno type="issn">0743-7315</idno>
        <title level="j">Journal of Parallel and Distributed Computing</title>
        <imprint>
          <biblScope type="volume">72</biblScope>
          <biblScope type="number">2</biblScope>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">268-280</biblScope>
        </imprint>
      </monogr>
      <note type="bnote">doi: 10.1016/j.jpdc.2011.11.003</note>
    </biblStruct>
    <biblStruct dedoublkey="0098" id="moais-2012-bid11" type="article" rend="year" n="cite:articlelesage.lr_js08">
      <identifiant type="doi" value="10.1007/s11227-008-0228-7"/>
      <analytic>
        <title level="a">A Hierarchical Component Model for Large Parallel Interactive Applications</title>
        <author>
          <persName key="moais-2006-idm506022550016">
            <foreName>Jean-Denis</foreName>
            <surname>Lesage</surname>
            <initial>J.-D.</initial>
          </persName>
          <persName key="moais-2006-idm506023542064">
            <foreName>Bruno</foreName>
            <surname>Raffin</surname>
            <initial>B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid01360">
        <idno type="issn">0920-8542</idno>
        <title level="j">Journal of Supercomputing</title>
        <imprint>
          <biblScope type="volume">60</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <month>July</month>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">389-409</biblScope>
          <ref xlink:href="http://dx.doi.org/10.1007/s11227-008-0228-7" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>dx.<allowbreak/>doi.<allowbreak/>org/<allowbreak/>10.<allowbreak/>1007/<allowbreak/>s11227-008-0228-7</ref>
        </imprint>
      </monogr>
      <note type="bnote">Extended version of NPC 2007 article.</note>
    </biblStruct>
    <biblStruct dedoublkey="0097" id="moais-2012-bid12" type="article" rend="year" n="cite:DBLP:journals/pc/SchnorrHN12">
      <analytic>
        <title level="a">A hierarchical aggregation model to achieve visualization scalability in the analysis of parallel applications</title>
        <author>
          <persName key="mescal-2009-idm196265750864">
            <foreName>Lucas</foreName>
            <surname>Mello Schnorr</surname>
            <initial>L.</initial>
          </persName>
          <persName key="moais-2006-idm506023529760">
            <foreName>Guillaume</foreName>
            <surname>Huard</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>Philippe Olivier Alexandre</foreName>
            <surname>Navaux</surname>
            <initial>P. O. A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid01648">
        <idno type="issn">0167-8191</idno>
        <title level="j">Parallel Computing</title>
        <imprint>
          <biblScope type="volume">38</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">91-110</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="4837" id="moais-2012-bid5" type="inproceedings" rend="year" n="cite:bougeret:hal-00738499">
      <identifiant type="hal" value="hal-00738499"/>
      <analytic>
        <title level="a">Tight approximation for scheduling parallel jobs on identical cluster</title>
        <author>
          <persName key="moais-2007-idm391258013776">
            <foreName>Marin</foreName>
            <surname>Bougeret</surname>
            <initial>M.</initial>
          </persName>
          <persName key="algorille-2006-idm304998919840">
            <foreName>Pierre-François</foreName>
            <surname>Dutot</surname>
            <initial>P.-F.</initial>
          </persName>
          <persName key="moais-2007-idm391258967408">
            <foreName>Klaus</foreName>
            <surname>Jansen</surname>
            <initial>K.</initial>
          </persName>
          <persName>
            <foreName>Christina</foreName>
            <surname>Robenek</surname>
            <initial>C.</initial>
          </persName>
          <persName key="moais-2006-idm506023536112">
            <foreName>Denis</foreName>
            <surname>Trystram</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes">
        <title level="m">APDCM (IPDPS workshop)</title>
        <loc>France</loc>
        <imprint>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00738499" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00738499</ref>
        </imprint>
        <meeting id="cid373416">
          <title>Workshop on Advances in Parallel and Distributed Computational Models</title>
          <num>14</num>
          <abbr type="sigle">APDCM</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="3792" id="moais-2012-bid16" type="inproceedings" rend="year" n="cite:DBLP:conf/iwomp/BroquedisGD12">
      <analytic>
        <title level="a">libKOMP, an Efficient OpenMP Runtime System for Both Fork-Join and Data Flow Paradigms</title>
        <author>
          <persName key="runtime-2007-idm186165884704">
            <foreName>Francois</foreName>
            <surname>Broquedis</surname>
            <initial>F.</initial>
          </persName>
          <persName key="espresso-2006-idm439299569616">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="moais-2006-idm506023527104">
            <foreName>Vincent</foreName>
            <surname>Danjean</surname>
            <initial>V.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">IWOMP</title>
        <loc>Rome, Italy</loc>
        <imprint>
          <dateStruct>
            <month>jun</month>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">102-115</biblScope>
        </imprint>
        <meeting id="cid330908">
          <title>International Workshop on OpenMP</title>
          <num>8</num>
          <abbr type="sigle">IWOMP</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="4650" id="moais-2012-bid17" type="inproceedings" rend="year" n="cite:CoKaPe12">
      <analytic>
        <title level="a">Sparse Polynomial Interpolation and Berlekamp/Massey Algorithm That Correct Outlier Errors in Input Values</title>
        <author>
          <persName>
            <foreName>Matthew T.</foreName>
            <surname>Comer</surname>
            <initial>M. T.</initial>
          </persName>
          <persName>
            <foreName>Erich L.</foreName>
            <surname>Kaltofen</surname>
            <initial>E. L.</initial>
          </persName>
          <persName key="moais-2009-idm149800293344">
            <foreName>Clément</foreName>
            <surname>Pernet</surname>
            <initial>C.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">ISSAC '12: Proceedings of the 2012 international symposium on symbolic and algebraic computation</title>
        <imprint>
          <dateStruct>
            <month>July</month>
            <year>2012</year>
          </dateStruct>
        </imprint>
        <meeting id="cid318495">
          <title>International Symposium on Symbolic and Algebraic Computation</title>
          <num>37</num>
          <abbr type="sigle">ISSAC</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="3323" id="moais-2012-bid4" type="inproceedings" rend="year" n="cite:ferreiralima:hal-00735470">
      <identifiant type="hal" value="hal-00735470"/>
      <analytic>
        <title level="a">Exploiting Concurrent GPU Operations for Efficient Work Stealing on Multi-GPUs</title>
        <author>
          <persName key="moais-2010-idm448216586256">
            <foreName>Joao Vicente</foreName>
            <surname>Ferreira Lima</surname>
            <initial>J. V.</initial>
          </persName>
          <persName key="espresso-2006-idm439299569616">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="moais-2007-idm391258964352">
            <foreName>Nicolas</foreName>
            <surname>Maillard</surname>
            <initial>N.</initial>
          </persName>
          <persName key="moais-2006-idm506023527104">
            <foreName>Vincent</foreName>
            <surname>Danjean</surname>
            <initial>V.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes">
        <title level="m">24rd International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD)</title>
        <loc>Columbia University, New York, United States</loc>
        <imprint>
          <dateStruct>
            <month>October</month>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00735470" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00735470</ref>
        </imprint>
        <meeting id="cid313009">
          <title>International Symposium on Computer Architecture and High Performance Computing</title>
          <num>24</num>
          <abbr type="sigle">SBAC-PAD</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="5097" id="moais-2012-bid20" type="inproceedings" rend="year" n="cite:lementec2012">
      <analytic>
        <title level="a">XKaapi</title>
        <author>
          <persName key="espresso-2006-idm439299569616">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="moais-2009-idm149800213664">
            <foreName>Fabien</foreName>
            <surname>Lementec</surname>
            <initial>F.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">11-th African Conference on Research in Computer Science and Applied Mathematics</title>
        <loc>Algiers, Algeria</loc>
        <imprint>
          <dateStruct>
            <month>October</month>
            <year>2012</year>
          </dateStruct>
        </imprint>
        <meeting id="cid40646">
          <title>Colloque Africain sur la Recherche en Informatique et en Mathématiques Appliquées</title>
          <num>11</num>
          <abbr type="sigle">CARI</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="3842" id="moais-2012-bid21" type="inproceedings" rend="year" n="cite:GNT12">
      <analytic>
        <title level="a">Malleable resource sharing algorithms for cooperative resolution of problems</title>
        <author>
          <persName key="mascotte-2006-idm166460970448">
            <foreName>Alfredo</foreName>
            <surname>Goldman</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Yanik</foreName>
            <surname>Ngoko</surname>
            <initial>Y.</initial>
          </persName>
          <persName key="moais-2006-idm506023536112">
            <foreName>Denis</foreName>
            <surname>Trystram</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Proceedings of IEEE World Congress on Computational Intelligence</title>
        <loc>Brisbane, Australia</loc>
        <imprint>
          <dateStruct>
            <month>June</month>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">1438-1445</biblScope>
        </imprint>
        <meeting id="cid394942">
          <title>IEEE World Congress on Computational Intelligence</title>
          <num>2012</num>
          <abbr type="sigle">WCCI</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="2568" id="moais-2012-bid22" type="inproceedings" rend="year" n="cite:GL2012">
      <analytic>
        <title level="a">An Approach to Instantly Use Single-objective Results for Multi-objective Evolutionary Combinatorial Optimization</title>
        <author>
          <persName>
            <foreName>Christian</foreName>
            <surname>Grimme</surname>
            <initial>C.</initial>
          </persName>
          <persName key="moais-2011-idm526020908912">
            <foreName>Joachim</foreName>
            <surname>Lepping</surname>
            <initial>J.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Learning and Intelligent Optimization Conference (LION6)</title>
        <title level="s">Lecture Notes in Computer Science</title>
        <imprint>
          <biblScope type="number">7219</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">396-401</biblScope>
        </imprint>
        <meeting id="cid289753">
          <title>International Conference on Learning and Intelligent Optimization</title>
          <num>6</num>
          <abbr type="sigle">LION</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="3585" id="moais-2012-bid3" type="inproceedings" rend="year" n="cite:jacquin:hal-00748153">
      <identifiant type="hal" value="hal-00748153"/>
      <analytic>
        <title level="a">IBTrack: an ICMP black holes tracker</title>
        <author>
          <persName key="moais-2009-idm149800250528">
            <foreName>Ludovic</foreName>
            <surname>Jacquin</surname>
            <initial>L.</initial>
          </persName>
          <persName key="planete-2006-idm256654398256">
            <foreName>Vincent</foreName>
            <surname>Roca</surname>
            <initial>V.</initial>
          </persName>
          <persName key="planete-2006-idm256654354448">
            <foreName>Mohamed Ali</foreName>
            <surname>Kaafar</surname>
            <initial>M. A.</initial>
          </persName>
          <persName key="moais-2010-idm448216613760">
            <foreName>Fabrice</foreName>
            <surname>Schuler</surname>
            <initial>F.</initial>
          </persName>
          <persName key="moais-2006-idm506023551344">
            <foreName>Jean-Louis</foreName>
            <surname>Roch</surname>
            <initial>J.-L.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes">
        <title level="m">IEEE GLOBECOM</title>
        <imprint>
          <publisher>
            <orgName>IEEE</orgName>
          </publisher>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00748153" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00748153</ref>
        </imprint>
        <meeting id="cid30727">
          <title>Annual IEEE Global Telecommunications Conference</title>
          <num>55</num>
          <abbr type="sigle">GLOBECOM</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="2466" id="moais-2012-bid15" type="inproceedings" rend="year" n="cite:ICPP2012">
      <analytic>
        <title level="a">A Hierarchical Approach for Load Balancing on Parallel Multi-core Systems</title>
        <author>
          <persName>
            <foreName>Laércio</foreName>
            <surname>Pilla</surname>
            <initial>L.</initial>
          </persName>
          <persName>
            <foreName>Christiane</foreName>
            <surname>Pousa Ribeiro</surname>
            <initial>C.</initial>
          </persName>
          <persName key="moais-2007-idm391258010720">
            <foreName>Daniel</foreName>
            <surname>Cordeiro</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>Chao</foreName>
            <surname>Mei</surname>
            <initial>C.</initial>
          </persName>
          <persName>
            <foreName>Abhinav</foreName>
            <surname>Bhatele</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Philippe</foreName>
            <surname>Navaux</surname>
            <initial>P.</initial>
          </persName>
          <persName key="runtime-2007-idm186165884704">
            <foreName>Francois</foreName>
            <surname>Broquedis</surname>
            <initial>F.</initial>
          </persName>
          <persName key="mescal-2006-idm111690851616">
            <foreName>Jean-François</foreName>
            <surname>Mehaut</surname>
            <initial>J.-F.</initial>
          </persName>
          <persName>
            <foreName>Laxmikant</foreName>
            <surname>Kale</surname>
            <initial>L.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Proceedings of the 41st International Conference on Parallel Processing, ICPP 2012</title>
        <loc>Pittsburgh, Pennsylvania</loc>
        <imprint>
          <dateStruct>
            <month>September</month>
            <year>2012</year>
          </dateStruct>
        </imprint>
        <meeting id="cid295154">
          <title>International Conference on Parallel Processing</title>
          <num>41</num>
          <abbr type="sigle">ICPP</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="2739" id="moais-2012-bid23" type="inproceedings" rend="year" n="cite:ICPADS12">
      <analytic>
        <title level="a">Asymptotically Optimal Load Balancing f0r Hierarchical Multi-Core Systems</title>
        <author>
          <persName>
            <foreName>Laércio</foreName>
            <surname>Pilla</surname>
            <initial>L.</initial>
          </persName>
          <persName>
            <foreName>Christiane</foreName>
            <surname>Pousa Ribeiro</surname>
            <initial>C.</initial>
          </persName>
          <persName>
            <foreName>Philippe</foreName>
            <surname>Navaux</surname>
            <initial>P.</initial>
          </persName>
          <persName key="mescal-2008-idm329165469328">
            <foreName>Pierre</foreName>
            <surname>Coucheney</surname>
            <initial>P.</initial>
          </persName>
          <persName key="runtime-2007-idm186165884704">
            <foreName>Francois</foreName>
            <surname>Broquedis</surname>
            <initial>F.</initial>
          </persName>
          <persName key="mescal-2006-idm111690879872">
            <foreName>Bruno</foreName>
            <surname>Gaujal</surname>
            <initial>B.</initial>
          </persName>
          <persName key="mescal-2006-idm111690851616">
            <foreName>Jean-François</foreName>
            <surname>Mehaut</surname>
            <initial>J.-F.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Proceedings of the 18th IEEE International Conference on Parallel and Distributed Systems, ICPADS</title>
        <loc>Singapore</loc>
        <imprint>
          <dateStruct>
            <month>December</month>
            <year>2012</year>
          </dateStruct>
        </imprint>
        <meeting id="cid295738">
          <title>International Conference on Parallel and Distributed Systems</title>
          <num>18</num>
          <abbr type="sigle">ICPADS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="5095" id="moais-2012-bid18" type="inproceedings" rend="year" n="cite:DBLP:conf/ccgrid/QuintinW12">
      <analytic>
        <title level="a">WSCOM: Online Task Scheduling with Data Transfers</title>
        <author>
          <persName key="moais-2008-idm545078858432">
            <foreName>Jean-Noël</foreName>
            <surname>Quintin</surname>
            <initial>J.-N.</initial>
          </persName>
          <persName key="moais-2006-idm506023533056">
            <foreName>Frédéric</foreName>
            <surname>Wagner</surname>
            <initial>F.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">CCGRID</title>
        <imprint>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">344-351</biblScope>
        </imprint>
        <meeting id="cid88920">
          <title>IEEE International Symposium on Cluster Computing and the Grid</title>
          <num>10</num>
          <abbr type="sigle">CCGRID</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="2599" id="moais-2012-bid19" type="inproceedings" rend="year" n="cite:insidegpu">
      <analytic>
        <title level="a">A New Programming Paradigm for GPGPU</title>
        <author>
          <persName>
            <foreName>Julio</foreName>
            <surname>Toss</surname>
            <initial>J.</initial>
          </persName>
          <persName key="espresso-2006-idm439299569616">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">EUROPAR 2012</title>
        <loc>Rhodes Island, Greece</loc>
        <imprint>
          <dateStruct>
            <month>August</month>
            <year>2012</year>
          </dateStruct>
        </imprint>
        <meeting id="cid306382">
          <title>International Euro-Par Conference on Parallel Processing</title>
          <num>18</num>
          <abbr type="sigle">Euro-Par</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    <biblStruct dedoublkey="6145" id="moais-2012-bid9" type="techreport" rend="year" n="cite:bougeret:lirmm-00656780">
      <identifiant type="hal" value="lirmm-00656780"/>
      <monogr>
        <title level="m">Tight Approximation for Scheduling Parallel Job on Identical Clusters</title>
        <author>
          <persName key="moais-2007-idm391258013776">
            <foreName>Marin</foreName>
            <surname>Bougeret</surname>
            <initial>M.</initial>
          </persName>
          <persName key="algorille-2006-idm304998919840">
            <foreName>Pierre-François</foreName>
            <surname>Dutot</surname>
            <initial>P.-F.</initial>
          </persName>
          <persName key="moais-2006-idm506023536112">
            <foreName>Denis</foreName>
            <surname>Trystram</surname>
            <initial>D.</initial>
          </persName>
          <persName key="moais-2007-idm391258967408">
            <foreName>Klaus</foreName>
            <surname>Jansen</surname>
            <initial>K.</initial>
          </persName>
          <persName>
            <foreName>Christina</foreName>
            <surname>Robenek</surname>
            <initial>C.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">LIRMM</orgName>
          </publisher>
          <dateStruct>
            <month>January</month>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/lirmm-00656780" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>lirmm-00656780</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Report</note>
    </biblStruct>
    <biblStruct dedoublkey="6118" id="moais-2012-bid28" type="techreport" rend="year" n="cite:desprez:hal-00720815">
      <identifiant type="hal" value="hal-00720815"/>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Supporting Experimental Computer Science</title>
        <author>
          <persName key="graal-2006-idm329937294144">
            <foreName>Frederic</foreName>
            <surname>Desprez</surname>
            <initial>F.</initial>
          </persName>
          <persName>
            <foreName>Geoffrey</foreName>
            <surname>Fox</surname>
            <initial>G.</initial>
          </persName>
          <persName key="algorille-2006-idm304998941200">
            <foreName>Emmanuel</foreName>
            <surname>Jeannot</surname>
            <initial>E.</initial>
          </persName>
          <persName>
            <foreName>Kate</foreName>
            <surname>Keahey</surname>
            <initial>K.</initial>
          </persName>
          <persName>
            <foreName>Michael</foreName>
            <surname>Kozuch</surname>
            <initial>M.</initial>
          </persName>
          <persName key="paris-2006-idm124332490384">
            <foreName>David</foreName>
            <surname>Margery</surname>
            <initial>D.</initial>
          </persName>
          <persName key="grand-large-2006-idm343610603024">
            <foreName>Pierre</foreName>
            <surname>Neyron</surname>
            <initial>P.</initial>
          </persName>
          <persName key="mescal-2006-idm111689825328">
            <foreName>Lucas</foreName>
            <surname>Nussbaum</surname>
            <initial>L.</initial>
          </persName>
          <persName key="paris-2006-idm124332484688">
            <foreName>Christian</foreName>
            <surname>Pérez</surname>
            <initial>C.</initial>
          </persName>
          <persName key="mescal-2006-idm111690845920">
            <foreName>Olivier</foreName>
            <surname>Richard</surname>
            <initial>O.</initial>
          </persName>
          <persName>
            <foreName>Warren</foreName>
            <surname>Smith</surname>
            <initial>W.</initial>
          </persName>
          <persName>
            <foreName>Gregor</foreName>
            <surname>Von Laszewski</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>Jens</foreName>
            <surname>Vöckler</surname>
            <initial>J.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">Inria</orgName>
          </publisher>
          <dateStruct>
            <month>March</month>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00720815" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00720815</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Rapport de recherche</note>
    </biblStruct>
    <biblStruct dedoublkey="5748" id="moais-2012-bid6" type="techreport" rend="year" n="cite:dumas:hal-00688254">
      <identifiant type="hal" value="hal-00688254"/>
      <monogr>
        <title level="m">Computational linear algebra over finite fields</title>
        <author>
          <persName>
            <foreName>Jean-Guillaume</foreName>
            <surname>Dumas</surname>
            <initial>J.-G.</initial>
          </persName>
          <persName key="moais-2009-idm149800293344">
            <foreName>Clément</foreName>
            <surname>Pernet</surname>
            <initial>C.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">Grenoble University</orgName>
          </publisher>
          <dateStruct>
            <month>April</month>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00688254" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00688254</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Report</note>
    </biblStruct>
    <biblStruct dedoublkey="5843" id="moais-2012-bid27" type="techreport" rend="year" n="cite:rrlig033">
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Fair Scheduling for Multiple Submissions</title>
        <author>
          <persName key="mescal-2008-idm329165503328">
            <foreName>Joseph</foreName>
            <surname>Emeras</surname>
            <initial>J.</initial>
          </persName>
          <persName key="moais-2011-idm526020896704">
            <foreName>Vinicius</foreName>
            <surname>Pinheiro</surname>
            <initial>V.</initial>
          </persName>
          <persName>
            <foreName>Krzysztof</foreName>
            <surname>Rzadca</surname>
            <initial>K.</initial>
          </persName>
          <persName key="moais-2006-idm506023536112">
            <foreName>Denis</foreName>
            <surname>Trystram</surname>
            <initial>D.</initial>
          </persName>
        </author>
        <imprint>
          <biblScope type="number">RR-LIG-033</biblScope>
          <publisher>
            <orgName type="institution">LIG<address><addrLine>Grenoble, France</addrLine></address></orgName>
          </publisher>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://rr.liglab.fr/research_report/RR-LIG-033_orig.pdf" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>rr.<allowbreak/>liglab.<allowbreak/>fr/<allowbreak/>research_report/<allowbreak/>RR-LIG-033_orig.<allowbreak/>pdf</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    <biblStruct dedoublkey="6180" id="moais-2012-bid8" type="techreport" rend="year" n="cite:gautier:hal-00727827">
      <identifiant type="hal" value="hal-00727827"/>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">X-Kaapi: a Multi Paradigm Runtime for Multicore Architectures</title>
        <author>
          <persName key="espresso-2006-idm439299569616">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="moais-2009-idm149800213664">
            <foreName>Fabien</foreName>
            <surname>Lementec</surname>
            <initial>F.</initial>
          </persName>
          <persName>
            <foreName>Vincent</foreName>
            <surname>Faucher</surname>
            <initial>V.</initial>
          </persName>
          <persName key="moais-2006-idm506023542064">
            <foreName>Bruno</foreName>
            <surname>Raffin</surname>
            <initial>B.</initial>
          </persName>
        </author>
        <imprint>
          <biblScope type="number">RR-8058</biblScope>
          <publisher>
            <orgName type="institution">Inria</orgName>
          </publisher>
          <dateStruct>
            <month>February</month>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">16</biblScope>
          <ref xlink:href="http://hal.inria.fr/hal-00727827" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00727827</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Rapport de recherche</note>
    </biblStruct>
    <biblStruct dedoublkey="5892" id="moais-2012-bid7" type="techreport" rend="year" n="cite:jacquin:hal-00695746">
      <identifiant type="hal" value="hal-00695746"/>
      <monogr>
        <title level="m">IBTrack: An ICMP Black holes Tracker</title>
        <author>
          <persName key="moais-2009-idm149800250528">
            <foreName>Ludovic</foreName>
            <surname>Jacquin</surname>
            <initial>L.</initial>
          </persName>
          <persName key="planete-2006-idm256654398256">
            <foreName>Vincent</foreName>
            <surname>Roca</surname>
            <initial>V.</initial>
          </persName>
          <persName key="planete-2006-idm256654354448">
            <foreName>Mohamed Ali</foreName>
            <surname>Kaafar</surname>
            <initial>M. A.</initial>
          </persName>
          <persName key="moais-2010-idm448216613760">
            <foreName>Fabrice</foreName>
            <surname>Schuler</surname>
            <initial>F.</initial>
          </persName>
          <persName key="moais-2006-idm506023551344">
            <foreName>Jean-Louis</foreName>
            <surname>Roch</surname>
            <initial>J.-L.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">Inria</orgName>
          </publisher>
          <dateStruct>
            <month>March</month>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00695746" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00695746</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Report</note>
    </biblStruct>
    <biblStruct dedoublkey="5294" id="moais-2012-bid26" type="misc" rend="year" n="cite:taktuk_forge">
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no">
        <title level="m">Taktuk: efficient large scale deployment of remote executions</title>
        <author>
          <persName key="moais-2006-idm506023529760">
            <foreName>Guillaume</foreName>
            <surname>Huard</surname>
            <initial>G.</initial>
          </persName>
        </author>
        <imprint>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="https://gforge.inria.fr/projects/taktuk/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>gforge.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>projects/<allowbreak/>taktuk/</ref>
        </imprint>
      </monogr>
      <note type="howpublished">Inria Forge</note>
    </biblStruct>
  </biblio>
</raweb>
