Simon Gorecki
email: simon.gorecki@u-bordeaux.fr

Youssef Bouanan
email: youssef.bouanan@u-bordeaux.fr

Gregory Zacharewicz
email: gregory.zacharewicz@u-bordeaux.frperry.nicolas@ensam.eu

Nicolas Perry

BPMN MODELING FOR HLA BASED SIMULATION AND VISUALIZATION

Keywords: Model Driven Architecture, Distributed Simulation, High Level Architecture, Business Process Model and Notation

Modeling and Simulation (M&S) is attempting to tackle more and more complex systems, which makes its design highly challenging. Complex systems' M&S requires the consideration of several simultaneous points of view and involve skills from different scientific and technical fields. Distributed Simulation domain answers the question of coupling and running together heterogeneous components, e.g. IEEE 1516-2010 -High Level Architecture is one of the most used standard. However, none provides any official or at least recognized user-friendly (e.g. graphical) language to specify distributed simulation desired behavior. Due to its capacity to represent behavior of processes, Business Process Model and Notation (BPMN) standard could be an interesting solution for defining HLA execution scenario within a Model Driven Architecture approach. This paper aims to support the modeling phase of the HLA execution process in order to explicitly design the desired steps of orchestration between distributed HLA federates through the interpretation of a business process diagram.

INTRODUCTION

The Modeling & Simulation (M&S) concept is now a required step in any design of complex systems. It allows to early represent its behavior and interaction. The modeling phase describes a process and allows the development of an executable simulation which virtually designs our subject and anticipates its study. As technologies are growing, the systems complexity increases, and makes the system more difficult to simulate. Here comes the role of Distributed Simulation (DS): one simulation is divided into multiple sub functions (or models) from a large system. Each function is executed on a different computer possibly geographically distributed from others. From a general point of view, this solution divides into modular simpler sub problems from complex problems, but also rises interoperability issues.

Modeling and Simulation (M&S) of complex systems requires the simultaneous consideration of several points of view. The System behavior has to be considered at different levels and scales. In addition, the study of these systems involves skills from different scientific, business and technical fields. The challenge is then to reconcile these heterogeneous points of view, and to integrate each domain models and tools (or subsystems) within frameworks of the M&S process.

In our case, we will use various modeling and simulation technologies in a semi-academic, semiprofessional context: a French company has launched an innovative project to set up a solar power plant. This project deals with different domains including risks management. Most of these research works have created specific domain simulators. Each of these autonomous simulations can represent a fragment of the global project. One of the last phases of this project consists in coupling all these simulations to obtain a global simulation of the problem to treat. However, all of these simulations use different technologies and manipulate heterogeneous data. It complicates the coupling. As a response to these difficulties, we propose to use the High-Level Architecture (HLA) standard. Moreover, there is a special need of reusability in our context. Indeed, the company needs to reuse and run different components without any HLA knowledge. It is the issue we try to solve in this paper.

