Job offers

  • Research engineer/Post-Doc

Title: Model based Software Engineering for Cyber Physical Systems

Context and Objectives:

The AOSTE INRIA research team offers an open research engineer position in the field of Model Driven engineering for Cyber Physical Systems (CPS) i.e: systems dealing with both software and mechanical engineering. The main challenge in the development of CPS is to provide design methods, concepts and software support for coupling heterogeneous models and tools coming from the different disciplines with the underlying objective of simulation, validation and verification of the system all over the development cycle.

he research engineer will work in the context of the LEOC Clarity project (2014-2017) http://clarity-se.org/.
The main objective of the Clarity project is to promote and extend the use of the ARCADIA methodology and the Capella underlying language, first developed inside the company Thalès, and recently made available as public-domain Eclipse project under the name Capella. Its target is to support System Engineering life cycle with appropriate tools for modeling at early design stages, and to support iterative funtional and architectural refinements, Model Based System Engineering (MBSE) and Architecture engineering (System, Software, and Hardware). More information on the Capella methodology may be found at : http://www.polarsys.org/capella
The Clarity consortium gathers major industrial partners such as Airbus, Airbus Defense and Space, Thalès or Areva.

In this project, the AOSTE INRIA team is providing methods and tools to define sound semantic for the behavioral models of Capella. While explicit, this semantics should be adaptable to the semantics of heterogeneous domain specific tools: Co-simulation and coordination of models are keywords of the AOSTE involvement in this project.

In his/her work, the research engineer will: 1°) explore and develop solutions for the coordination of Capella MBSE tools with domain specific simulation tools and 2°) validate the conformance of models execution from both sides compared to the intended semantics. The generation of execution traces from the models and the confrontation of these traces to the initial semantics is identified as a first intention to check this conformance.

Skills and Profile of the candidate

The candidate should hold a master or engineer degree in computer science and have development skills in java and Eclipse. Some familiarity with real-time systems concepts and Model Based Engineering is a plus.

Location:  the AOSTE team is located in Sophia Antipolis, in the INRIA center: http://www.inria.fr/centre/sophia/

website: https://team.inria.fr/aoste/

contact: Robert de Simone

Salary range: between 2600 and 3300 depending on the candidate profile

References:

      • Benoit Combemale, Julien Deantoni, Benoit Baudry, Robert France, Jean-Marc Jézéquel, Jeff Gray. Globalizing Modeling Languages. Computer, IEEE, 2014, pp. 10-13 http://hal.inria.fr/hal-00994551
      • Julien Deantoni, Frédéric Mallet, Frédéric Thomas, Gonzague Reydet, Jean-Philippe Babau, Chokri Mraidha, Ludovic Gauthier, Laurent Rioux, Nicolas Sordon. RT-simex: retro-analysis of execution traces. In Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering (FSE ’10). ACM, New York, NY, USA, 377-378. DOI=10.1145/1882291.1882357 http://doi.acm.org/10.1145/1882291.1882357
      • Ameni Khecharem, Carlos Gomez, Julien Deantoni, Frédéric Mallet, Robert de Simone. Execution of Heterogeneous Models for Thermal Analysis with a Multi-view Approach. Forum on specification & Design Languages (2014) [hal-01060309 – version 1]
      • Carlos Gomez, Julien Deantoni, Frédéric Mallet. Power consumption analysis using multi-view modeling. PATMOS – 23th International Workshop on Power and Timing Modeling, Optimization and Simulation, Sep 2013, Karlsruhe, Germany. pp. 235-238. http://dx.doi.org/10.1109/PATMOS.2013.6662180
      • Carlos. Gomez “Modeling Functional and Non-Functional Properties of Systems on A Multi-View Approch”, PhD Thesis, Université Nice – Sophia Antipolis, Nice, France, 2013 http://tel.archives-ouvertes.fr/tel-00931001
  • PhD offer

    Laboratoire d’accueil:
    http://www.maisondelasimulation.fr/, la thèse se déroulera sur le plateau de Saclay.
    Université d’accueil:
    Université de Nice Sophia-Antipolis
    Connaissances requises:
    Architecture des processeurs, Statistiques, Parallélisme, Évaluation des performances, Systèmes d’exploitation.

    Avec l’introduction massive des processeurs multi-cœurs, le parallélisme entre dans une nouvelle ère technologique. Il devient un domaine plus large, populaire, plus accessible en coût, et s’ouvre à de nouvelles applications qui étaient jusqu’à présent concentrées sur les calculs HPC. Nous constatons cependant que les temps d’exécutions des programmes parallèles sur processeurs multi-cœurs sont d’une grande volatilité (même avec un jeu de données fixé). De telles variations non négligeables des performances s’expliquent par plusieurs facteurs qui se combinent, tant à la fois au niveau logiciel (facteurs intrinsèques au code parallèle) et au niveau matériel (micro-architecture). Cette volatilité cause des problèmes de stabilité des performances, elle rend difficile une comparaison fiable entre plusieurs versions de la même application, et rend presque impossible de prédire avec précision le temps d’exécution d’une application (précision devenue nécessaire pour organiser les calculs dans un centre d’infrastructure HPC partagé).

    La variabilité des performances d’applications parallèles sur processeurs multi-cœurs a été observée et étudiée initialement par une thèse soutenue récemment à l’UVSQ sous la co-direction de Pr Sid Touati et Pr Denis Barthou:

    • Abdelhafid Mazouz. Une Étude Empirique des Performances des Applications OpenMP sur plateformes multi-cœurs. Soutenue le 11 décembre 2012 à l’UVSQ.

    Nous proposons une poursuite de cette thèse autour de deux axes complémentaires:

    1. Axe informatique: cet axe étudiera les facteurs qui influencent l’instabilité des performances des programmes (facteurs matériels et logiciels). Ce volet est expérimental et empirique, basé sur des expérimentations massives et observations fines sur des machines installées dans nos laboratoires. Son but est de trouver des leviers pour stabiliser les performances des applications.
    2. Axe statistique (en collaboration avec M. Julien Worms, maître de conférences UVSQ au LMV): Afin d’avoir une analyse pertinente des performances des programmes, cette thèse étudiera des protocoles statistiques adaptés pour comparer entre différents échantillons d’observations des temps d’exécutions. Elle impliquera la mise en ½uvre de procédures existantes ou bien le développement de nouvelles méthodologies statistiques. Grâce à cette thèse, nous pourrons analyser et détecter (avec un haut degré de confiance) quels sont les programmes parallèles qui ont les meilleures performances stables.
  • Postdoc offer

    Nous avons un sujet de post-doc disponible ici: http://tinyurl.com/a4fvl55

  • Stages de master 2 (Année 2013)

    1. Étude de la variabilité des performances de codes parallèles sur processeurs multi-cœurs:

Avec l’introduction massive des processeurs multi-cœurs, le parallélisme entre dans une nouvelle ère technologique. Il devient un domaine plus large, plus populaire, plus accessible en coût, et s’ouvre à de nouvelles applications qui étaient jusqu’à présent concentrées sur les calculs scientifiques hautes performances. Nous constatons cependant que les temps d’exécutions des programmes parallèles sur processeurs multi-cœurs sont d’une grande volatilité. De telles variations non négligeables des performances s’expliquent par plusieurs facteurs qui se combinent, tant à la fois au niveau logiciel (facteurs intrinsèques au code parallèle, facteurs intrinsèques à l’intergiciel et au système d’exploitation) et au niveau matériel (micro-architecture). Cette volatilité cause de sérieux problèmes de stabilité des performances, elle rend difficile une prédiction précise des performances des programmes. Également, elle complique les comparaisons entre plusieurs versions de la même application. Afin d’avoir une analyse pertinente des performances des programmes, ce stage master étudiera les facteurs influant la variabilité des performances des applications parallèles sur processeurs multi-cœurs et proposera des approches pour les stabiliser.

Personne à contacter: Pr Sid TOUATI

  • Ordonnancement de threads sur processeurs multi-cœurs

Les processeurs multi-cœurs donnent l’illusion au système d’exploitation que l’architecture matérielle contient plusieurs CPU identiques (vision SMP de l’architecture). En effet, les systèmse d’exploitation (Unix, Linux, Windows, MacOS) ne font pas de distinction entre les différents cœurs. Tous les cœurs sont considérés comme des CPU identiques utilisés pour exécuter les différents threads, processus, applications parallèles.
Cependant, en examinant la micro-architecture de plus près, nous remarquons que les cœurs ne sont pas indépendants. Ils paratagent des ressources communes (caches, bus, unités fonctionnelles, pipelines, etc.). Le système d’exploitation ne prend pas en considération ces caractéristiques micro-architecturales pour ordonnancer les différents threads, processus, applications parallèles. Le résultat est une perte sensible des performances réelles, même si le système a l’impression que tous les cœurs soient correctement utilisés.
Le sujet de ce stage est d’étudier de nouvelles techniques d’ordonnancement de threads sur processeurs mutli-cœurs. Ces techniques prendront en compte les caractéristiques micro-architecturales d’un processeur afin d’améliorer la vitesse d’exécution des applications.

Personne à contacter: Pr Sid TOUATI

Permanent link to this article: https://team.inria.fr/aoste/job-offers/