Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
PUSHING LIMITS IN
AUTOMOTIVE MODEL VISUALIZATION
WHY SO SIRIUS?
Syed Aoun Raza /Amal Jose Vallavanthara (Robert Bosch GmbH...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2019-08-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2019-08-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15
© Robert Bosch GmbH 2019. All rights ...
Prochain SlideShare
Chargement dans…5
×

[SiriusCon 2020] Pushing Limits in Automotive Model Visualization at BOSCH - Why so Sirius!

111 vues

Publié le

In this session, we shall present our model visualizations based on Sirius framework used in multicore automotive software production tools at Bosch. We will provide insights into the decision criteria and benefits achieved with Sirius. The talk shall also highlight the pros and cons of using the framework in real-life projects containing over 300 million model objects. Our experience report in this session can serve as a guideline for the developer community in the industry. Further, our presentation will highlight the performance optimization and lay-outing challenges. Additionally, we present a case study of problems faced during development and its solutions so as to not re-invent the wheel.

Syed Aoun Raza, Robert Bosch
Syed Aoun Raza is working as Lead Software Architect and Multi-Core system design expert for Robert Bosch GmbH in Stuttgart (Germany). He has earned several years of experience in tool development using MDSD approaches. Additionally, he has research contributions in design and implementation of static analysis tools and techniques with focus on parallel/concurrent programs.

Rakesh Nidavani, Robert Bosch
Rakesh is a specialist at Robert Bosch, India. He has over 8 years of software development experience. Mostly works on applications based on EMF and Eclipse Sirius.

Amal Jose Vallavanthara, Robert Bosch
Currently works on multi-core automotive model domain at Robert Bosch GmbH, Germany. He specializes in machine learning and embedded systems.

Publié dans : Logiciels
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

[SiriusCon 2020] Pushing Limits in Automotive Model Visualization at BOSCH - Why so Sirius!

  1. 1. PUSHING LIMITS IN AUTOMOTIVE MODEL VISUALIZATION WHY SO SIRIUS? Syed Aoun Raza /Amal Jose Vallavanthara (Robert Bosch GmbH) Rakesh Nidavani (Robert Bosch Engineering and Business Solutions Private Limited) SiriusCon 2020
  2. 2. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. “The easiest way to get your own modelling tool” –Sirius. 2 Yes it is, easy for simple use cases. What about complex uses cases? Performance Layouting In Memory Objects Detailed documentation
  3. 3. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2019-08-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. OUR PROJECT PLAT4MC – Platform 4 MultiCore  Visualizes Model With 3 Million+ objects  Pioneers of Sirius integration for large scale model data visualization 3  Used by 5000+ Projects worldwide We at Bosch pushed Sirius to its limits and beyond  Several sources of information AUTOSAR, MDX, C and ELF Code  Automotive domain
  4. 4. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Data Model – APP4MC/AMALTHEA Our Project 4  Eclipse APP4MC  Platform for engineering embedded multi- and many-core software systems  Multi-core system description  AMALTHEA Data Model Container  Hardware Description  Software Description  System Constraints  Distribution scenarios  Addition, tools for visualization and processing
  5. 5. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2019-08-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. 5
  6. 6. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Framework Comparison 6 Klighd Sirius JavaFx Future Extensibility Difficult Possible with limitation Possible Model Modification Not possible Possible Possible Supported Layout KLay Force, KLay Layered, KLay Mr. Tree Tree, Table, Diagram Tree, Table, Diagram Custom Layout Possible Possible Possible Model modification through drag and drop Not Possible Possible Possible Performance Requires code recompilation (Xtend to Java) Works on any model Implementation in odesign file, Loads entire model once. Custom Controls and custom models would affect performance. Auto Synchronization Not possible Available Possible Types of Diagrams Medium Low High Online Support / Tutorials Low Low High UI Design Flexibility Medium Low High
  7. 7. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Advantages (1) Sirius Framework 7 Low Effort Auto Layout Extensibility Model management Flexible ‒ Easy diagram creation by configuring schema ‒ Straightforward options for configuring and styling of nodes, edges..
  8. 8. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Advantages (1) Sirius Framework 8 Extensibility Model management Flexible Auto Layout Low Effort  Auto Lay-outing  Integration with ELK  Ability to add custom layout
  9. 9. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Advantages (1) Sirius Framework 9 Model management Flexible Low Effort Auto Layout Extensibility ‒ Numerous out of the box menus-types, external java calls
  10. 10. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Advantages (1) Sirius Framework 10 Extensibility Flexible Low Effort Auto Layout Model Management ‒ Direct Model Editing support ‒ Consistent Model Management, significant aspect for our use cases
  11. 11. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Advantages (1) Sirius Framework 11 Extensibility Model management Low Effort Auto Layout Flexible ‒ Multiple options to write queries -AQL -Java service
  12. 12. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Challenges Sirius Framework 12  Lay-outing ‒ Custom layout not possible by using default odesign file. ‒ Easy configuration and styling of nodes are possible but the colour and styling options of the nodes are limited ‒ Custom Lay-outing requires much effort ‒ By default we don’t have control on X and Y position of the node  Types of diagrams ‒ Doesn’t contain options like different types of Gantt Charts, series diagrams, timeline, etc ‒ Limitation in displaying analytics of the model like scatter plots, graphs, etc  Online documentation, tutorials and support ‒ The officially available tutorials doesn’t give details for implementation of many features like decorators, lay- outing and tables.
  13. 13. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Process composition PLAT4MC Visualization: 13
  14. 14. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Use Cases 14 Successfully implemented multiple visualizations for huge automotive models with 20 Million+ Objects 1. Generate Amalthea Model from C Code or ELF/MAP SCA2AMALTHEA or ELF2AMALTHEA provided by PLAT4MC tool 2. Use the generated AMALTHEA model in PLAT4MC to analyse, visualize and boost your ECU performance.
  15. 15. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 1: Create diagrams on context menu clicks. 15 Programmatically adding modelling nature to project Create session using .aird file
  16. 16. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. 16
  17. 17. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 2: Using ELK layout for Visualizing 17  Need for ELK layout.
  18. 18. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 1: Visualization of large scale model communication 18 Solution:  How to use ELK layout to your Sirius diagrams.
  19. 19. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 2: ELK layout not enough?! Create Custom Layout 19 Challenge:  ELK lay-outing doesn’t solve our following use cases. Nodes are not placed by logical relations. Response:  Create custom Layout. Dead-Lock Visualization Memory and Busload Visualization
  20. 20. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 2: ELK layout not enough?! Create Custom Layout 20 Dead-Lock Visualization Memory and Busload Visualization After custom layout
  21. 21. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 2: ELK layout not enough?! Create Custom Layout 21 Challenge:  Custom Layout not available by default in odesign file. Solution:  How to integrate custom Layout to Sirius Diagrams? Step 1 : Register Custom Layout provider to Sirius with the provided extension point org.eclipse.sirius.diagram.ui.layoutProvider
  22. 22. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 2: ELK layout not enough?! Create Custom Layout 22 Step 1 : CustomLayoutProvider Class
  23. 23. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 2: ELK layout not enough?! Create Custom Layout 23  Step 2 : Provide a custom layout algorithm with GMF extension point org.eclipse.gmf.runtime.diagram.ui.layoutProviders
  24. 24. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 3: Custom layout not getting invoked! 24 Challenge:  ELK registered the generic layout provider(applies to all diagrams) with “Highest” priority. Due to this our custom lay-outing algorithm was not getting invoked. Response:  Reported the issue in ELK forum. They have reduced the priority thereby invoking our custom algorithms.  Check out : https://www.eclipse.org/forums/index.php/m/1792793/#msg_1792793 Dead-Lock Visualization Memory and Busload Visualization
  25. 25. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 4: Border Nodes overlapped and un-organized 25 Challenge:  Default layout algorithms doesn’t compute inter border node distance thereby creating overlaps Response:  Implemented custom lay-out for border nodes. Even with custom layout, the spacing isn’t equal once the diagram is opened. Solved by invoking the custom layout twice. Signal-Flow Visualization BEFORE AFTER
  26. 26. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 5: Performance improvement – Cache Implementation 26 Challenge: We have multiple highly related node types in most of our use cases. On querying, different node types perform the same computation on every service call Response: Cache implementation : First invoked service computes entire data required by all the nodes in the diagram and saves it for future use by child nodes Result: Performance improved exponentially. Latency down to 12 seconds from 170 seconds for 1000 nodes diagram! 0 50 100 150 200 20 100 500 1000 Performance Improvement Optimized Cache Naïve Implementation Latency(s) Number of Nodes
  27. 27. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 5: Performance improvement – Cache Implementation 27 Parent Component Parent Runnable Parent Label Violating Parent Runnable Violating Parent Label Child Component Child Runnable Child Label Violating Child Runnable Violating Child Label Child Component Child Runnable Child Label Violating Child Runnable Violating Child Label Child Component Child Runnable Child Label Violating Child Runnable Violating Child Label Parent Node computes data and stores in cache Child Nodes scans cache for data CACHE Cache Implementation • First service call by first node computes and stores all the nodes in cache. • Subsequent nodes just reads through the cache.
  28. 28. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Tip 6: Diagram for non serialized object 28 We have a scenario where the object on which we need to create a diagram in non serialized. Challenge:  Sirius expects the eResource() of the model to be in place for diagram creation. Response:  Since serializing and reloading the model is costly operation we have created a virtual resource and attached the same to model. Contribution to the community: We had raised the issue in the forum. But since we didn’t get any reply for a month, we implemented our method and posted the results: https://www.eclipse.org/forums/index.php/m/1803462/#msg_1803462
  29. 29. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Suggestions 29 Possibilities for enhancements: Option to provide the custom lay-outing class directly in odesign file ‒ Ability to write custom code for lay outing can be included in odesign file like the external java call feature, etc CSS styling support e.g., defining a color schema Increased web support Improved and in-detailed documentation ‒ For example, the tables, serial diagrams, layout sections of the documentation doesn’t provide in depth implementation details
  30. 30. Cross Automotive Platforms - Systems, Software and Tools | CAP-SST/ESM1 | 2020-06-15 © Robert Bosch GmbH 2019. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights. Ready to be Sirius? 30

×