HLA is one of the most used standard specification software architecture for Distributed Simulation. However, the HLA standard does not provide any graphical language for defining the simulation scenario. This point could be interesting for the reusability problematic. In our case, the goal is to model and simulate business process (BP). A BP is a set of interrelated activities that are executed by one or more organizations working together to achieve a common business purpose (K L [START_REF] Ko | A Computer Scientist's Introductory Guide to Business Process Management (BPM)[END_REF]. Several modeling languages were introduced for defining industrials workflows, but Business Process Model and Notation (BPMN) is most widely adopted by users. The Business Process Model and Notation (BPMN) standard is a graphical notation for specifying business processes. It could be a viable solution to represent how Federates relate to each other, through a Federation. Using this standard as an HLA execution scenario will helps users to build simulation and insure execution traceability. This approach follows Model Driven Architecture (MDA) principles since it allows to divide conceptual modeling and execution in order to simplify work for people with low skills in IT and HLA.

The rest of the paper is organized as follows. Section 2 describes the different concepts and technological backgrounds of this work. Then, section 3 presents a brief study and discussion about the work related to the integration of BPMN standard with HLA standard. Section 4 discusses the detailed steps of the proposed framework and the reflection on how this approach can make the development of the HLAbased DS easier for Management Sciences. Finally, Section 5 is a conclusion of the paper.

BACKGROUND

This section introduces the different concepts used in the proposed framework for DS in management science.

Modeling and Simulation Interoperability

From a M&S process perspective, distributed simulation implies dealing with different subsystems forming a coupled problem which are modeled and simulated in a distributed way. Indeed, the different domains of expertise may have different modeling and simulation tool, modeled and implemented in different languages. Besides, some of these tools must be available only on some specific hardware. Interoperability processes are then required to synchronize these heterogeneous tools and manage exchanges of data amongst them.

Distributed simulation is a paradigm to model dynamic, heterogeneous, and spatial distributed systems. Its aim is not only to speed up the simulations, but also to serve as strategic technologies to link various types of simulation components [START_REF] Chen | A Decoupled Federate Architecture for High Level Architecture-Based Distributed Simulation[END_REF]. There are several approaches in the field of M&S offering interesting solutions to the challenges of the simulation models interoperability and their execution on distributed computing environment. Two of the most popular efforts going in these directions are FMI (Functional Mock-up Interface) and HLA (High Level Architecture).

• HLA is an IEEE standard (IEEE Computer Society 2010a) for distributed computer simulation systems. In the HLA standard, a distributed simulation is called Federation (see Figure 1). A Federation is composed of several HLA simulation entities, called Federate, which can interact among them by using the Run-Time Infrastructure (RTI). The RTI represents a Federation execution backbone and provides a set of services to manage the communication and data exchange among Federates. • FMI (Functional Mock-Up Interface) [Functional mockup interface 2.0: The standard for tool independent exchange of simulation models] establishes itself as a standard for model exchange and co-simulation of equational models. It enforces some generic rules and a software interface to manipulate equational models and their numerical solver using a combination of XML-files and compiled C-code. On that interface, any equational component can be embedded into an FMU (Functional Mock-up Unit) helping to solve the interoperability problem for the co-simulation of equational models. Then, the numerical resolution of a system can be performed by defining a set of communication points between the FMUs according to a trade-off between the accuracy of the simulation results and the performances of the co-simulation process [START_REF] Camus | Hybrid Co-Simulation of FMUs Using DEV&DESS in MECSYCO[END_REF]. The FMI standard defines two interfaces: FMI for Model Exchange and FMI for Co-Simulation [START_REF] Blochwitz | Functional Mockup Interface 2.0: The Standard for Tool Independent Exchange of Simulation Models[END_REF].

In this work, we adopted the HLA standard to simulate our system in a distributed environment.

High Level Architecture (HLA)

In the computer simulation domain, distributed simulation is one of the most useful approach to reuse and run together different applications. Indeed, it consists of several co-running components (often associated with one or more functions) which can be processed by different processors. All of these components are part of a single execution which can be located on different computers / servers, hence the term "distributed". This concept of functions relocation makes the loads distribution possible on different machines, increasing the efficiency of a program.

One of the advantages of distributed simulation is to solve interoperability problems. Interoperability is the interactions ability between systems. This issue appears when several highly dissimilar systems (by their internal structure, exchanged data format, or semantic data) must communicate. The interoperability issue must be considered if interactions are at data level, service level or process level [START_REF] Zacharewicz | Multi Agent HLA Entreprise Interoperability (Short-Lived Ontology Based)[END_REF].

Indeed, in distributed simulations, the components are modular. They can have a heterogeneous architecture and exchange different kind of structured messages. This enables the solving of interoperability problems.

HLA defines a framework which allows the creation of global execution. This framework defines how to create a "global" simulation, which is made of several distributed simulation participants. Distributed simulation participants are called federates, they can communicate with one another. It was originally created by the Office of Defense Modeling and Simulation (DMSO) of US Department of Defense (DoD) to facilitate the assembly of stand-alone simulations with a different architecture. The original goal was the reuse and the interoperability of military applications, simulations and sensor. This standard is designed to resolve interoperability and reusability issues between software components. Another interesting aspect of this specification is the synchronization aspect. It allows to dynamically manage interoperability issues with simulations exchange messages: it must be ensured that messages are sent at the right time, in the right order, and that they do not violate causal constraints. To do this, various systems for synchronization of processes and time management are proposed by HLA. According to the HLA standard, each simulation participating to the application is called "federate". A classical HLA federate consists of a simulation model and local RTI component (LRC). The simulation model is a physical, mathematical, or logical representation of processes and systems. These entities can communicate with each other through a Run-Time Infrastructure (RTI). It is the RTI which manages the federation, authorizes federates to communicate or not, and provides various services such as time management, file or data exchange, etc. The FOM file is a XML file which describes interactions/communications between federates (see Figure 1).In our application case, this notion of distributed simulation will be tackled by the High Level Architecture standard (HLA) (IEEE Computer Society 2010b). It will support the specification of our software architecture.

Business Process Model and Notation (BPMN)

BPMN is a graphical notation for drawing business processes. BPMN has been proposed by the Business Process Modelling Initiative (BPMI) and is currently maintained by the Object Management Group (OMG 2003) which provides this standard for IT and business actors. It is frequently supported by a computer program which enables a quite easy graphical description of complex processes. It provides a standard notation which is easily understandable by all stakeholders; also bridges the communication gap frequently occurring between business process design and implementation. Nowadays, BPMN becomes widely used by different organizations, as it is easy to learn, and powerful enough to depict the potential complexities of business processes [START_REF] Sbayou | Agent Based Modeling Architecture with BPMN and DEVS Network[END_REF].

STATE OF ART

As recalled previously, HLA is a well-known standard. It is described in different specification books, and it is used since 1996. One of them (HLA Object Model Template (OMT) (IEEE Computer Society 2010b) describes how interactions must be done between federates through mechanism of Subscribe (read) and Publish (write). Those communications are described by SOM and FOM XML files. However, there is no simple way to describe federate behavior inside the federation: each federate are autonomous. They can publish information, subscribe information, at any time. The only way to control them is to (re)develop them.

However, HLA components are still reusable according to the HLA Federation Development and Execution Process (FEDEP) (IEEE Computer Society 2010c) which has been recently integrated into the more general DSEEP (Distributed Simulation Engineering and Execution Process) standard). DSEEP uses seven-step process to guide the development of the simulation system as described :

• Defining Simulation Environment Objectives Federates are autonomous, but must be reworked in order to be reused. This can be an advantage, but sometimes, in a high-reusability environment, this can be an issue. Several papers have already noticed the need of using graphical standard notation like BPMN in HLA domain. Despite this finding, there are few studies in the academic literature which have specified DS to simulate complex systems by graphically modeling the different component and their interaction of the DS project.

In industrial domain, visual interactive modeling environments are widely used. [START_REF] Taylor | Guidelines for Commercial Offthe-Shelf Simulation Package Interoperability[END_REF] find that, in DS domain, HLA is used a lot and the absence of graphical language can be problematic. Indeed, it can be easy to lose track regarding exactly what is wanted to occur between interoperating models. In that paper, the authors offered a set of interoperability reference models which can be used as guidelines to simplify interoperability process [START_REF] Taylor | Guidelines for Commercial Offthe-Shelf Simulation Package Interoperability[END_REF]. [START_REF] Bazoun | SLMTOOLBOX: Enterprise Service Process Modeling And Simulation By Coupling DEVS And Services Workflow[END_REF].

All those papers have different goals, but they all demonstrate the importance of using BPMN as standardized graphic user interface in order to simplify the HLA development.

The aim of this paper is different than all the others because it proposes a new concept: the explicit specification of (and potentially restriction) of HLA execution process, in order to achieve that goal. The proposed approach uses one federate as Master, controlling the others as Slaves. The Master federate read a BPMN diagram given as in input, and orchestrate all federates like it is described by the BPMN diagram.

CONTRIBUTION

Towards a formalization of HLA-based distributed simulation execution process

The proposed DS execution process formalization is derived by combining methods and concepts used as guidelines for conducting production engineering and DS projects. The use of graphical modeling, in particular BPMN standard, to define and model part of distributed simulation process (Design Simulation Environment and execution scenario) has several benefits: (1) it shows R&D projects and requirements in context rather than in isolation;

(2) it allows specialists to define in a unified and standardized way the execution process of the simulation, so that everyone in an organization can understand the objectives of a simulation; (3) execution traces of programs (Federation development) can be easily viewed and analyzed; (4) it creates a bridge which reduces the gap between the HLA code level and the corresponding BPMN processes [START_REF] Falcone | Engineering Systems by Combining BPMN and HLA-Based Distributed Simulation[END_REF]. Moreover, there is a need to improve the traceability execution process in HLA environment. Indeed, each federate is autonomous and it is not possible to anticipate (or plan) any execution scenario: each federate is evolving at its own pace and the final user cannot capture the overall behavior (or the HLA DS execution process).

The use of BPMN standard to control execution process would be a solution for this issue. In addition, numerous BPMN tools can support the process of software development by offering a variety of editors and code generation components. This allows us to automatically generate the component responsible for the simulation process through a BPMN diagram.

The articulation of these two standards enables the automatic generation of executable code which can be packaged in global DS system, making it semi-automatically. A second way would be to build the HLA federate component (master) which has the responsibility to orchestrate the steps of execution process through the interpretation of a BPMN diagram and controlling the data exchange between the Federation (Figure 2). This proposition enables an approach towards MDA, with the use of BPMN Model in the one hand, and the separated execution of it in the other hand .

Technical application

From a technical point of view, the implementation of this concept was done in a first time on a simple example in order to test our proposition. The Figure 3 describes technical architecture of the proposition according to 3 layers. The second layer (which correspond on figure 3 by cross hatch rectangles) represent an API which implements the master/slave mechanism described in the previous section. This layer will, from the Master federate point of view (gray rectangle), use publish and subscribe RTI functionalities to send: run, stop, and freeze orders to the federates (white rectangle), according to the DS Orchestration diagram.

From the other federates point of view, this layer will freeze the local simulations at t = 0 (as described on Figure 4) and put them in stand up status. Still from the slave federate's point of view, the API will be in charge to receive, run, stop and freeze orders from the master federate. Those orders will be applied on the local runtime simulation. The master federate will read the xml file that describes the BPMN diagram and address to each federate run, stop, freeze orders through the BPMN orchestration API layer.

We can compare this architecture to TCP/IP protocol [START_REF] Fall | TCP/IP Illustrated[END_REF]: to ensure effective communication between federates, each layer need and use next and previous layers. In our case, the highest layer which represent distributed simulations (the two Distributed Simulations on Figure 3) can be compared to Application layer in TCP/IP protocol. The BPMN orchestration layer (in cross hatch) can be associated to the transport layer, HLA interfaces are like the Internet layer, and the HLA functionalities provided by RTI can be associated to Network Access Layer.

After implementation, we can observe on the left side of Figure 4 In our example, each simple federate makes simple actions: write a message, sleep a few seconds, and write a second message after its end. At the beginning of the program (time step t = 0), each basics federate publishes and subscribes to the master variables through RTI Component and waits for master federate instructions. At the same time, the master federate reads the BPMN file in order to identify the name and numbers of federate during the global simulation. When all federates are mapped, the master will send a message to the first federate according to the DS Orchestration file (t = 1).

Federate A, is now triggered by this notification and execute its algorithm. When the Federate A done (t = 2), its BPMN orchestration layer send message to master federate to indicate the end of work. The master can now go to the next step and trigger federate C and B. At the BPMN merge point, the master federate know it had to wait federate C and B end process ( t = 3 & 4) to execute last simulation, etc. At the end of the process (t = 5), the master federate detects an endpoint, this will cause the federation destruction and simulation end.

Using the BPMN simulation execution process diagram for 3D animation scenario

Another interesting point with High Level Architecture based Simulation is 3D visualization. This point has already been mentioned in different research works for representing federates evolution within a distributed simulation [START_REF] Falcone | Simulation Exploration Experience: A Communication System and a 3D Real Time Visualization for a Moon Base Simulated Scenario[END_REF]. Researchers has developed a HLA 3D renderer engine federate able to represent federates evolving in federation without the need of programming each scenario steps directly in the engine. In our study case, a 3D visualization can be done by an analysis from the engine of an events chain, where events are described by the BPMN Distributed Simulation process representing the sequence of distributed simulations results. We are proposing a 3D engine federate which can read and interpret BPMN simulation execution process diagram. This federate also takes in input several needed data about graphic engine like 3D models, data about each models it has to represent, and parameters about the simulation base. The main objective of this federate is also to graphically transpose Distributed Simulation execution scenario in order to ensure the execution traceability. With this method, we can have a simulation scenario representation. To do so, the 3D engine federate communicates with the "interpreter" federate presented in the last chapter and exchange information about federation activity during the simulation.

Business context

In our context, a company designing solar power plants have special needs. This project consists in installing solar panels fields to provide electricity in a large areas which are not powered so far. However, the transport of solar panels fields is extremely expensive. To reduce this cost/blow, they are designing a mobile factory which manufactures the solar panels on site. Rather than transporting finished products, only the mobile plant and raw materials would be carried out. The main challenges of this project are : the factory miniaturization to fit in the least transport containers (around 20), risks management caused by low knowledge, and designing resistant structure depending on the environment of the power plant.

To solve each one of the issues, the company gave rise to several works which each subject deals with one problem:

• Optimization and decision helping for defining the structure foundations of the solar panels field, depending on the ground structure [START_REF] Piegay | Multi-Objective Optimization and Decision Aid for Spread Footing Design in Uncertain Environment[END_REF].

• Study of the concept maturity integration in decision making process: applied for designing the solar transmitter supporting structure (El Amine 2016).

• Study and dimensioning of the mobile factory dimensions, cost, etc., according to the demand [START_REF] Benama | Supporting Make or Buy Decision for Reconfigurable Manufacturing System, in Multi-Site Context[END_REF]). • Study of project management method integrating risks. Calculating risks probabilities into project management (Rodney 2014) • Tool to model company workflows (based on BPMN) in order to represent the future solar power plant. Its main goal is to control each simulation [START_REF] Posse | PapyrusRT: Modelling and Code Generation[END_REF] Most of these works have tackled M&S to solve widely existing issues related to various domains. Our objective consists in proposing an interoperable architecture which handles all previous works using HLA standard to create a general middleware in order to simulate a whole system.

Concept applied on management science

Those simulations occur in highly heterogeneous environment. Each one of them uses several technologies and manipulates different types of data. They are autonomous and complementary, so they cannot be merged in only one application. Moreover, there is a reusability need where each simulation is used as stand-alone application. To solve these problems, HLA standard is appropriate because it defines each one of them as federate [START_REF] Gorecki | Using High Level Architecture to Combine Simulations in Company Context Mobile Factory[END_REF].

Each simulation is a component thanks to the HLA specification and enables the orchestration of a "global simulation" as Figure 4. With HLA allowing us for creating and managing independent simulated components, the global solar panels project is set as a federation, composed of each simulator that we have just described (as federate).

Figure 6: Standard HLA architecture.

Moreover, the company has a high need in reusability of this components. Indeed, each one of them would be used as standalone simulation, or as member of a custom federation. Execution scenario customization has to be the easiest possible. Furthermore, this scenario customization must be easy to control because it is intend to non-engineer's people.

To do so, the company is building a graphic modeler tool which can easily generate Business Process Model and Notation under XML syntax.

Figure 7: BPMN execution scenario for global simulation.

To get this behavior, we offer to setup a third federate with the role of "Master" federate, or "extended RTI agent". It can control (through subscribe and publish mechanics) all the other "Slaves" federates. For this, we need to complete several points:

• Each slave federates of the federation must be totally autonomous.

• Each slave federates must have an overlay allowing them for being dependent from the master federate. They subscribe to triggers in the master federate, which allows them to be started remotely. During the execution time, each federate is able to communicate only with the master federate, so they must publish data into the master.

This overlay sets federates as slaves depending on the master federate. Then, the simulation scenario depends on orders sent by the master to each federates. The last step is to use BPMN diagram in order to control executions orders. For that, the graphic BPMN designer can generate UML code describing HLA scenario needed as Figure 4. The objective is to link the BPMN standard and HLA Master federate. This can be done in two different ways:

• The first way consists in implementing a UML interpreter into the master federate, able to read the UML file and convert it into HLA subscribe/publish mechanism to execute the simulation scenario described by BPMN graphic (full automatic solution). • The second way consists in implementing into the graphic BPMN modeler an extension able to generate code, containing the master federate according to the BPMN description. This code should be packaged into HLA federation to be executed (semi-automatic solution).

A second need for the company is the necessity of getting a 3D rendering of the simulation. To do so, the second proposition of this paper is suitable. By defining the BPMN simulation execution process and 3D objects model, the 3D engine federate is able to create a 3D render of the factory installation.

CONCLUSION

In distributed Simulation, IEEE HLA is a widely used standard because of its capacity to solve heterogeneous issues and/or its reusability potential. Federation enables to define a set of entities (federates) representing different solutions for a large problem. Literature reported that each federate is autonomous, have its own architecture but the design of federates' orchestration before simulation time is not easy an easy task. This papers is a first contribution to facilitate the specification of federates communication making more explicit the publish and subscribe steps. In other words, it attempts to give a more clear and explicit support to describe the desired sequence of execution between the different federates. This contribution specifically finds its interest, with the complexity of the system to model, where designing a complete distributed simulation is a challenge. An example has been introduced to illustrate the contribution. We consider that the adoption of Business Process Modeling and Notation standard as graphical notation for defining HLA execution scenario will help non-specialists of M&S to define in a unified and standardized way the execution process of the simulation and also will facilitate DS execution process analysis after simulation run.

Future research efforts will be devoted to the definition of a graphical representation, potentially extended from with BPMN notations, for specifying the behavior of HLA-based simulation component (Federate) in terms of actions. It will also include the specification of communication (publish/subscribe) protocol to be defined. The BPMN Orchestration will use message flow to indicate publish and subscribe exchanges, but must be developed to precise the category of data to be exchanged for instance. In future works, the framework could use a library to interpret the XML file. Finally, we will investigate how to combine HLA standard and FMI standard.

Figure 1 :

 1 Figure 1: HLA Architecture diagram.

Figure 2 :

 2 Figure 2: Combining HLA-based Distributed Simulation and BPMN.

Figure 3 :

 3 Figure 3: Layering technical architecture.

Figure 3

 3 Figure 3 shows several technical layers. The first layer (RTI, FOM, and HLA Interfaces) represent the HLA standard architecture, which is not modified. All HLA and RTI functionality are still available in this application (this allows us to say the HLA standard is still respected), but in a upper layer, we propose to reduce RTI functionality in order to simplify the scenario's definition step. All federates contain a first layer HLA Interface -LRC which implements Local RTI Component enabling communication with RTI, and we consider that all communication messages are described in the Federation Object Model (FOM) file.

  , the UML sequence flow diagram representing the federation life cycle. This diagram respects what is described in the DS Orchestration BPMN Diagram on the right side of Figure 4.

