240 research outputs found

    Efficient Embedded System Development: A Workbench for an Integrated Methodology

    Get PDF
    International audienceThe scientific foundations of embedded system development associate two disciplines that have largely grown on their own: computer science and electrical engineering. This superposition of two domains with little common ground raises a number of industrial issues in team work organisation, sound progress tracking, and cooperation between these different skills and cultures. In this paper we introduce HOEÂČ, an integrated MDE method for embedded system development that is organised around a set of limited yet powerful artefacts. We describe how HOEÂČ can address the issues faced during development of mixed HW/SW systems and present the first version of a tool dedicated to its instrumentation

    Integrating Profiling into MDE Compilers

    Get PDF
    International audienceScientific computation requires more and more performance in its algorithms. New massively parallel architectures suit well to these algorithms. They are known for offering high performance and power efficiency. Unfortunately, as parallel programming for these architectures requires a complex distribution of tasks and data, developers find difficult to implement their applications effectively. Although approaches based on source-to-source intends to provide a low learning curve for parallel programming and take advantage of architecture features to create optimized applications, programming remains difficult for neophytes. This work aims at improving performance by returning to the high-level models, specific execution data from a profiling tool enhanced by smart advices computed by an analysis engine. In order to keep the link between execution and model, the process is based on a traceability mechanism. Once the model is automatically annotated, it can be re-factored aiming better performances on the re-generated code. Hence, this work allows keeping coherence between model and code without forgetting to harness the power of parallel architectures. To illustrate and clarify key points of this approach, we provide an experimental example in GPUs context. The example uses a transformation chain from UML-MARTE models to OpenCL code

    Enabling Traceability in an MDE Approach to Improve Performance of GPU Applications

    Get PDF
    Graphics Processor Units (GPUs) are known for offering high per- formance and power efficiency for processing algorithms that suit well to their massively parallel architecture. Unfortunately, as parallel programming for this kind of architecture requires a complex distribution of tasks and data, developers find it difficult to implement their applications effectively. Although approaches based on source-to-source and model-to-source transformations have intended to provide a low learning curve for parallel programming and take advantage of architecture features to create optimized applications, the programming re- mains difficult for neophytes. A Model Driven Engineering (MDE) approach for GPU intends to hide the low-level details of GPU programming by automati- cally generating the application from the high-level specifications. However, the application designer should take into account some adjustments in the source code to achieve better performance at runtime. Directly modifying the gen- erated source code goes against the MDE philosophy. Moreover, the designer does not necessarily have the required knowledge to effectively modify the GPU generated code. This work aims at improving performance by returning to the high-level models, specific execution data from a profiling tool enhanced by smart advices from an analysis engine. In order to keep the link between exe- cution and model, the process is based on a traceability mechanism. Once the model is automatically annotated, it can be re-factored by aiming performance on the re-generated code. Hence, this work allows us keeping coherence between model and code without forgetting to harness the power of GPUs. To illustrate and clarify key points of this approach, an experimental example taking place in a transformation chain from UML-MARTE models to OpenCL code is provided.Graphics Processor Units (GPU) sont connus pour offrir de hautes performances et d'efficacitĂ© Ă©nergĂ©tique pour les algorithmes de traitement qui conviennent bien Ă  leur architecture massivement parallĂ©le. Malheureusement, comme la programmation parallĂ©le pour ce type d'architecture exige une distribution complexe des tĂąches et des donnĂ©es, les dĂ©veloppeurs ont des difficultĂ©s Ă  mettre en oeuvre leurs applications de maniĂšre efficace. Bien que les approches basĂ©es sur les transformations source-to-source et model-to-source ont pour but de fournir une basse courbe d'apprentissage pour la programmation parallĂ©le et tirer parti des fonctionnalitĂ©s de l'architecture pour crĂ©er des applications optimisĂ©es, la programmation demeure difficile pour les nĂ©ophytes. Une approche Model Driven Engineering (MDE) pour le GPU a l'intention de cacher les dĂ©tails de bas niveau de la programmation GPU en gĂ©nĂ©rant automatiquement l'application Ă  partir des spĂ©cifications de haut niveau. Cependant, le concepteur de l'application devrait tenir compte de certains ajustements dans le code source pour obtenir de meilleures performances Ă  l'exĂ©cution. Modifiant directement le code source gĂ©nĂ©rĂ© ne fait pas partie de la philosophie MDE. Par ailleurs, le concepteur n'a pas forcĂ©ment les connaissances requises pour modifier efficacement le code gĂ©nĂ©rĂ© par le GPU. Ce travail vise Ă  amĂ©liorer la performance en revenant aux modĂšles de haut niveau, les donnĂ©es d'exĂ©cution spĂ©cifiques Ă  partir d'un outil de profilage amĂ©liorĂ©e par des conseils intelligents d'un moteur d'analyse. Afin de maintenir le lien entre l'exĂ©cution et le modĂšle, le processus est basĂ© sur un mĂ©canisme de traçabilitĂ©. Une fois le modĂšle est automatiquement annotĂ©, il peut ĂȘtre repris en visant la performance sur la rĂ©utilisation du code gĂ©nĂ©rĂ©. Ainsi, ce travail nous permet de garder la cohĂ©rence entre le modĂšle et le code sans oublier d'exploiter la puissance des GPU. Afin d'illustrer et de clarifier les points clĂ©s de cette approche, nous fournissons un exemple se dĂ©roule dans une chaĂźne de transformation Ă  partir de modĂ©les UML- MARTE au code OpenCL

    Model-Driven Methodology for Rapid Deployment of Smart Spaces based on Resource-Oriented Architectures

    Get PDF
    Advances in electronics nowadays facilitate the design of smart spaces based on physical mash-ups of sensor and actuator devices. At the same time, software paradigms such as Internet of Things (IoT) and Web of Things (WoT) are motivating the creation of technology to support the development and deployment of web-enabled embedded sensor and actuator devices with two major objectives: (i) to integrate sensing and actuating functionalities into everyday objects, and (ii) to easily allow a diversity of devices to plug into the Internet. Currently, developers who are applying this Internet-oriented approach need to have solid understanding about specific platforms and web technologies. In order to alleviate this development process, this research proposes a Resource-Oriented and Ontology-Driven Development (ROOD) methodology based on the Model Driven Architecture (MDA). This methodology aims at enabling the development of smart spaces through a set of modeling tools and semantic technologies that support the definition of the smart space and the automatic generation of code at hardware level. ROOD feasibility is demonstrated by building an adaptive health monitoring service for a Smart Gym

    Software Product Line

    Get PDF
    The Software Product Line (SPL) is an emerging methodology for developing software products. Currently, there are two hot issues in the SPL: modelling and the analysis of the SPL. Variability modelling techniques have been developed to assist engineers in dealing with the complications of variability management. The principal goal of modelling variability techniques is to configure a successful software product by managing variability in domain-engineering. In other words, a good method for modelling variability is a prerequisite for a successful SPL. On the other hand, analysis of the SPL aids the extraction of useful information from the SPL and provides a control and planning strategy mechanism for engineers or experts. In addition, the analysis of the SPL provides a clear view for users. Moreover, it ensures the accuracy of the SPL. This book presents new techniques for modelling and new methods for SPL analysis

    A logic-based approach for the verification of UML timed models

    Get PDF
    This article presents a novel technique to formally verify models of real-time systems captured through a set of heterogeneous UML diagrams. The technique is based on the following key elements: (i) a subset of Unified Modeling Language (UML) diagrams, called Coretto UML (C-UML), which allows designers to describe the components of the system and their behavior through several kinds of diagrams (e.g., state machine diagrams, sequence diagrams, activity diagrams, interaction overview diagrams), and stereotypes taken from the UML Profile for Modeling and Analysis of Real-Time and Embedded Systems; (ii) a formal semantics of C-UML diagrams, defined through formulae of the metric temporal logic Tempo Reale ImplicitO (TRIO); and (iii) a tool, called Corretto, which implements the aforementioned semantics and allows users to carry out formal verification tasks on modeled systems. We validate the feasibility of our approach through a set of different case studies, taken from both the academic and the industrial domain

    Mapping AADL models to a repository of multiple schedulability analysis techniques

    Get PDF
    To fill the gap between the modeling of real-time systems and the scheduling analysis, we propose a framework that supports seamlessly the two aspects: 1) modeling a system using a methodology, in our case study, the Architecture Analysis and Design Language (AADL), and 2) helping to easily check temporal requirements (schedulability analysis, worst-case response time, sensitivity analysis, etc.). We introduce an intermediate framework called MoSaRT, which supports a rich semantic concerning temporal analysis. We show with a case study how the input model is transformed into a MoSaRT model, and how our framework is able to generate the proper models as inputs to several classic temporal analysis tools

    Test-Driven, Model-Based Systems Engineering.

    Get PDF

    Supporting ISO 26262 with SysML, Benefits and Limits

    Get PDF
    International audienceThis article deals with the issue of deploying efficiently the ISO 26262: the new standard in automotive systems development. The directives enclosed in this norm demands the establishment of a product lifecycle fully integrating the safety assessment activities. To tackle this subject, this paper explores the way of setting up Model-Based Design methodology to express and organize the concepts manipulated during the ISO 26262 process. This attempt is founded on the use of SysML and on the creation of a profile dedicated to ISO 26262 development context. We provide an introduction to Model-Based Design paradigm and its appli-cation in a safety relevant context. An overview of ISO 26262 is given, followed by the description of an on-going project on the subject. Modeling propositions are formulated and the use of diverse SysML diagrams are mapped on the automotive safety lifecycle process
    • 

    corecore