Software Engineer, PhD Student
Airbus Operations SAS - Toulouse, France
- Designed and implemented in C a hypervisor enabling the predictable execution of safety-critical applications on MPPAs (Massively Parallel Processor Architecures) with 200+ cores.
- Developed a scheduling tool parallelizing legacy applications on MPPAs using Directed Acyclic Graphs and makespan-optimization techniques. Implementation using Constraint Programming scaled up to 100,000 tasks.
- Developed a case study based on a real-world avionics application to validate the approach. It exhibited cycle-accurate predictability and effective speedups close to the theoretical maximum.
Research Assistant, Intern
PhD in Computer Science
Institut Supérieur de l'Aéronautique et de l'Espace (ISAE) - Toulouse, France
- Title : "Predictable Execution on Many-core Processors"
- Advisors : Claire Pagetti & Éric Noulard (ONERA), Pascal Maurère & Benoît Triquet (Airbus)
- Context : CIFRE (Industrial Agreement of Training through Research) Agreement Airbus / ONERA
- Abstract: Many-core processors are interesting candidates for the design of modern avionics computers. Indeed, the computation power offered by such platforms opens new horizons to design more demanding systems and to integrate more applications on a single target. However, they also bring challenging research topics because of their lack of predictability and their programming complexity. In this paper, we focus on the problem of mapping large applications on a complex platform such as the Kalray MPPA256 while maintaining a strong temporal isolation from co-running applications. We propose a constraint programming formulation of the mapping problem that enables an efficient parallelization and we demonstrate the ability of our approach to deal with large problems with a real world case study.
- Abstract: Many-core processors offer massively parallel computation power representing a good opportunity for the design of highly integrated avionics systems. Such designs must face several challenges among which 1) temporal isolation must be ensured between applications and 2) bounds of WCET must be computed for real-time safety critical applications. In order to partially address those issues, we propose an appropriate execution model, that restricts the applications behaviours, which has been implemented on the Kalray MPPA-256. We tested the correctness of the approach through a series of benchmarks and the implementation of a case study.
- Abstract: The use of many-core COTS processors in safety critical embedded systems is a challenging research topic. The predictable execution of several applications on those processors is not possible without a precise analysis and mitigation of the possible sources of interference. In this paper, we identify the external DDR-SDRAM and the Network on Chip to be the main bottlenecks for both average performance and predictability in such platforms. As DDR-SDRAM memories are intrinsically stateful, the naive calculation of the Worst-Case Execution Times (WCETs) of tasks involves a significantly pessimistic upper-bounding of the memory access latencies. Moreover, the worst-case end-to-end delays of wormhole switched networks cannot be bounded without strong assumptions on the system model because of the possibility of deadlock. We provide an analysis of each potential source of interference and we give recommendations in order to build viable execution models enabling efficient composable computation of worst-case end-to-end memory access latencies compared to the naive worst-case-everywhere approach.
- Abstract: This study presents a soft deadline scheduler for distributed systems that aims of exploring data locality management. In Hadoop, neither the Fair Scheduler nor the Capacity Scheduler takes care about deadlines defined by the user for a job. Our algorithm, named as Cloud Least Laxity First (CLLF), minimizes the extra-cost implied from tasks that are executed over a cloud setting by ordering each of which using its laxity and locality. By using our deadline scheduling algorithm, we demonstrate prosperous performance, as the number of available nodes needed in a cluster in order to meet all the deadlines is minimized while the total execution time of the job remains in acceptable levels. To achieve this, we compare the ability of our algorithm to meet deadlines with the Time Shared and the Space Shared scheduling algorithms. At last we implement our solution in the CloudSim simulation framework for producing the experimental analysis.
Best PhD award, ONERA
Information Processing and Systems (TIS) branch
Best paper award, ERTS'16 Conference
Embedded Computing Platforms category