Figure 4 :

 4 Figure 4: BPMN and UML sequence flow diagram of test federation.

Figure 5 :

 5 Figure 5: 3D Engine federate using BPMN simulation execution process diagram in federation.

  Bocciarelli and al., presented the automated transformation of BPMN process into Extended Queuing Network (EQN) models, that are executed as distributed simulations in e-commerce scenario. This research works convert BPMN into executable code[START_REF] Bocciarelli | A Model-Driven Method for Building Distributed Simulation Systems from Business Process Models[END_REF]).Falcone et al. discussed about the need of providing a standard graphical representation (BPMN) for managing HLA Simulation, in two aspects. The first aspect is to represent the definition on an HLA Federate through BPMN. The second aspect is to use BPMN in order to define and execute HLA Simulation. This last diagram could represent each steps of HLA federation life cycle[START_REF] Falcone | Engineering Systems by Combining BPMN and HLA-Based Distributed Simulation[END_REF].

Bazoun et al. presented

an Eclipse RPC tool named "SLMTOOLBOX" which is a graphic modeler, model transformer, and simulation engine, able to convert a BPMN diagram into DEVS models to simulate a process behavior

  Efforts on providing guidelines for distributed simulation which use the HLA allow the development of the IEEE Recommended Practice for HLA-based Distributed Simulation Engineering and Execution Process (DSEEP) standard (IEEE Computer Society 2003). DSEEP is a revision of the Federation Development and Execution Process (FEDEP) developed by ISO and Standardized by the IEEE. It recommends general practice for

developing DS using HLA. DSEEP is a generalized framework which can be adapted to specific organizational needs and individual applications. However, the process for DS (DSEEP) does not provide a well-defined graphical representation for specifying how the simulation component (Federate) are connected with each other, and how they react on user requests to subscribe/publish appropriate data and use time management mechanism if necessary.

