a design method for modular energy aware software
play

A Design Method for Modular Energy-Aware Software OUrsi @ OU.NL - PowerPoint PPT Presentation

OUrsi @ ON.NL Christoph Bockisch March 31, 2015 1 A Design Method for Modular Energy-Aware Software OUrsi @ OU.NL March 31, 2015 Christoph Bockisch (christoph.bockisch@ou.nl) A design method for modular energy-aware software OUrsi @


  1. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 1 A Design Method for Modular Energy-Aware Software OUrsi @ OU.NL March 31, 2015 Christoph Bockisch (christoph.bockisch@ou.nl) A design method for modular energy-aware software

  2. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 2 Research Overview Software Engineering Method for Energy-Aware Systems Tool support Conclusion A design method for modular energy-aware software

  3. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 3 Overview Career 2003 – 2008 PhD studies Dissertation : An Efficient and Flexible Implementation of Aspect- Method Oriented Languages 2009 – 2014 Assistant Professor for Software Composition • Software architectures for reliability & adaptivity Tooling • Energy-optimization for embedded systems • Language technology for aspect-oriented programming since 2014 Assistant Professor in Software Engineering Conclusion • Data analytics in education • Energy-optimization in software • Verification in concurrent systems A design method for modular energy-aware software

  4. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 4 Overview Research Approach Reliability Adaptability Energy-efficiency Ziele Modularity Ziele Goals Method Aspect-orientation Language abstractions Complex events Software engineering Tooling Adaptive embedded systems methods Energy-aware components in embedded software Development tools Debugging for AOP, Conclusion Verification and concurrency Execution environments Adaptive optimization Technologies A design method for modular energy-aware software

  5. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 5 Overview Engineering Energy-Aware Embedded Software • Common goal in software engineering: modularity • Energy issues do not respect module boundaries Method • They are a cross-cutting concern • Conventional approaches cannot separate energy-related code joint work with Approach: method for systematic design Tooling of energy-aware embedded software • Make resources explicit at component interface (energy is one possible resource) • Facilitate implementing energy-optimization Conclusion in separate components • Adapt & adopt tools to support design process A design method for modular energy-aware software

  6. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 6 Overview Project Scope Software controlling Our focus energy-consuming Method devices/resources (Printer parts, mobile device components/activities, etc.) Modular Tooling implementation of energy-related code Not our focus Reducing energy consumption of program execution itself Conclusion Inventing new optimization algorithms A design method for modular energy-aware software

  7. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 7 Overview Case Study: Smart Phone Media player on a mobile phone, streaming music over the network Method Tooling Conclusion S. Malakuti, S. te Brinke, L. Bergmans, and C. Bockisch. Towards Modular Resource-Aware Applications . In: VariComp 2012 A design method for modular energy-aware software

  8. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 8 Overview Case Study: Smart Phone Media player on a mobile phone, streaming music over the network Method VOIP Application Media Player Media Player Tooling Wifi Driver 3G Driver 3G Driver Conclusion Optimization Optimization Optimization A design method for modular energy-aware software

  9. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 9 Overview Case Study: Smart Phone Media player on a mobile phone, streaming music over the network Method VOIP Application Media Player Media Player Optimization Optimization Optimization Tooling Wifi Driver 3G Driver 3G Driver Conclusion A design method for modular energy-aware software

  10. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 10 Overview Case Study: Smart Phone Media player on a mobile phone, streaming music over the network Method VOIP Application Media Player Media Player Tooling Optimization Optimization Optimization Wifi Driver 3G Driver 3G Driver Conclusion A design method for modular energy-aware software

  11. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 11 Overview Case Study: Smart Phone Media player on a mobile phone, streaming music over the network Method Media Player Tooling Optimization 3G Driver Conclusion A design method for modular energy-aware software

  12. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 12 Overview Case Study: Smart Phone Media player on a mobile phone, streaming music over the network Method VOIP Application Tooling Optimization 3G Driver Conclusion A design method for modular energy-aware software

  13. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 13 Overview Case Study: Smart Phone Media player on a mobile phone, streaming music over the network Method Media Player Tooling Optimization Wifi Driver Conclusion A design method for modular energy-aware software

  14. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 14 Overview Case Study: Smart Phone Media player on a mobile phone, streaming music over the network Method VOIP Application Media Player Tooling Optimization 3G Driver Conclusion A design method for modular energy-aware software

  15. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 15 Overview Case Study: Professional Printers • Industrial case: Océ • Printer has few main states (start, idle, standby, running) Method • All finishers have similar states Start • All finishers must be in the same state • Otherwise, system complexity unmanageable Tooling Idle • Problem statement • Gluer can have hot or cold glue Standby • Leads to two separate running states Conclusion • Increases number of states of all finishers • Increases complexity Running A design method for modular energy-aware software

  16. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 16 Overview Case Study: Professional Printers • Printer is connected to many finishers • Finisher can be connected to various printers Method Gluer Stacker Tooling Optimization Printer Conclusion A design method for modular energy-aware software

  17. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 17 Overview Resource-Aware Component Interface Resource port Service port • Dedicated component model • Resource ports Method bandwidth receive send disconnect connect Service ports Network Manager of a 3G Network • Resource Utilization connect CELL DCH Model (RUM) radio power ≈ 800 mW [inactivity timer = y ] disconnect bandwidth ≈ 100 kbps send ∨ receive send ∨ receive CELL FACH IDLE Resource Utilization Model [inactivity timer = y ] Tooling radio power ≈ 460 mW radio power ≈ 0 mW ∨ disconnect bandwidth ≈ 20 kbps bandwidth ≈ 0 kbps radio power • RUM defined as state chart • States model stable resource usage Conclusion • Services or internal events trigger transitions A design method for modular energy-aware software

  18. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 18 Overview Case Study: Smart Phone pause play stop Media Player Application (on a smart phone) play stopped stop playing play connection stop Method [until next m seconds are buffered pause paused or connection when n seconds of the buffer is play [until next m seconds are buffered] consumed] connection download disconnect connect Optimizing Controller Tooling bandwidth receive send disconnect connect Network Manager of a 3G Network connect CELL DCH radio power ≈ 800 mW [inactivity timer = y ] disconnect bandwidth ≈ 100 kbps send ∨ receive send ∨ receive CELL FACH IDLE Conclusion [inactivity timer = y ] radio power ≈ 460 mW radio power ≈ 0 mW ∨ disconnect bandwidth ≈ 20 kbps bandwidth ≈ 0 kbps radio power Power Supply A design method for modular energy-aware software

  19. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 19 Design Method for Energy-Aware Embedded Overview Software S. te Brinke, S. Malakuti, C. Bockisch, L. Bergmans, M. Akşit. A Design Method Identify key properties of RUM For Modular Energy-Aware Software . Method In SAC, ACM, 2013 Select most Identify functional Identify suitable components optimizer optimizer existing new components Tooling components Analyze Conclusion system Model resource behavior resource behavior A design method for modular energy-aware software

  20. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 20 Design Method for Energy-Aware Embedded Overview Software Identify key properties of RUM Method Select most Identify functional Identify suitable components optimizer optimizer existing new components Tooling components Can be tool-supported for components with existing implementation. Analyze Conclusion system Model resource behavior resource behavior A design method for modular energy-aware software

  21. OUrsi @ ON.NL – Christoph Bockisch March 31, 2015 21 Overview Purpose of RUM at design-time Understand Prove correctness resource behavior of optimization Method Specification for Pick most Must be component effective abstraction implementations optimization of resource behavior Tooling • Guarantee liveness and safety properties for all concretizations Conclusion → Over-approximation • Human-readable → Abstraction must be minimal A design method for modular energy-aware software

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend