RAPPORT D`ACTIVITE et PROJET SCIENTIFIQUE Equipe
Transcription
RAPPORT D`ACTIVITE et PROJET SCIENTIFIQUE Equipe
LIG — Dossier de contractualisation 539 RAPPORT D’ACTIVITE et PROJET SCIENTIFIQUE Equipe MOAIS Responsable : Jean-Louis Roch, MdC INPG Contents 1 Personnel 2 2 Bilan des activités de recherche 02-05 2.1 Scientific themes and general objectives . . . . . . . 2.1.1 Theme 1: Scheduling . . . . . . . . . . . . . 2.1.2 Theme 2: Adaptive parallel algorithms design 2.1.3 Theme 3: Interactivity . . . . . . . . . . . . . 2.1.4 Theme 4: Coupling and data movements . . 2.1.5 Theme 5: Secure computations . . . . . . . . 2.2 Main achievements . . . . . . . . . . . . . . . . . . . 2.2.1 Theoretical results . . . . . . . . . . . . . . . 2.2.2 Softwares . . . . . . . . . . . . . . . . . . . . 2.2.3 The GRIMAGE platform . . . . . . . . . . . . . . . . . . . . . 2 2 4 6 8 10 12 13 13 13 15 3 Activités d’encadrement 3.1 Thèses et HDR soutenues depuis le 01/10/01 . . . . . . . . . . . . . . . . . . . . . 3.2 Thèses et HDR en cours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 15 15 4 Collaboration et valorisation 4.1 Principales relations scientifiques hors contrats 4.2 Contrats institutionnels . . . . . . . . . . . . . 4.3 Contrats (co)financés par un industriel . . . . . 4.4 Création d’entreprise . . . . . . . . . . . . . . . 4.5 Brevets et licences . . . . . . . . . . . . . . . . 15 15 16 16 17 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Publications(01-05) 17 6 Principales responsabilités scientifiques et administratives 30 7 Perspectives de recherche 06-10 7.1 Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2 Adaptative algorithms . . . . . . . . . . . . . . . . . . . . . . . . 7.3 Kaapi+FlowVR : coupling coarse-grain and fine-grain scheduling 7.4 Interactivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5 Embedded systems . . . . . . . . . . . . . . . . . . . . . . . . . . 7.6 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 32 33 34 35 36 36 38 MOAIS – 1 LIG — Dossier de contractualisation 540 Préambule: les paragraphes 1 (Bilan des activités 2001-2005) et 6 (Perspectives) sont rédigés en anglais 1 Personnel - Chercheurs : Thierry Gautier (CR INRIA) Bruno Raffin (CR INRIA) - Enseignants-Chercheurs : Vincent Danjean (MdC UJF; à partir du 1/09/2005) Guillaume Huard (MdC UJF) Grégory Mounié (MdC INPG) Jean-Louis Roch (MdC INPG) Denis Trystram (Prof INPG) - Ingénieurs : - Nombre de doctorants : 17 dont 4 à mi-temps (assistants/co-tutelle)+ 4 nouveaux arrivants - Nombre d’équivalents chercheurs (NE) : 12,7 Voir le tableau en annexe 1 pour les informations détaillées. 2 Bilan des activités de recherche 02-05 Issu du projet joint CNRS-INRIA-INPG-UJF Apache, le projet Moais a été créé en septembre 2004. Outre les résultats de Moais, ce rapport contient aussi les résultats du projet Apache directement utilisés dans le projet Moais. N.B. La suite de cette partie est rédigée en anglais. 2.1 Scientific themes and general objectives The goal of the MOAIS project is the programming of applications where performance is a matter of resources: beyond the optimization of the application itself, the effective use of a large number of resources is expected to enhance the performance. Target architectures are scalable ambient computing platforms based on off-the shelf components: input devices (sensors, cameras, ...), output devices (for visual, acoustic or haptic rendering ...) and computing units. Ideally, it should be possible to improve gradually performance by adding (dynamically resources). MOAIS – 2 LIG — Dossier de contractualisation 541 • precision is related to the size of the scheme or order of the model, which directly depends on the computing power (processors and memory space). • the application control is related to the quality and number of input resources (sensors, cameras, microphones). • a high quality visualization requires a large display with a high pixel density obtained by stacking multiple projectors or screens. Extra information can be provided to users through sound rendering or haptic systems. Synchronizations are required to ensure the data coherency across those multiple outputs. Those three levels, computations, inputs and outputs, enable users to interact with the application. In this interactive context, performance is a global multi-criteria objective associating precision, fluidity and reactivity. Then, programming a portable application for such an ambient platform requires to suit to the available resources. Ideally, the application should be independent form the platform and should support any configuration: adaptation to the platform is managed by the scheduling. Thus, fundamental researches undertaken in the MOAIS project are focused on this scheduling problem which manages the distribution of the application on the architecture. The originality of the MOAIS approach is to use the application’s adaptability to control its scheduling: • the application describes synchronization conditions; • the scheduler computes a schedule that verifies those conditions on the available resources; • each resource behaves independently and performs the decision of the scheduler. 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, ...) and scheduling. Here, 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. Also, research axis of MOAIS are directed towards: • Scheduling: To formalize and study the related scheduling problem. The critical points are: the modelization of an adaptive application; the formalization of the multi-criterion objective; the design of scalable scheduling algorithms. MOAIS – 3 LIG — Dossier de contractualisation 542 • Adaptive parallel and distributed algorithms design: To design and analyze algorithms that may adapt their execution under the control of the scheduling. The critical point is that the algorithm is parallel and distributed; then, adaptation should be performed locally while ensuring the coherency of results. • Design and implementation of programming interfaces for coordination. 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 Kaapi runtime software that manages the scheduling of multithreaded computations with billions of threads on a virtual architecture with an arbitrary number of ressources; Kaapi supports node additions and resilience. Kaapi manages the fine grain scheduling of the computation part of the application. • Interactivity. To improve interactivity, the critical point is the scalability; the number of resources (input and output devices) should be adapted without modification of the application. We develop FlowVR middleware that enables to configure an application on a cluster with fixed input and output resources. FlowVR manages the coarse grain scheduling of the whole application and the latency from inputs to outputs. Often, ambient computing platforms have a dynamic behaviour. The dataflow model of computation directly enables to take into account addition of resources. To deal with resilience, we develop softwares to provide fault-tolerance 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. For those themes, the scientific methodology of Moais consists in: • designing algorithms with provable performance on theoretcial models; • implementing and evaluating those algorithms in our main softwares: Kaapi for fine grain scheduling and FlowVR for coarse-grain scheduling. • customizing our softwares for their use in real applications studied and developed by other partners. Application fields are: virtual reality and scientific computing (simulaton, combinatorial optimization, biology, computer algebra). For real applications, code coupling is an important issue. In the period 2001-2005, our developments have mostly been targeted to static platforms with identical/homogeneous processors. 2.1.1 Theme 1: Scheduling Participants: Thierry Gautier, Guillaume Huard, Grégory Mounié, Jean-Louis Roch, Denis Trystram MOAIS – 4 LIG — Dossier de contractualisation 543 Keyword: load-sharing, mapping, scheduling 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. In the context of parallel and distributed processing, the term scheduling is used with many acceptions. In general, scheduling means assigning tasks of a program (or processes) to the various components of a system (processors, communication links). Researchers within MOAIS have been working on this subject for several years. They are known for their multiple contributions for determining a date and a processor on which the tasks of a parallel program will be executed; especially regarding the 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). Parallel tasks model and extensions We have contribute to the definition of modern task models: malleable, moldable. We have develop techniques to derive, from an off-line scheduling algorithm, an efficient on-line one which has a good performance guarantee for rigid or moldable tasks. The method is to use a batch framework where jobs are submitted to the cluster by a queue on a dedicated processor and where the whole batch has to be completed before starting a new one. The performance guarantee is no more than twice the optimal (which is the worst case). Multi-objective Analysis. A natural question while designing practical scheduling algorithms is ”which criterion should we optimize ?”. Most of existing works have been developed for the objective of makespan minimization (time of the latest tasks to be executed). It 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 minsum) of the whole set of submitted jobs. There exist several other criteria which may be pertinent for specific use. Some of our work deals with the problem of designing scheduling algorithms that optimize simultaneously several criteria. The main issue is that most of the policies are good for one criterion but bad for another one. We have proposed an algorithm which is guaranteed for both makespan and minsum (thesis of PF Dutot). Part of those theoretical results and other extensions have been implemented in the OAR batch scheduler within ACI CiGri and Grid5000 (thesis of L Eyraud and F Moulay). Scheduling for optimizing parallel time and memory space. It is well known that parallel time and memory space are two antagonists criteria. However, MOAIS – 5 LIG — Dossier de contractualisation 544 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 (thesis of N Maillard). Among applications that require a huge memory space for efficiency, we have studied a bioinformatics application, namely multiple alignment of biological sequences and building of specie trees (called phylogenic trees). Our contribution used our competence in combinatorial optimization and parallel computing. Molecular biologists work with large data sets and state-of-the-art algorithms use large processing power which may be provided by parallel processing. In the context of the PhD work of Gilles Parmentier, we developed a sequential code that has been parallelized by Jeroslaw Zola in the context of a Polonium contract with Institute of Computer and Information Sciences at Czestochowa University of Technology. Due to its huge volume of computations and data, multiple alignments with tree construction need large size clusters and grids. We proposed a new approach to solve the problem of parallel multiple sequence alignment based on the application of caching techniques. It is aimed to solve, with high precision, large alignment instances on heterogeneous computational clusters. A key point is to identify a computation in order to determine if it has already been performed. We solve this problem using a hash of the description of the dataflow graph related to the considered computation. Coarse-grain scheduling of fine grain multithreaded computations. Workstealing scheduling is well studied for fine grain multithreaded computations with 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. Using a generalized lock-free cactus stack execution mechanism, we have extended previous results based on the work-first principle for strict multi-threaded computations on SMPs to general multithreaded computations with dataflow dependencies (thesis of R Revire). The main result is that optimizing sequential local execution of tasks leads to amortize the overhead of scheduling. The related distributed work-stealing scheduling algorithm has been implemented in Kaapi, the runtime library that supports the execution of Athapascan programs. 2.1.2 Theme 2: Adaptive parallel algorithms design Participants: T. Gautier, G. Huard; B. Raffin, J.-L. Roch, D. Trystram Keywords: adaptive, hybrid, autonomic, anytime, complexity This theme deals with the analysis and the design of algorithmic schemes that control (statically or dynamically) the grain of interactive applications. 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 MOAIS – 6 LIG — Dossier de contractualisation 545 approach is restricted to a constant number of identical resources and for regular computations. In order 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: • in the classical bottom-up approach, the application provides fine grain tasks; then those tasks are clustered to obtain a minimal parallel degree. • the top-down approach (Cilk, 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. 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 p resources is not efficient on q < p 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. We have implemented this first way of adapting granularity by porting Athapascan, the parallel programming interface developed by the APACHE project, on top of Kaapi. It has been successfully used to solve: combinatorial optimization problems (QAP problems with PRISM laboratory and telecommunication application with LIFL within the ACI DOCG); parallel evaluation of a tree to improve performances of a probabilistic inference engine (contract with the Pixelis company). However, this adaptation is restrictive. More generally, the algorithm should adapt itself at runtime in order to improve performance by decreasing overheads induced by parallelism, namely 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 in order to find the good balance between parallelism and synchronizations. Moais project has exhibited several techniques to manage adaptivity from an algorithmic point of view: • amortization of the number of global synchronizations required in an iteration (for the evaluation of a stopping criterion); • adaptive deployment of an application based on on-line discovery and performance measures of communication links; • generic recursive cascading of two algorithms, one sequential, the other one parallel, in order to dynamically suit the degree of parallelism with respect to idle resources. 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 MOAIS – 7 LIG — Dossier de contractualisation 546 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 granularity at any time during execution. Within the IMAG-INRIA AHA project, we are applying this technique to develop adaptive algorithms for various applications: data compression, combinatorial optimization, iterated and prefix sum computations, 3D image reconstruction, exact computations. 2.1.3 Theme 3: Interactivity Participants: V. Danjean, T. Gautier, B. Raffin, J.-L. Roch, Keywords: interactivity, multimedia, image wall, The goal of this theme is to develop approaches to tackle interactivity in the context of large scale distributed applications. 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 wishes of the user. 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 to drive 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. 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. NetJuggler Net Juggler (netjuggler.sourceforge.net) is a join developpement effort with the LIFO, Université d’Orléans that enables the execution on a PC cluster of virtual reality applications developed with VR Juggler (www.vrjuggler.org). In a MOAIS – 8 LIG — Dossier de contractualisation 547 transparent way for the user, Net Juggler duplicates the application on the cluster nodes. It catches and broadcasts the input events to guarantee the coherency between the different copies. Net Juggler also integrates a swaplock synchronization to ensure that the images, while computed on the different nodes, are displayed synchronously to form a large single coherent image. Net Juggler is open source and used in different companies and labs like the BRGM, France, the VRlab, Sweden, the HLR, California, Argonne Futures Lab, Illinois. Extension of NetJuggler to manage parallel simulations The duplication strategy adopted by Net Juggler allows to gather the power of graphics cards distributed on a PC cluster. This approach is well adapted to a large majority of virtual reality applications that are graphically complex, but usually associated with simulations that do not require the power of multiple processors. However, some applications, that will probably become more and more common in a near future, require high performance computations that fails to supply the duplication strategy. For these applications, we developed coupling strategies, using Net Juggler, to enable the distribution of the computations that lead to performance bottlenecks. We developed two different such applications, the former using a parallel fluid flow simulation solver programmed with the PETSC library and the latter a cloth simulation parallelized with Athapascan. The resulting application associates two different levels of parallelism. On one side, a parallel rendering for display wall and on the other side the parallel simulation. However the coupling is synchronous: each new simulator step corresponds to a new image. But scaling to a large number of processors and introducing different interaction modes (haptics, image, sound), requires a more efficient management of the available resources through a more flexible coupling (loosen coherency coupling). Part of the work has been supported by the RNTL project GEOBENCH (INRIA action i3D, the LIFO of Université d’Orléans, the CEA, the BRGM and the TGS company). The goal was to develop solutions running on PC clusters for the visualization of (geo)scientific data; data distribution and computations are supported by Net Juggler. FlowVR To overcome NetJuggler limitations, FlowVR is based on a distributed and asynchronous coupling of all components in the application. Our approach is inspired 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, increasing the number of computing nodes quickly make infeasible hand tuning to keep coherency and good performance. Also, FlowVR is setted of two parts: the conMOAIS – 9 LIG — Dossier de contractualisation 548 figuration interface enables the user to easily describe the different modules in the application and their interconnections; the runtime library manage the distributed control of the execution, directed by the semantics of interactions defined in the configuration. FlowVR is partly developped within the RNTL project OCETRE (with the companies Total Immersion, Thalès ST and the INRIA MOVI project) which goal is to develop solutions for real time 3D reconstruction with a PC cluster and multiple camera acquisition. The Grimage platform The GrImage (www.inrialpes.fr/grimage) platform is dedicated to real-time interactive applications. It is located at INRIA Rhône-Alpes, managed and operated by the INRIA projects Artis, Evasion, Movi and Moais. GrImage gathers the following set of hardware components: • A high performance PC cluster composed of 27 dual-processor machines interconnected through a dual-gigabit Ethernet network. The PCs are equipped with high-end NVIDIA graphics cards. • 12 color digital video cameras, 8 black and white digital video cameras, a genlocking system for synchronized multi-camera video acquisitions, and a TV broadcast camera. • A 2x2.7m display wall with 16 video projectors. The setup supports two configurations: – a 4096x3072 resolution display for monoscopic projection, – a 4096x1536 resolution display for stereoscopic projection (passive stereo technology). • 14 light projectors for precise control of the lighting environment. The GrImage cluster is connected through a 10 Gigabit Ethernet Network to two other large PC clusters of respectively (i) 200 Itanium processors interconnected through a high performance Myrinet network, and (ii) 96 Xeon processors interconnected through a gigabit Ethernet network. These additional clusters can be used to transfer part of the computations if additional computing power is required. GrImage is also accessible from distant sites, thus enabling collaborative experiments between distant sites or grid experiments. In particular GrImage is connected to the grid 5000 French experimental grid. 2.1.4 Theme 4: Coupling and data movements Participants: V. Danjean T. Gautier, B. Raffin, J.-L. Roch, MOAIS – 10 LIG — Dossier de contractualisation 549 Keywords: programming interface, coupling, coordination languages This theme deals with the design and implementation of programming interfaces in order to achieve an efficient coupling of distributed components. 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, etc). 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 make possible 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. Homa, an IDL compiler for automatic parallelisation of CORBA code RPC-based Grid infrastructures emphasize on the composition of services on a large number of computing resources. The key issue to reach high performance is to enable exploitation of parallelism on services invocations and communications. Moreover, this process should be transparent to reuse legacy codes. Those codes are often wrapped into a CORBA interface; however CORBA is based on remote procedure call and does not permit to exploit parallelism between remote service invocations. In order to suppress this limitation, we have developed Homa, an IDL compiler that performs automatic detection of parallelism and data dependencies in a set of CORBA objects invocations. For service-based metacomputing, Homa offers high automation and transparency to detect parallelism for scheduling algorithms. The runtime support of Homa is Kaapi; then, Homa takes benefit of the predictable cost model provided by Kaapi on homogeneous computational grids, such as clusters. For instance, in the case of an application with a small parallel time, the speed up of Homa versus CORBA is asymptotically O(p) on p processors. In order to efficiently use data parallel objects, Homa includes extensions to optimize distributed synchronization between two parallel components. Homa is based on the experience from the collaborative research actions ARC SIMBIO and ARC COUPLAGE. 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. In the framework of an on going contract with IFP, Homa support is used for transparent parallelization on clusters of process engineering simulations developped in CAPE-OPEN. CAPE-OPEN (Computer Aided Process Engineering) is an industrial standard of interface of components in process engineering. Some structural property of the application are considered in order to reduce the computation into loosely coupled sub-computations. MOAIS – 11 LIG — Dossier de contractualisation 2.1.5 550 Theme 5: Secure computations Participants: T. Gautier, B. Raffin, J.-L. Roch, D. Trystram Keywords: fault-tolerance, resilience, certification, checkpoint/restart This theme deals with security issues related to both node failures/disconnections and result falsifications. 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 or results modifications are part of operation, and applications have to deal directly with repeated failures during program runs. Moreover, security is crucial for some applications, like the medical application developped in the framework of the RAGTIME contract. The Moais team considers two kinds of failures: • node failures and disconnections: To ensure resilience of the application, fault tolerance mechanisms are to be used. For the sake of scalability, a global distributed consistent state is needed; it is obtained from both checkpointing locally each sequential process and logging their dependencies (e.g. communications in MPICH-V or Egida). • Task forgery: the program is executed on a remote resource (also called worker in the sequel) and its expected output results may be modified on this resource with no control of the client application. Our approach to solve those problems is based on the efficient checkpointing of the dataflow that described the computation at coarse-grain. • a scalable checkpoint/restart protocol based on the stack has been developed (thesis of Samir Jafar); • a probabilistic algorithm for malicious attack detection is being developed (thesis of Sébastien Varrette) in the framework of collaborations with Université du Luxembourg (F Leprevost) and University of Idaho (A Krings). FlowCert is a software implemented on top of Kaapi. FlowCert supports backtrack of scheduling decision and dynamic resource resilience. It also supports probabilistic certification for a global computation on unreliable resources. FlowCert is based on a distributed checkpoint/restart mechanism of a macro dataflow parallel computation which is scheduled using a distributed workstealing strategy. FlowCert is used by combinatorial applications (French ACI DOCG) and is ported on Grid5000. It also provides certification of global computation and backtrack of scheduling decision. Of course, scalable and low overhead authentication and integrity of cummunication are required. In cooperation with INRIA Sophia-Antipolis project DREAM (S. Goerget), Moais has developed a scalable authentication protocol based on LDAP. This protocol has been implemented by Sébastien Varrette and Sébastien Georget for authentication on the Grid5000 platform. MOAIS – 12 LIG — Dossier de contractualisation 2.2 551 Main achievements We summarize here the main achievement related to each theme. 2.2.1 Theoretical results • Scheduling: a scheduling algorithm that achieves a performance ratio simultaneously for two antagonists criteria [55]. • Adaptive algorithms: algorithmic schemes to provide adaptibility with provable performances based on a workstealing schedule [15, 20]. • Interactivity: the Grimage platform (www.inrialpes.fr/grimage) and its programming with FlowVR for virtual reality application [52, 70]. • Code coupling: The Homa coupling technology (compiler and runtime support) [58, 18]; • Security: the fault-tolerance checkpoint mechanism received a best paper award at the conference IEEE EIT, Lincoln, USA, may 2005 [76]. 2.2.2 Softwares • Kaapi is an efficient fine grain multithreaded runtime that runs on more than 500 processors and supports addition/resilience of resources. Kaapi means Kernel for Asynchronous, Adaptive, Parallel and Interactive Application. Kaapi runtime support uses a macro data flow representation to build, schedule and execute programs on distributed architectures. Kaapi allows the programmer to tune the scheduling algorithm used to execute its application. Currently, Kaapi only considers data dependencies between multiple producers and multiple consumers. An high level C++ API, called Athapascan and developed by the APACHE project, is implemented on top of Kaapi. Kaapi provides methods to schedule a data flow on multiple processors and then to evaluate it on a parallel architecture. The important key point is the way the communications are handled. At a low level of implementation, Kaapi uses an active message protocol to perform very high performance remote write and remote signalization operations. This protocol has been ported on top of various networks (Ethernet/Socket, Myrinet/GM). Moreover, Kaapi is able to generate broadcasts and reductions that are critical for efficiency. The performance of applications on top of Kaapi scales on clusters and large SMP machines (Symetric Multi Processors): the kernel is developed using distributed algorithms to reduce synchronizations between threads and UNIX processes. Kaapi, through the use of the Athapascan interface, has been used to compute combinatorial optimization problems on the French Grid Etoile and Grid5000. MOAIS – 13 LIG — Dossier de contractualisation 552 The work stealing algorithm implemented in Kaapi has a predictive cost model. Kaapi is able to report important measures to capture the parallel complexity or parallel bottleneck of an application. Kaapi is developed for UNIX platform and has been ported on most of the UNIX systems (LINUX, IRIX, Mac OS X); it is compliant with both 32 bits and 64 bits architectures (IA32, G4, IA64, G5, MIPS). All Kaapi related material are available at https://gforge.inria.fr/projects/kaapi/ under CeCILL licence. • FlowVR is a middleware library that eases development and execution of virtual reality applications distributed on clusters and grids. FlowVR supports coupling of heterogeneous parallel codes to build large scale applications. FlowVR reuses and extends the data flow paradigm commonly used for scientific visualization environments. An application is seen as a set of possibly distributed modules exchanging data. Each module endlessly iterates, consuming and producing data. From the FlowVR point of view, modules are not aware of the existence of other modules, as the FlowVR engine takes care of moving data between producers and consumers. This leads to a simple application programming interface that greatly eases porting of an existing program to a FlowVR module (or several modules in case of a parallel code). For data exchange between modules, FlowVR defines an abstract network with advanced features, from simple routing operations to complex message filtering or synchronization operations. Each message is associated with a list of stamps. Stamps are lightweight data used to route or filter messages. This list can also be routed separately from its message to special network nodes in charge of synchronization policies. Different FlowVR networks can be designed without modification or recompilation of the modules. The FlowVR version 1.2 has been released. It includes several new features like a GUI, support for multiple networks. We also developed on top of FlowVR a distributed rendering framework based on shaders that shows a high performance improvement in comparison to existing approaches. This work has been published at IEEE Vis 2005 and released with an Open Source License (library called Flowvr-Render). FlowVR and FlowVR-Render have been used to develop various applications, like real-time 3D modeling (visual-hull and texture) from multiple cameras, ultra-high resolution movie player, 3D visualizer of grid monitoring data (Ganglia and OAR). • OAR is a batch scheduler developed by Mescal team. The Moais team developed the central automata and the scheduling module that includes successive evolutions and improvements of the policy. MOAIS – 14 LIG — Dossier de contractualisation 2.2.3 553 The GRIMAGE platform The GrImage (www.inrialpes.fr/grimage) platform has been successfully used for virtual reality applications. FlowVR is the reference tool for development of applications. The platform will gradually evoluate. A 8-way SMP Itanium base machine is scheduled to be installed on the 10 Gigabit Ethernet Network during Summer 2005. A 8-way SMP machine equipped with dual-core Opteron processors should be installed on the GrImage platform by the end of 2005. 3 Activités d’encadrement 3.1 Thèses et HDR soutenues depuis le 01/10/01 La liste des thèses et HDR soutenues se trouve en annexe 2. 3.2 Thèses et HDR en cours La liste des thèses et HDR en cours se trouve en annexe 2. 4 Collaboration et valorisation 4.1 Principales relations scientifiques hors contrats Nous ne mentionnons que les relations ayant donné lieu à un contrat de partenariat. Le projet MOAIS collabore avec les équipes suivantes dans le cadre de contrats établis • Université d’Idaho, USA, Prof. Axel Krings, accueilli de 09/2004 à 08/2005 au laboratoire ID-IMAG (support: CNRS et BAC Région Rhône-Alpes Projet RAGTIME) • Contrat France-Berkeley, Berkeley University (A Papadmitriou), Université d’Evry (E Bampis). Financement de missions. • contrat AI - Université d’Oujda Maroc (Prof. M. Daoudi) sur le thème calcul sur cluster (AI MA/01/19 : 01/2001–12/2004. • contrat AI - Tunisie (Prof M Jemni) sur le thème algorithmes et ordonnancements distribués (AI Franco-Tunisienne). Thèse en cotutelle de Wahid Nasri. • contrat CNPq-INRIA Page II avec les universités du Rio Grande do Sul, Brésil) suivantes : UFRGS, UFSM, PUC, UNISINOS. Le thème de cette collaboration est les clusters de PCs et les outils d’évaluation de performance. Moais a en particulier des collaborations avec les enseignants-chercheurs suivants C MOAIS – 15 LIG — Dossier de contractualisation 554 Geyer (UFRGS, programmes adaptatifs), G Cavalheiro (UNISINOS, ordonnancement grain fin), N Maillard (UFRGS, ordonnnancement gros grain); BH Stein (UFSM, visualisation de programmes parallèles, logiciel Pajé). • contrat USP-COFECUB avec les universités de Sao Paulo (A Goldman) et Fortaleza, Brésil, sur le thème de l’ordonnancement de tâches parallèles. (2004) • contrat PICS CNRS CADIGE (Brésil), 2005-2007 avec l’UFRGS sur le thème de la programmation des grilles et des clusters graphiques. (39 Keuros) • contrat USP-COFECUB avec les universités de Sao Paulo (A Goldman) et Fortaleza, Brésil, sur le thème de l’ordonnancement de tâches parallèles. (2004) • contrat PAE Polonium avec TU Poznan (J Blazewicz) et Institute of Computer and Information Sciences at Czestochowa University of Technology (R Wyrzykowski); calcul parallèle d’alignements multiples de séquences génétiques et gestion distribuée de caches. Thse en cotutelle de Jaroslav Zola. • contrat PAE Procope avec TU Halle (W Zimmerman) et U Bayreuth (T Rauber), Allemagne, • projet dans le cadre du LAFMI : CICESE Ensenada (A Tcherchnyk) sur alignement multiple parallle. • Université du Luxembourg, F Leprévost et P Bouvry sur le thème de la sécurité de calcul global. Thèse en co-tutelle de Sébastien Varrette). Nous avons les relations internationales suivantes hors contrats: • Université du Delaware (Dave Saunders) dans le cadre du projet LinBox, avec Jean-Guillaume Dumas, LMC-IMAG Grenoble et Gilles Villard, ARENAIRE, LIP-ENSL, Lyon. • Université de Rabat, Maroc (Prof S El Hajji) sur le thème sécurité et calcul scientifique 4.2 Contrats institutionnels La liste des contrats institutionels est fournie dans le tableau en annexe 4. 4.3 Contrats (co)financés par un industriel La liste des contrats à financement industriel est fournie dans le tableau en annexe 4. MOAIS – 16 LIG — Dossier de contractualisation 4.4 555 Création d’entreprise La société ICATIS a été officiellement créée en janvier 2004 par Philippe Augerat. Tous ses membres fondateurs participaient aux projets MESCAL et MOAIS. Bruno Raffin est associé ICATIS à laquelle il consacre 10% de son activité professionnelle. La société ICATIS développe et distribue des logiciels et services pour l’installation et la gestion de grappes de ressources. Pour sa création, ICATIS a obtenu des soutiens financiers de la Région Rhône-Alpes et du CNRS. En septembre 2005, ICATIS employe 5 ingénieurs. 4.5 Brevets et licences Les brevets et licences sont présentés dans le tableau en annexe 5. 5 Publications(01-05) On trouvera en annexe 3 des indicateurs de production scientifique. Articles de revues avec comité de lecture internationales et nationales (ACL) • Année 2001 [1] Jean-Guillaume Dumas, B. David Saunders, and Gilles Villard. On efficient sparse integer matrix Smith normal form computations. Journal of Symbolic Computations, 32(1/2):71–99, July–August 2001. [2] B. Penz, C. Rapine, and D. Trystram. Sensitivity analysis of scheduling algorithms. European Journal of Operational research, 134:606–615, 2001. • Année 2002 [3] Jean-Guillaume Dumas, and Jean-Louis Roch. Parallel block algorithms for exact triangularizations. Parallel Computing, 28(11):1531–1548, November 2002. [4] R. Lepère, G. Mounié, and D. Trystram. An approximation algorithm for scheduling trees of malleable tasks. European Journal of Operational Research, (142):242–249, 2002. MOAIS – 17 LIG — Dossier de contractualisation 556 [5] R. Lepère, D. Trystram, and G. J. Woeginger. Approximation scheduling for malleable tasks under precedence constraints. International Journal of Foundation in Computer Science, 13(4):613–627, 2002. [6] W. Zimmermann, W. Lowe, and D. Trystram. On scheduling send-graphs and receive-graphs under the logP-model. Information Processing Letters, 82:83– 92, 2002. • Année 2003 [7] A. Darte, and G. Huard. New complexity results on array contraction and related problems. Journal on VLSI Signal Processing, 2003. [8] A. Goldman, G. Mounié, and D. Trystram. 1-optimality of static BSP computations: scheduling independent chains as a case study. Theoretical Computer Science, (290):1331–1359, 2003. [9] A. Gupta, G. Parmentier, and D. Trystram. Scheduling precedence task graphs with disturbances. RAIRO Operational Research, 37(3):145–156, 2003. • Année 2004 [10] J. Blazewicz, M. Y. Kovalyov, M. Machowiak, D. Trystram, and J. Weglarz. Malleable tasks scheduling to minimize the makespan. Annals of Operations Research, 2004. [11] Pierre-François Dutot. Complexity of master-slave tasking on heterogeneous trees. European Journal on Operationnal Research, 2004. To appear. [12] S. Fidanova, and D. Trystram. Improved lower bounds for embedding hypercubes on de bruijn graphs. Journal of Parallel and Distributed Computing, 64(3):327–329, 2004. [13] A. Goldman, and D. Trystram. An efficient parallel algorithm for solving the knapsack problem on hypercubes. Journal of Parallel and Distributed Computing - JPDC, 64(11):1213–1222, 2004. • Année 2005 [14] J. Blazewicz, M. Y. Kovalyov, M. Machowiak, D. Trystram, and J. Weglarz. Preemptable malleable task scheduling problem. IEEE Transactions on Computers, to appear 2005. MOAIS – 18 LIG — Dossier de contractualisation 557 [15] El-Mostafa Daoudi, Thierry Gautier, Aicha Kerfali, Rémi Revire, and Jean-Louis Roch. Algorithmes parallèles à grain adaptatif et applications. Technique et Science Informatiques, 24:1–20, 2005. [16] A. Darte, and G. Huard. New complexity results on array contraction and related problems. Journal on VLSI of Signal Processing-Systems for Signal, Image and Video Technology, 40(1):35–55, 2005. [17] P. F. Dutot, L. Eyraud, G. Mounié, and D. Trystram. Scheduling on large scale distributed platforms: from models to implementations. Internat. Journal of Foundations of Computer Science, 16(2):217–237, April 2005. [18] T. Gautier, and H. R. Hamidi. Re-scheduling invocations of services on RPCbased grid. In International Journal Computer Languages, Systems and Structures (CLSS), 2005. à paratre. [19] A. Goldman, J. Peters, and D. Trystram. Exchanging messages of different size. Journal of Parallel and Distributed Computing, to appear 2005. [20] Cyrille Martin, Olivier Richard, and Guillaume Huard. Déploiement adaptatif d’applications parallèles. Technique et Science Informatiques (TSI), 2005. To appear. Articles de revues sans comité de lecture (SCL) Conférences invitées (INV) [21] P. F. Dutot, L. Eyraud, G. Mounié, and D. Trystram. Models for scheduling on large scale platforms: which policy for which application? In invited paper at the 6th Workshop on Advances in Parallel and Distributed Computational Models, Santa Fe, USA, April 2004. associated with the IEEE and ACM International Parallel and Distributed Processing Symposium (IPDPS’04). [22] F. Guinand, G. Parmentier, and D. Trystram. Construction of phylogenetic trees on parallel clusters. In Fourth SIAM International Conference on Parallel Processing and Applied Mathematics - PPAM 01, Naleczow, Poland, September 2001. Article invité. [23] G. Mounié, and D. Trystram. Dealing with uncertainty in scheduling algorithms, march, 2005. MOAIS – 19 LIG — Dossier de contractualisation 558 [24] D. Naddef, Jean-Louis Roch, and D. Trystram. Programmation parallèle et systèmes complexes. In 8ième Ecole jeunes chercheurs en Algorithmique et calcul Formel, pages 49–72, Grenoble, April 2004. ecole thématique du CNRS. [25] B. Raffin. Des grappes de PC pour la réalité virtuelle. In [email protected], Monaco, 2002. Conférencier invité. [26] D. Trystram. Scheduling on hierarchical clusters using MT. In Workshop on Scheduling and Communication, IPDPS 2001, San Francisco, April 2001. Article invité. [27] D. Trystram. Efficient algorithms for scheduling the tasks of parallel programs. In CSC05 (second workshop on Combinatorial Scientific Computing), Toulouse, France, June 2005. invited talk. Communications avec actes internationales et nationales (ACT) • Année 2001 [28] J. Blazewicz, M. Machowiak, G. Mounié, and D. Trystram. Approximation algorithms for scheduling independent malleable tasks. In Europar 2001, number 2150 in LNCS, pages 191–196. Springer-Verlag, 2001. [29] Jean-Guillaume Dumas, and Jean-Louis Roch. A fast parallel block algorithm for exact triangularization of rectangular matrices. In SPAA’01. Proceedings of the Thirteenth ACM Symposium on Parallel Algorithms and Architectures, Kreta, Greece., pages 324–325, July 2001. [30] P. Dutot, and D. Trystram. Scheduling on hierarchical clusters using malleable tasks. In Proceedings of the 13th annual ACM symposium on Parallel Algorithms and Architectures - SPAA 2001, pages 199–208, Crete Island, July 2001. [31] Luis Gustavo Fernandes, Nicolas Maillard, and Yves Denneulin. Parallelizing a dense matching region growing algorithm for an image interpoliation application. In Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA’2001), Las Vegas, June 2001. [32] Christian Guinet, Emmanuel Romagnoli, and Yves Denneulin. A scheduler of parallel and sequential jobs with dependencies for clusters and grids. In Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA’2001), Las Vegas, June 2001. MOAIS – 20 LIG — Dossier de contractualisation 559 [33] R. Lepère, D. Trystram, and G. J. Woeginger. Approximation scheduling for malleable tasks under precedence constraints. In 9th Annual European Symposium on Algorithms - ESA 2001, number 2161 in LNCS, pages 146– 157. Springer-Verlag, 2001. [34] D. Trystram, and W. Zimmermann. On multi-broadcast and scheduling receive-graphs under logP with long messages. In S. Jaehnichen and X. Zhou, editors, The Fourth International Workshop on Advanced Parallel Processing Technologies - APPT 01, pages 37–48, Ilmenau, Germany, September 2001. • Année 2002 [35] J. Allard, V. Gouranton, L. Lecointre, E. Melin, and B. Raffin. Net Juggler: Running VR Juggler with Multiple Displays on a Commodity Component Cluster. In IEEE VR, pages 275–276, Orlando, USA, March 2002. [36] J. Allard, V. Gouranton, E. Melin, and B. Raffin. Parallelizing Pre-rendering Computations on a Net Juggler PC Cluster. In Immersive Projection Technology Symposium, Orlando, USA, March 2002. [37] Jean Guillaume Dumas, Thierry Gautier, Mark Giesbrecht, Pascal Giorgi, Bradford Hovinen, Erich Kaltofen, David B. Saunders, Will J. Turner, and Gilles Villard. Linbox: A generic library for exact linear algebra. In ICMS’2002 : International Congress of Mathematical Software, pages 17–19, Beijing, China, August 2002. [38] Jean Guillaume Dumas, Thierry Gautier, and Clément Pernet. FFLAS: Finite field linear algebra subroutines. In ISSAC’2002 : nternational Symposium on Symbolic and Algebraic Computations, Lille, France, July 2002. [39] Pierre-Franois Dutot. Ordonnancement de tâches identiques sur réseau hétérogène. In École thématique sur la globalisation de ressources informatiques et des données, pages 375–384. INRIA, December 2002. • Année 2003 [40] J. Allard, M. C. Cabral, C. Goudeseune, H. Kaczmarski, B. Raffin, B. Schaeffer, L. Soares, and M. K. Zuffo. Commodity clusters for immersive projection environments. In Siggraph 2003 Course, California, July 2003. [41] J. Allard, V. Gouranton, G. Lamarque, E. Melin, and B. Raffin. Softgenlock: Active stereo and genlock for PC cluster. In Proceedings of the Joint IPT/EGVE’03 Workshop, Zurich, Switzerland, May 2003. MOAIS – 21 LIG — Dossier de contractualisation 560 [42] J. Allard, B. Raffin, and F. Zara. Coupling parallel simulation and multidisplay visualization on a PC cluster. In Euro-par 2003, Klagenfurt, Austria, August 2003. [43] J. Blazewicz, M. Kovalyov, M. Machowiak, D. Trystram, and J. Weglarz. Exact algorithms for scheduling malleable tasks. In EURO - INFORMS, Istanbul, Turkey, July 2003. [44] N. Capit, G. Da Costa, G. Huard, C. Martin, G. Mounié, P. Neyron, and O. Richard. Expériences autour d’une nouvelle approche de conception d’un gestionnaire de travaux pour grappe. In Actes de CFSE 2003, 2003. [45] T. Gautier, and H. R. Hamidi. HOMA: un compilateur IDL optimisant les communications des données pour la composition d’invocations de méthodes CORBA. In Proceedings des Rencontres Francophones du Parallélisme (RenPar’15), pages 127–134, La Colle sur Loup, France, 2003. [46] A. Mahjoub, C. Rapine, and D. Trystram. Influence of starting solutions on the stabilization of scheduling algorithms. In EURO - INFORMS, Istanbul, Turkey, July 2003. [47] R. Revire, F. Zara, and T. Gautier. Efficient and easy parallel implementation of large numerical simulation. In Springer, editor, Proceedings of ParSim03 of EuroPVM/MPI03, pages 663–666, Venice, Italy, 2003. [48] A. Tchernykh, and D. Trystram. On-line scheduling of multi-processor jobs with idle regulation. In PPAM, fifth International Conference on Parallel Processing and Applied Mathematics, Czestochowa, Poland, 7-10 September 2003. [49] Nicolas Thierry-Mieg, Laurent Trilling, and Jean-Louis Roch. A novel pooling design for protein-protein interaction mapping. In ECCB’2003 European Conference on Computational Biology, Paris, France, September 2003. [50] S. Varrette, and J.-L. Roch. Certification logicielle de calcul global avec dépendances sur grille. In M. Auguin, F. Baude, D. Lavenier, and M. Riveill, editors, Proceedings des Rencontres Francophones du Parallélisme (RenPar’15), pages 169–176, La-Colle-Sur-Loup, France, 15–17 Octobre 2003. • Année 2004 [51] J. Allard, E. Boyer, J-S. Franco, C. Ménier, and B. Raffin. Marker-less Real Time 3D Modeling for Virtual Reality. In Proceedings of the Immersive Projection Technology Workshop, Ames, Iowa, May 2004. MOAIS – 22 LIG — Dossier de contractualisation 561 [52] J. Allard, V. Gouranton, L. Lecointre, S. Limet, E. Melin, B. Raffin, and S. Robert. FlowVR: a Middleware for Large Scale Virtual Reality Applications. In Proceedings of Euro-par 2004, Pisa, Italia, August 2004. [53] Luiz Angelo Barchet-Estefanel, and Gregory Mounié. Performance characterisation of intra-cluster collective communications. In Proc. of the 16th Symposium on Computer Architecture and High Performance Computing (SBACPAD 2004), Foz do Iguau, Brazil, 27-29 October 2004, pages 254–261. IEEE Computer Society/Brazilian Computer Society, 2004. [54] Y. Deunnelin, E. Romagnoli, and D. Trystram. A synthetic workload generator for cluster computing. In 3rd International Workshop on Performance Modeling, Evaluation and Optimization of Parallel and Distributed Systems, Santa Fe, USA, April 2004. associated with the IEEE and ACM International Parallel and Distributed Processing Symposium (IPDPS’04). [55] P. F. Dutot, L. Eyraud, G. Mounié, and D. Trystram. Bi-criteria algorithm for scheduling jobs on cluster platforms. In Sixteenth ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’04), Barcelona, Spain, June 2004. [56] E. Edi, D. Trystram, and J. M. Vincent. A new approach based on caches for scheduling. In 5th Workshop on scheduling for computer and manufacturing systems, Dagstuhl, Germany, 2004. [57] J-S Franco, C. Ménier, E. Boyer, and B. Raffin. A distributed approach for real time 3D modeling. In Proceedings of the IEEE Workshop on Real Time 3D Sensors and Their Use, Washington, USA, July 2004. [58] T. Gautier, and H. R. Hamidi. Automatic re-scheduling of dependencies in a RPC-based grid. In In Proceedings of the 18th annual ACM International Conference on Supercomputing (ICS’04), pages 89–94, Saint-Malo, France, June 2004. ACM Press. [59] T. Gautier, and H. R. Hamidi. High performance composition of services with data dependencies on a computational grid. In In Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications(PDPTA’04), pages 801–809, Las Vegas, USA, June 2004. ACM Press. [60] Samir Jafar, and Jean-Louis Roch. Fault-tolerance for macro dataflow parallel computations on grid. In ICCTA’04 IEEE Conference on Information&Communication Technologies: from Theory to Applications, Damascus, Syria, April 2004. MOAIS – 23 LIG — Dossier de contractualisation 562 [61] Samir Jafar, Varrette Sébastien, and Jean-Louis Roch. Using data-flow analysis for resilience and result checking in peer-to-peer computations. In IEEE DEXA’2004 - Workshop GLOBE’04: Grid and Peer-to-Peer Computing Impacts on Large Scale Heterogeneous Distributed Database Systems, Zaragoza, Spain, August 2004. [62] L. Masko, G. Mounié, M. Tudruj, and D. Trystram. Moldable tasks scheduling in dynamic SMP clusters with communications on the fly. In PARELEC, International Conference on Parallel Computing for Electrical Engineering, Dresden, Germany, September 2004. [63] W. Nasri, and D. Trystram. A poly-algorithmic approach applied for fast matrix multiplication on clusters. In 5th International Workshop on Parallel and Distributed Scientific and Engineering Computing with Applications, Santa Fe, USA, April 2004. associated with the IEEE and ACM International Parallel and Distributed Processing Symposium (IPDPS’04). [64] G. Parmentier, D. Trystram, and J. Zola. Cache-based parallelization of multiple alignment problem. In Laforenza Danelutto and Vanneschi, editors, 10th international EUROPAR conference, number 3149 in LNCS, Pisa, Italy, September 2004. Springer Verlag. [65] A. Tchernykh, and D. Trystram. On-line scheduling of multiprocessor jobs with idle regulation. In Wyrzykowski, Dongarra, Paprzycki, and Wasniewski, editors, Proceedings of the fifth international conference PPAM’2003, number 3019. Springer Verlag, 2004. [66] Sébastien Varrette, Jean-Louis Roch, Yves Denneulin, and Franck Leprévost. Secure architectures for clusters and grids. In IEEE, editor, CRIS 2004, Grenoble, France, October 2004. [67] Sébastien Varrette, Jean-Louis Roch, and Franck Leprévost. Flowcert: Probabilistic certification for peer-to-peer computations. In IEEE, editor, 16th Symposium on Computer Architecture and High Performance Computing, IEEE SBAC-PAD 2004, pages 108–115, Foz do Iguacu, Brazil, October 2004. [68] J. Verduzco, and B. Raffin. A X window proxy server for display walls. In Proceedings of the Conference on Parallel Computing Systems, Colima, Mexico, 2004. [69] J. Zola. Cali - efficient library for cache implementation. In IEEE Proc. of PCS 2004, pages 415–420, 2004. • Année 2005 MOAIS – 24 LIG — Dossier de contractualisation 563 [70] J. Allard, C. Ménier, E. Boyer, and B. Raffin. Running large VR applications on a PC cluster: the flowVR experience. In Proceedings of EGVE/IPT 05, Denmark, October 2005. [71] J. Allard, and B. Raffin. A shader-based parallel rendering framework. In IEEE Visualization Conference, Minneapolis, USA, October 2005. [72] Luiz Angelo Barchet-Estefanel, and Gregory Mounié. Prédiction de performances pour les communications collectives. In Proceedings du 16ème Rencontre Francophone du Parallélisme (RenPar’16), Le Croisic, France, 6-8 April 2005, pages 101–112. ACM SIGOPS France, 2005. [73] Luiz Angelo Barchet-Steffenel, and Gregory Mounié. Total exchange performance modelling under network contention. In Proceedings du 6th International Conference on Parallel Processing and Applied Mathematics (PPAM 2005), Poznan, Poland, 11-14 September 2005, page To be published. Springer Verlag, 2005. [74] N. Capit, G. Da-Costa, Y. Georgiou, G. Huard, C. Martin, G. Mounié, P. Neyron, and O. Richard. A batch scheduler with high level components. In Cluster Computing and Grid Proceedings, number 143, 2005. [75] Samir Jafar, Thierry Gautier, Axel W. Krings, and Jean-Louis Roch. A checkpoint/recovery model for heterogeneous dataflow computations using work-stealing. In LNCS Springer-Verlag, editor, EUROPAR’2005, Lisboa, Portogal, August 2005. [76] Samir Jafar, Axel W. Krings, Thierry Gautier, and Jean-Louis Roch. Theftinduced checkpointing for reconfigurable dataflow applications. In IEEE, editor, IEEE Electro/Information Technology Conference , (EIT 2005), Lincoln, Nebraska, May 2005. This paper received the EIT’05 Best Paper Award. [77] Axel W. Krings, Jean-Louis Roch, and Samir Jafar. Certification of large distributed computations with task dependencies in hostile environments. In IEEE, editor, IEEE Electro/Information Technology Conference , (EIT 2005), Lincoln, Nebraska, May 2005. [78] Axel W. Krings, Jean-Louis Roch, Samir Jafar, and Sebastien Varrette. A probabilistic approach for task and result certification of large-scale distributed applications in hostile environments. In LNCS Springer-Verlag, editor, European Grid Conference EGC’2005, Amsterdam, The Netherlands, February 2005. [79] L. Pigeon, L. Testard, T. Gautier, and P. Roux. Towards A distributed high performance computing environment for CAPE-OPEN standard. In In Proceedings of 7th World Congress of Chemical Engineering, Glasgow, Scotland, 2005. MOAIS – 25 LIG — Dossier de contractualisation 564 [80] Jafar Samir, Gautier Thierry, and Roch Jean-Louis. Modèle de coût algorithmique intégrant des Mécanismes de tolérance aux pannes et expérimentations. In Proceedings des 16emes rencontres francophones du parallélisme (RenPar’16), pages 125–136, Le Croisic, France, April 2005. Convex clustering algorithm for [81] J. Pecero Sanchez, and D. Trystram. makespan minimization with large communication delays. In 6th workshop on Models and Algorithms for Planning and Scheduling Problems, MAPSP’2005, Siena, Italy, June 2005. [82] J. Pecero Sanchez, and D. Trystram. A new genetic convex clustering algorithm for parallel time minimization with large communication delays. In International Conference Parallel Computing, ParCo’2005, Malaga, Spain, September 2005. [83] D. Trystram, and J. Zola. Parallel multiple sequence algnment with decrentralized cache support. In EUROPAR’05, number 3648 in LNCS, pages 1217– 1226, Lisboa, Portugal, August 2005. Springer. [84] Sébastien Varrette, Sébastien Georget, Johan Montagnat, Jean-Louis Roch, , and Franck Leprevost. Distributed authentication in GRID5000. In Springer Verlag, editor, LNCS OnTheMove Federated Conferences - Workshop ”Grid Computing and its Application to Data Analysis (GADA’05)”, LNCS, Agia Napa, Cyprus, November 2005. Springer Verlag. [85] Sébastien Varrette, Sébastien Georget, Jean-Louis Roch, and Franck Leprevost. Authentification distribuée sur grille de grappes basée sur LDAP. In Proceedings des 16èmes rencontres francophones du parallélisme (RenPar’16), Le Croisic, France, April 2005. ASF - Ecole des Mines de Nantes. Communications sans actes (COM) [86] O. Beaumont, E. M. Daoudi, N. Maillard, P. Manneback, and J.-L. Roch. Tradeoff to minimize extra-computations and stopping criterion tests for parallel iterative schemes. In 3rd International Workshop on Parallel Matrix Algorithms and Applications (PMAA04), CIRM, Marseille, France, October 2004. [87] A. Darte, and G. Huard. Stage scheduling for dummies. In Dagstuhl seminar on scheduling for parallel architectures: theory, applications, challenges, 2005. [88] B. Gaujal, G. Huard, J. Pecero, E. Thierry, and D. Trystram. Convex clustering. In First Bertinoro workshop on algorithms for scheduling and communications, 2004. MOAIS – 26 LIG — Dossier de contractualisation 565 [89] G. Huard, and O. Richard. A middleware toolbox for clusters and grid. In Dagstuhl seminar on future generation grids, 2004. [90] J. Verduzco, N. Garcia, J. Pecero, P. Dominguez, M. Pillon, N. Capit, O. Richard, F. Benavidez, P. Fletes, and M. Martinez. Grid-ITC: Una intraGRID de bajo costo para las necessidades de calculo intensivo del instituto tecnologico de colima. In VI Jornadas Internacionales de las Ciencias Computacionales, Colima, Mexique, 2004. Ouvrages scientifiques (ou chapitres) (OS) • Année 2001 • Année 2002 [91] T. Gautier, H. Hong, J.-L. Roch, and W. Schreiner. Handbook of Computer Algebra – Foundations, Applications, Systems, chapter Parallel implementation. Springer Verlag, Heidelberg, 2002. • Année 2003 • Année 2004 [92] P.-F. Dutot, G. Mounié, and D. Trystram. Scheduling Parallel Tasks: Approximation Algorithms, pages 26–1–26–24. chapter 26. 2004. • Année 2005 [93] J. Blazewicz, K. Ecker, and D. Trystram. Feature cluster on recent advances on scheduling in computer and manufacturing systems, volume 64. Elsevier, 2005. [94] D. Trystram, Y. Slimani, and M. Jemni. Hors serie de la revue des Sciences et Technologies de l’Information. Hermes, Lavoisier, 2005. MOAIS – 27 LIG — Dossier de contractualisation 566 [95] O. Beaumont, V. Boudet, P. F. Dutot, Y. Robert, and D. Trystram. Chapitre 3. Gestion de ressources, chapter 3. Hors serie TSI. Hermes, 2005. [96] T. Gautier, O. Coulaud, and H. R. Hamidi. Informatique répartie, chapter Couplage de codes parallèles. Hermès Science Paris, 2005. ISBN 2-7462-08571. [97] D. Hagimont, D. Litaize, Z. Mahjoub, and D. Trystram. Chapitre 1. Introduction. Hors serie TSI. Hermes, 2005. [98] A. Mahjoub, and D. Trystram. Stabilisation pour des applications parallèles. Informatique et Systèmes d’Information. Hermes, Lavoisier, 2005. Ouvrages de vulgarisation (ou chapitres) (OV) [99] E. Bampis, and D. Trystram. Les rondes olympiques. Tangente, hors-serie Maths et Sports, (19), June 2004. [100] D. Trystram. Le calcul à hautes performances. Tangente-sup, (26):12–14, février 2005. Directions d’ouvrages (DO) Edition de livres [101] D. Trystram, Y. Slimani, and M. Jemni, editors. Informatique répartie. Hors serie TSI. Hermes, 2005. Edition d’actes de colloques, de numéro spéciaux de revues [102] D. Bartz, B. Raffin, and H.-W. Shen, editors. Parallel Computing, Special Issue, volume 31. February 2005. [103] J. Blazewicz, K. Ecker, and D. Trystram. The best papers from CIRM workshop (october 2001). In special section of Parallel Processing Letters, volume 14. World Scientific Publishing Company, 2004. MOAIS – 28 LIG — Dossier de contractualisation 567 [104] Said El Hajji, Aziz Hilali, and Jean-Louis Roch. Actes de la conférence Cryptologie et Applications - 2003. Université Mohamed II, Rabbat, Maroc, September 2004. Autres publications (AP) Thèses et habilitations • Année 2001 [105] Nicolas Maillard. Calcul Haute-Performance et Mécanique Quantique : analyse des ordonnancements en temps et en mémoire. PhD thesis, UNIVERSITE JOSEPH-FOURIER - GRENOBLE I, 11 2001. tel-00004684. • Année 2002 [106] Wahid Nasri. Parallélisation d’algorithmes matriciels récursifs par le pardigme Diviser pour règner dans des environnements homogène et hétérogène. PhD thesis, Faculté des sciences de Tunis, Université de Tunis El Manar, June 2002. • Année 2003 [107] Gilles Parmentier. Une approche générique pour l’alignement multiple et la reconstruction de phylogénies. Thèse de doctorat, Institut National Polytechnique de Grenoble, December 2003. [108] Emmanuel Romagnoli. Exploitation efficace de grappes dynamiques de PC indifférenciés pour le calcul paralléle. Thèse de doctorat, Institut National Polytechnique de Grenoble, December 2003. [109] Emmanuel Wild. Contribution théorique et numérique à la résolution du problème du Voyageur de Commerce. PhD thesis, INSTITUT NATIONAL POLYTECHNIQUE DE GRENOBLE - INPG, 09 2003. tel-00005167. • Année 2004 [110] Pierre-François Dutot. Algorithmes d’ordonnancement pour les nouveaux supports d’exécution. PhD thesis, INP Grenoble, August 2004. MOAIS – 29 LIG — Dossier de contractualisation 568 [111] Rémi Revire. Ordonnancement de graphe dynamique de tâches sur architecture de grande taille. Régulation par dégénération séquentielle et distribuée. PhD thesis, INP Grenoble, September 2004. • Année 2005 [112] Nhien An Le Khac. Définition et évaluation d’INUKTITUT : un interface pour l’environnement de programmation parallèle asynchrone Athapascan. PhD thesis, INSTITUT NATIONAL POLYTECHNIQUE DE GRENOBLE - INPG, 03 2005. tel-00009533. [113] Jesus Verduzco. Environnement X Window pour mur d’images. PhD thesis, INP Grenoble, June 2005. 6 Principales responsabilités scientifiques et administratives • Denis Trystram est éditeur européen de la revue ”Parallel Computing”. • Bruno Raffin est organisateur des symposiums EGPGV04 et EGPGV06. • Jean-Louis Roch est le responsable INPG du Master joint UJ-INPG Cryptologie, Sécurité et Codage de l’Information. • Comités de programme et d’organisation de conférences – comité de programme MAPSP’6 (sixth Workshop on Models and Algorithms for Planning and Scheduling Problems) - Aussois, France (Avril 2003) – comité de programme de WEA’03 (Workshop on Efficient and Experimental Algorithms) - Monte Verita, Ascona (April 2003) – comité de programme PARCO’2003 (Parallel Computing) - Dresden, Germany (August 2003) – Advisory board, EuroPar’2003 - Klagenfurt, Autriche (Aout 2003) – comité de pilotage PARCO’2003 - Dresden, Germany (Aout 2003) – co-responsable de HETEROPAR (First workshop on Hetergoeneous Parallel computing) - Czestochowa, Pologne (Septembre 2003) – comité de programme de PPAM’03 (Fifth Internat. Conf. on Parallel Processing and Applied Mathematics) - Czestochowa, Pologne (Septembre 2003) MOAIS – 30 LIG — Dossier de contractualisation 569 – comité de programme du workshop ”parallel and distributed bioinformatic applications”, Czestochowa, Pologne (Septembre 2003) – comité de programme SBAC-PAD 2003 (15th Symposium on Computer Architecture and High-Performance Computing) - Sao Paulo, Brazil (Oct. 2003) – comité de programme de MISTA (Multidisciplinary International Conference on Scheduling: Theory and Applications) - Nottingham, UK (September 2003) – comité de programme de ENC’03 (Mexican International Conference in Computer Science) - Mexico (2003) – comité de programme de ISPDC (2nd International Symposium on Parallel and Distributed Computing) - Ljubljana, Slovenia (october 2003) – comité de programme de RenPar’15 (15ièmes rencontres francophones du Parallélisme) - La colle sur Loup, France (Novembre 2003) – comité de pilotage RenPar’15 - La colle sur Loup, France (Novembre 2003) – comité de programme de IPDPS 2004 (Fifteenth International Parallel and Distributed Processing Symposium) - Santa fe, USA (april 2004) – comité de programme de WEA’04 (The Third International Workshop on Experimental and Efficient Algorithms) - Bzios, Brazil (May 2004) – co-responsable du workshop xx - Bertinoro, Italy (june 2004) – comité de programme de PARELEC’04 (Fourth International Conference on Parallel Computing in Electrical Engineering) - Dresden, Germany (sept. 2004) – comité de programme de SBAC-PAD 2004 (16th Symposium on Computer Architecture and High-Performance Computing) - Sao Paulo, Brazil (Oct. 2004) – comité de programme de ENC’2004 (Mexican International Conference on Computer Science) - Mexico (sept. 2004) – comité de programme de AICCSA-05 (ACS/IEEE International Conference on Computer Systems and Applications) - Cairo, Egypt (january 2005) – comité de programme de HCW’05 (Heterogeneous Computing Workshop) - Denver, USA (april 2005) – comité de programme de MISTA’05 (2nd Multidisciplinary International Conference on Scheduling : Theory and Applications) - New York, USA (july 2005) – comité de programme de RENPAR’16, Le Croisic, France (Avril 2005) MOAIS – 31 LIG — Dossier de contractualisation 570 – responsable du Workshop on scheduling and load-balancing EuroPar’2005 - Lisboa, Portugal (Aout 2003) – comité de programme PARCO’2005 (Parallel Computing) - Malaga, Spain (september 2005) – comité de pilotage PARCO’2005 - Malaga, Spain (september 2005) – comité de programme de PPAM’05 (Sixth International Conference on Parallel Processing and Applied Mathematics) - Poznan, Poland (sept. 2005) – comité de programme de HPCC’05 (International Conference on High Performance Computing and Communications) - Sorento, Italy (sept. 2005) – comité de programme de ENC’05 (Mexican International Conference on Computer Science) Puebla, Mexico (sept. 2005) – comité de programme de SBAC-PAD 2005 (17th Symposium on Computer Architecture and High-Performance Computing) - Rio de Janeiro, Brazil (Oct. 2005) – comité de programme de HiPC’05 (12th Annual International Conference on High Performance Computing) - Goa, India (december 2005) 7 Perspectives de recherche 06-10 N.B. Ce paragraphe est rédigé en anglais. Most of our previous works have been mostly focused on homogeneous architectures. Taking benefit of our recent results (both theoretcial and softwares), we will develop, within the LIG laboratory, our research in the context of a general ambient computing system with heterogeneous and dynamic resources. Those resources may be concurrently shared by several applications; this is indeed often the case for SMPs servers. We will also further develop researches related to adaptive algorithms and programming for multi-core architectures and embedded systems. 7.1 Scheduling The work on scheduling mainly concerns multi-objective optimization, to find good trade-off between criteria that are commonly antagonistic. Two emerging subjects have been initiated last year, namely the use of game theory to solve complex resource management problems and how to deal with incertainty and disturbance in classical Combinatorial Optimization problems. Regarding batch scheduling, one problem which remains to be solved is how to mix rigid and moldable tasks. Most of the actual codes are rigid ones, mainly due to historical inertia (users just look at the available CPU resources before submitting MOAIS – 32 LIG — Dossier de contractualisation 571 a job). This problem is strongly related to the management of reservation periods which should be taken into account for a practical use. Stability and Sensitivity A crucial factor for implementing the scheduling algorithms on new execution supports is versatility (temporary addition – or removing – of machines, bad estimations of times for transferring data, internal cache effects that affect the computation speed, etc.). Thus, it is necessary to develop mechanisms for reacting to the disturbances of the parameters from which the schedule has been determined. The first possibility (called sensitivity) is to analyze the scheduling algorithms in regard to their ability to react to disturbances. The second possibility (the stability) is to develop adequate correction mechanisms to control these effects. For instance, work-stealing scheduling may be considered as a way to control stability of an on-line greedy schedule, not stable in the general case. One of our goals is to propose generic algorithmic schemes for correcting the solution determined without disturbances. 7.2 Adaptative algorithms Based on our previous results, parallel adaptive algorithms with a performance guarantee and their programming in real applications is becoming a key research topic for the Moais project. This is a transversal research axis for all the members of Moais. Today’s results lead to the development of several adaptive parallel schemes in different contexts. In particular, this is the central topic of the IMAG-INRIA AHA project that gathers the MOAIS (leader), ARENAIRE, GILCO and MOVI teams. Such shcemes have been used for four different applications: • Real time 3D modeling (D. Vernizzi, E. Boyer, C. Menier, B. Raffin, JL. Roch) where the algorithm has to adapt to reach the highest level of detail it can achieve under resources (available processors) and time constrains (real time modeling is targeted). • Exact sparse and dense matrix computations with integer or rational coefficients (C. Bouillaguet, JG. Dumas, T. Gautier, JL. Roch): determinant, minimal and characteristic polynomial, system solving, normal forms with LinBox library. The reference algorithm is a sequential iteration with early termination (dynamic stopping criterion). Based on workstealing, the adaptive parallelization consists in anticipating further iterations using a parallel algorithm with amortized overhead on additional resources. • Quadratic assignment (VD. Cung, T. Gautier, S. Jafar, JL. Roch). In this case we target executions on a very large number of non-uniformly related processors (grid5000). Given the high volatility of the resources on such platforms, MOAIS – 33 LIG — Dossier de contractualisation 572 the application has to adapt itself to complete its exeuction. The adaptation scheme relies on a dynamic checkpoint/restart paradigm. • Dynamic deployment on grids (G. Huard, T. Gautier). The goal is to have a deployment algorithm that adapts itself to both the resources available and the state of the interconnection network, using on-the-fly estimation of the current local load and connection latency. The adaptive mechanism is based on a workstealing strategy guided by those estimations. Defining the relevant parameters for performing this adaptation is the key underlying research trend. We will pursue and extend these works with an emphasis not only on adaptation to resources but also to meet multicriterion performance objectives. For instance interactivity imposes latency, precision, level of detail and refresh rate constraints. This can be tackled by: • enrolling/unrolling some parts of the computation to tune the dicretization step (time, space,...) and meet the precision constraints of the numerical simulation. • ignoring some resources. Latency is affected by the number of input and output resources. The greater this number, the longer the latency. Thus, if the latency constraint is no more met, a way to decrease latency is to ignore some of those resources in the application. This requires the application to be dynamically maleable. For instance, the application might be asked to decrease its latency or to improve other performance objectives. 7.3 Kaapi+FlowVR : coupling coarse-grain and fine-grain scheduling Our previous results distinguish coarse-grain scheduling, managed by FlowVR, and fine-grain scheduling, managed by Kaapi. Both softwares rely on a common computation model: the dataflow representation of the computation. Even if they are interoperable and have been simultaneously used for some applications (especially Sappe and 3D real-time adaptive reconstruction), their usage has to be specified in the application code. Also a long term perspective of Moais is to provide a single interface that automatically integrates both kind of scheduling. To tackle this challenging problem, we intend to consider a generic recursive description of a parallel application: part of the recursion can be unrolled to compute a coarse grain schedule based on analysis of dependencies; the remaining part can be exploited at run time to provide adaptation to the execution conditions, both data and architecture. Our first direction will be to extend Kaapi runtime (Kernel for Asynchronous, Adaptive, Parallel and Interactive Application) to control efficiently the scheduling of FlowVR modules. Indeed, to manage the complexity related to fine grain components and to reach high efficiency on a cluster architecture require to consider a dynamic behavior. MOAIS – 34 LIG — Dossier de contractualisation 573 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 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 interface to specialize the computation of a good schedule of the data flow graph. Moreover, the kernel will provide operators on the graph (e.g. computes a partition from a schedule, remapping tasks, ...) to allow to control a distributed execution. This will make possible the use of advanced coarse grain scheduling algorithms in the context of applications with complex dependencies. 7.4 Interactivity We propose to develop techniques to manage a distributed interactive application regarding the following criteria : • latency (the application reactivity) • refresh rate (the application continuity) • coherency (between the different components) • level of detail (the precision of computations) We propose to develop a programming environment 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 will enable the user to loosen coherency where it is acceptable, to improve asynchronism and thus performance. FlowVR do provide users with such possibilities. The first developments showed that an application may require to mix several approaches to lead to a good tradeoff regarding coherency and performance. However these approaches maximize 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. We are planning to explore autonomic 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 tradeoff given the user wishes and the resources available. Issues include multicriterion optimizations, adaptative algorithmic schemes, distributed decision making, global stability and balance of the regulation effort. MOAIS – 35 LIG — Dossier de contractualisation 7.5 574 Embedded systems In order to improve the performance of current embedded systems, Multiprocessor System-on-Chip (MPSoC) offers many advantage, 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 in order to save power and time. This challenge may be addressed by parallel computing coupled with performant scheduling. Also on-going work focuses on reusing the scheduling technologies developed in Moais for embedded systems. In the framework of a CIFRE contract with ST (thesis F Blachot), we consider the problem of large scale instruction scheduling within embedded VLIW processors, such as the ST200. We use optimal or near-optimal methods for the computation of the instructions schedule even if they are computationally prohibitive. The challenge here is the study automatic fine grain tuning and adaptation of a program to a given architecture, which is a key point to raise portable performances. We also participate to the RNTL ICOP proposal (july 2005) to develop this research. Another way of adressing MPSoCs programming is to use on-line efficient schedules. Kaapi is being transfered on MPSoCs platforms in collaboration with ST (Serge Paoli). First results (joined master thesis of J Bernard), obtained on MPEG4 encoding, are very promising. This work recently recevied additionals fundings (BDI grant cofunded by ST and CNRS) and a MINALOGIC contract proposal (ST, MOAIS, CAPS, TIMA) is currently under review. We are also considering adaptive algorithms to take advantage of the new trend of computers to intergrate several computing units that may have different computing abilities. For instance today machines can be equiped with several dual-core processors and graphical processing units. New architectures, like the Cell processors, also integrates several computing units. First work will focus on balancing work load on multi GPU and CPU architectures for scientific visualization problems (CIFRE Ph.D. grant funded by BULL). 7.6 Security Among our recent results, we have extended the probabilistic certification of executions on global architectures. In collaboration with Axel Krings, hosted at Moais within the Ragtime project, we have developed a probabilistic detection algorithm against massive malicious attacks (virus, trojan horses, ...). This result was applied to different classes of parallel program with dependences. It generalizes the results obtained last year about certification that did not take into account all malicious attacks. This algorithm makes possible the use of a global computing platform including non-trusted resources, which is the case for peer-to-peer computing infrastructures. However, the application has to tolerate few errors. Also, current research work MOAIS – 36 LIG — Dossier de contractualisation 575 focuses on efficient self-correcting algorithms with optimal redundancy. As target applications, Moais has submitted an ARA proposal to develop selection and sorting algorithms (involved in the Ragtime medical application) and modular computations. This works will open future perspectives in the context of ambient systems to provide guarantee against malicious attacks. MOAIS – 37 LIG — Dossier de contractualisation 576 Annexe 1 - liste détaillée des membres de l'équipe NOM Prénom Chercheurs GAUTIER Thierry RAFFIN Bruno Enseignantschercheurs DANJEAN Vincent HUARD Guillaume MOUNIE Grégory ROCH Jean-Louis TRYSTRAM Denis ITA/IATOS3 Section Etab. Grade %Recherche1 Quot.2 07 07 INRIA INRIA CR CR 100% 90% 1 1 07 07 07 07 07 UJF UJF INPG INPG INPG MCF MCF MCF MCF PR 100% 100% 100% 100% 100% 1 1 1 1 1 INRIA Post-doc 100% 1 Personnels sous contrat SUARES Luciano LISTE DES DOCTORANTS AU 01/09/2005 NOM Prénom Etablissement ALLARD Jérémie INPG ARCILA Thomas INPG BERNARD Julien INPG BLACHOT Florent ESTEFANEL Luiz-Angelo INPG INPG EYRAUD Lionel HAMIDI Hamid-Reza JAFAR Samir INPG INPG INPG MOULAY Feryal Kamila MENIER Clément PECERO-SANCHEZ Jonathan PIGEON Laurent RZADCA Krzysztof INPG INPG INPG INPG INPG 1 cf Annexe 1 cf Annexe 1 3 Personnels explicitement rattachés à l’équipe 2 -1- Financement Menrt + INRIA CIFRE BDI CNRS cofinancée CIFRE Bourse gvt brésilien MENRT Bourse SFERE BGF FranceSyrie+ATER CIFRE Alloc ENS Bourse ConactylSferee CIFRE BGF Cotutelle FrancePologne Partenaire Bull STMicro STMicro Bull INRIA/MOVI IFP Polish-Japanese Institute. Of Information Technology, Varsovie LIG — Dossier de contractualisation 577 SAULE Erik TRAORE Daouda VARRETTE Sébastien INPG INPG INPG ZOLA Jaroslaw INPG MENRT BGF France-Mali Cotutelle Univ Luxembourg Luxembourg Cotutelle - BGF Ecole Polytechnique France-Pologne Czestocholva LISTE DES MEMBRES NON PUBLIANTS4 AU 01/09/2005 NOM Prénom Etablissement Grade Fonction (éventuelle) LISTE DES ENSEIGNANTS-CHERCHEURS ASSOCIES5 ET COLLABORATEURS BENEVOLES6 AU 01/09/2005 NOM Prénom Etablissement Grade Statut Pour le calcul du NE ont été retenues les données suivantes sur la période du 1/10/2004 au 31/09/2005: • Nombre de chercheurs : 1.9 soit NE += 1.9 • Nombre d’enseignants-chercheurs (à 100%) : 4 soit NE += 2.67 Vincent Danjean, arrivé le 1/09/2005 n’est pas comptabilisé dans ce NE. • Chercheurs invités : 1 à 66% soir NE+=0.66 Axel Krings : Seules ses publications effectuées en collaboration avec des membres du projet ont été citées et comptabilisées dans ce rapport. • Ingénieurs : 6 mois (Loick Lecointre du 1/10/04 au 31/03/05), soit NE += 0.25 • Postdocs : 0 (Luciano Suares arrivé le 1/10/2005 n’est pas comptabilisé dans le NE) • Doctorants : 13 dont 4 à mi-tems : NE += 8.67 Soit Ne = 12,74 4 Selon le critère défini par la Direction de la recherche (DSPT9) Un enseignant-chercheur associé est un collègue d'un autre site que Grenoble et d'un établissement avec lequel le laboratoire n'a pas de relation formalisée 6 toute personne qui, sans être usager ou personnel d'un des établissements partenaires du laboratoire, concoure bénévolement à la réalisation de ses missions et n'a pas d'employeur 5 -2- 578 LIG — Dossier de contractualisation Annexe 2 Nom Prénom Date de Référence des soutenance publications et des (1) brevets (2) Mode de financement (3) Etablissemen t d'inscription INPG Univ. Tunis (assistant) Univ. Tunis Bourse MENRT INPG 10/2001 06/2002 Bourse MENRT INPG UJF D Trystram 06/2003 Bourse MENRT INPG Bourse MENRT D Naddef Bourse MENRT Bourse Cifre HP INPG 11/2001 D. Trystram 06/2003 B. Plateau JL Roch 09/2003 D Trystram Y Denneulin 12/2003 BGF FrancePologne INPG J Chassin B Plateau 09/2004 08/2004 INPG D. Trystram BDI D. Trystram JL Roch P. Valiron Directeur(s) de thèse Liste des thèses soutenues (du 01/10/2001 au 01/10/2005) 2001 LEPERE Renaud MAILLARD Nicolas 2002 WAHID Nasri 2003 WILD Emmanuel PARMENTIER Gilles REVIRE Rémi ROMAGNOLI Emmanuel 2004 GARSTESCKI Luckaz DUTOT Pierre-François 2005 -3- Situation professionnelle (6) DEA ou master d'origine (5) ED de rattachement (4) Maiitre-Assistan Univ. Tunis Ingénieur Société Alma (38). Maitre de Conf. UFRGS Brésil Univ. DEA FST Univ Tunis ED MSTII ROCO Grenoble Grenoble ED MSTII Math Applis Grenoble Grenoble FST Tunis ROCO Grenoble ROCO Grenoble Informatique Grenoble Informatique Grenoble Professeur enseignement secondaire ED MSTII Grenoble ED MSTII Grenoble ED MSTII Grenoble ED MSTII Grenoble Master Univ. Ingenieur PME Gdansk Pologne Informatique UCB Lyon ATER à Nancy Entreprise Bull ENS de Lyon ED MSTII Grenoble ED MSTII Grenoble VERDUZCO Jésus LE KHAC Nien An EDI Euloge B. Plateau T Gautier B. Plateau B Raffin D. Trystram 06/2005 03/2005 01/2005 -4- Bourse Côte d’Ivoire Bourse Gouvernement français et Egide Bourse Mexique INPG INPG INPG ED MSTII Grenoble ED MSTII Grenoble Master Ho Chi Minh Villa Informatique Grenoble ED M S T I I Informatique Grenoble Grenoble Professeur Vietnam Professeur Mexique POST-DOC Dublin LIG — Dossier de contractualisation 579 LIG — Dossier de contractualisation 580 Annexe 3 : indicateurs de production scientifique 2001 Livres - d’audience nationale - d’audience internationale Chapitres d’ouvrages - d’audience nationale - d’audience internationale Editions d’ouvrage - d’audience nationale - d’audience internationale Revues avec comité de lecture - d’audience nationale - d’audience internationale Conférences avec actes publiés et comité de lecture - d’audience nationale - d’audience internationale Conférences invitées - d’audience nationale - d’audience internationale Thèses soutenues Habilitations soutenues 2002 2003 0 1 2004 2005 0 1 5 1 0 2 1 1 0 2 0 4 0 3 0 4 2 5 0 7 1 4 3 8 0 19 3 13 0 2 2 0 1 0 1 0 0 0 3 0 1 1 2 0 0 2 1 0 -5- LIG — Dossier de contractualisation 581 Annexe 4 : Contrats institutionnels Context e Catégor ie Thème Coordonnate ur Frédéric Sutter (INRIA Algorille) ARC INRIA OTAPHE Ordo. SDFOG MENRT ACI GRID Réalité Bruno Raffin Virt. DOC-G Van Dat Cung Opti. comb. sur (PRISM) grille Collabora Nb de tions parte spécifique naires s7 Algorille Graal 01/05 12/06 1 Grimage 01/02 12/03 45000 01/02 12/04 40 744 06/03 06/06 21800 3 6 IMAGINRIA AHA Algo. Hybrides. Adaptatifs Guillaume Huard 5 NoE CoreGRID Thierry Priol (IRISA) 42 RNTL GeoBench Bruno Raffin 5 ACI Grid2 Animation Thierry Gautier 5 ACI Cyber2 Bruno Raffin 4 ACI Grid5000 Franck Cappello 9 7 Soutien financier propre 3 Ragtime Serge Miguet Grille médicale (LIRIS) sécurisée Région Début Fin PRISM Versailles LIFL Lille LIRIS, CREATIS , IBPN, GRAAL, IN2P3 GILCO, LMC, MOVI, ARENAI RE 03/05 03/07 06/04 06/07 I3D, LIFO CEA, BRGM, TGS IRISA, LABRI, LIP, INRIA Movi, INRIA Artis, LIRIS 01/03 12/04 5000 38000 27680 157428 09/02 09/04 16825 01/03 12/06 13000 01/04 12/07 125000 Noms des partenaires avec lesquels sont menées plus particulièrement des recherches conjointes -6- LIG — Dossier de contractualisation AI FranceMaroc AI FranceTunisie INRIADGRSR T PICS CNRS LAFMI 582 Parallélisme sur Jean-Louis grappes Roch 1 FST Univ Oujda 01/02 12/04 Systèmes Denis parallèle à grande Trystram échelle 4 FST Tunis UVSQ, LIPN 01/05 12/06 Missions 2 UFRGS Brésil 01/05 12/06 Missions CICESE Ensenada TU Halle et TU Bayreuth, Allemagn e TU Poznan TU Czestocho wa, Pologne Berkeley Univ Evry 01/05 12/06 15000 Parallélisme et applications de Bruno Raffin réalité virtuelle Alignementmulti Denis ple parallèle Trystram 2 PEA Procope Tâches malléables Denis Trystram 3 PEA Poloniu m Alignement Denis multiples et Trystram ordonnacement 3 FranceOptimisation Berkeley multi-critères Denis Trystram 3 Missions 01/02 12/04 Missions 01/05 12/06 Missions 01/03 12/03 Missions NB La liste des contrats institutionnels internationaux n’est pas exhaustive (cf paragraphe 4.1 du rapport pour les détails). Contrats à financement industriel Partenaire(s) ST Micro. Début Fin Thème Ordt-compil. Pixelis Envt interoperable distribué simul. CAPE-OPEN Parallélisation d’exploration BULL LIPS Microsoft Syst et Prog parallèle IFP Montant 09/02 09/06 36000 09/04 09/07 22500 06/03 06/04 01/03 12/06 01/03 12/04 -7- 10426 113355 42651