AUTHOR BIOGRAPHIES

SIMON GORECKI is Ph.D. Student at University of Bordeaux in IMS Lab. Domain research is about simulating process with distributed simulations and HLA (High Level Architecture). His email address is simon.gorecki@u-bordeaux.fr YOUSSEF BOUANAN is Postdoctoral researcher at University of Bordeaux. He received his Ph.D. degree in Production Engineering from University of Bordeaux, France. His research interests include M&S theory, agent-based model and workflow. His email address is youssef.bouanan@u-bordeaux.fr.

GREGORY ZACHAREWICZ is Associate Professor HDR at University of Bordeaux and IMS Lab with both competences in enterprise engineering and M&S. His email address is gregory.zacharewicz@ubordeaux.fr NICOLAS PERRY is Full Professor at ParisTech ENSAM of Bordeaux. Domain research is about system engineering, product process integration and green manufacturing. His email address is nicolas.perry@ensam.eu


Baptiste Roux
email: baptiste.roux@inria.fr

Matthieu Gautier

Olivier Sentieys

Jean-Philippe Delahaye

Fast and Energy-driven Design Space Exploration for Heterogeneous Architectures

I. INTRODUCTION

In the last years, the integration of specialized hardware accelerators in Multiprocessor System-on-Chip (MpSoC) led to a new kind of architectures combining both software (SW) and hardware (HW) computational resources. For these new Heterogeneous MpSoC (HMpSoC) architectures, performance and energy consumption depend on a large set of parameters such as the HW/SW partitioning, the type of HW implementation or the communication cost. Design Space Exploration (DSE) consists in adjusting these parameters while monitoring a set of metrics (execution time, power, energy efficiency) to find the best mapping of the application on the targeted architecture. With the shift from performance-aware to energyaware designs, DSE frameworks started to integrate state-ofthe-art power models. These power modeling tools require simulations of the application, which drastically increases the exploration time. This work introduces a DSE method based on an analytical power model to circumvent the computation time bottleneck of state-of-the-art power models.

II. APPROACH

The proposed DSE, depicted in Fig. 1, proposes to optimize the HW/SW partitioning and mapping under user-defined objectives, especially an energy constraint. The flow targets tiling-based parallel applications and relies on an analytical power model that provides the DSE framework with the execution time and energy of a HW/SW configuration. The power model parameters are obtained with the measurements of a tiny subset of the design space, which are then injected into two extraction functions to obtain analytical formulations of the execution time and the energy consumption of the computation kernel. The partitioning problem constraints are defined as a set of inequalities with Boolean, integer (discrete) and non-integer (continuous) variables within a Mixed Integer Linear Programming (MILP) framework. Then, solutions can be efficiently determined using commercial or open source solvers. The optimization is defined with an linear objective function. The intersection of the inequality constraints represents a polyhedron of the feasible solution. The objective function defines a direction into the solution space and the optimal solution is found at the intersection between the objective function and the feasible solutions. The goal of the proposed DSE method is to find the best configuration that minimizes the user objective (e.g. execution time or total energy consumption of the application).

III. RESULTS

This methodology was tested on two application kernels: a matrix multiplication and a Stencil computation. The Zynqbased heterogeneous architecture was used for the experimentation. The communication parameters were extracted with μBenchmark methodology1 . The computation parameters were extracted with a Least Squared Root (LSR) algorithm from measurements of a subset of the configurations.

These experiments show that the acceleration and energy saving obtained are at minimum of 12 % compared to the full HW approach. Furthermore, the MILP resolution time takes less than 0.6 sec on an intel i7 Haswell-ult processor running at 2.10 GHz and the estimation accuracy is within 5 % to 10 %, which is quite acceptable for real hardware measurements. These results open new opportunity for future computer-aided design tools. Such method could be included in a complete framework with a multi-step exploration to accelerate every computation kernel within an application and to obtain an energy-efficient mapping of a full application on heterogeneous multiprocessor architecture.

Fig. 1 :

 1 Fig. 1: Overview of the proposed DSE.

B. Roux et al. "Communication-Based Power Modelling for Heterogeneous Multiprocessor Architectures". In: IEEE 10th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (mcSoC). Sept

. 2016, pp. 209-216. DOI: 10.1109/MCSoC.2016.27.