PerOpteryx

410 views
383 views

Published on

Automatically Improve Software Architecture Models for Performance, Reliability, and Costs using Evolutionary Algorithms

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
410
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • In thenexttwentyminutes, I will presentthePerOpteryxapproachtoautomaticallyimprovesoftwarearchitecturemodelsforperformanceandotherqualitiestoyou. PerOpteryxstandsfor Performance optimisationhere, but is also thenameof a bat. The ideaisthatthePerOpteryxapproachexploresthe design spaceofsoftwarearchitectures just as a bat exploresphysicalspacewithitssonar.But beforegoingintodetails, letusfirstsetthecontext.
  • PerOpteryx

    1. 1. PerOpteryx<br />Automatically Improve Software Architecture Modelsfor Performance, Reliability, and Costs using Evolutionary Algorithms<br />Anne Martens Karlsruhe Institute of Technology (KIT), GermanyHeiko Koziolek, Steffen Becker, Ralf Reussner<br />WOSP / SIPEW 2010<br />
    2. 2. Software Performance Engineering<br />Anne Martens<br />C1 <br /> 3 sec<br />A<br />Transform<br />Solve<br />Change component and deployment<br />2.5 sec<br />C2 <br />A<br />Solve<br />Transform<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    3. 3. Not only Performance!<br />Anne Martens<br />C1 <br />3 sec<br />p(fail) 0.01%$ 5700 <br />A<br />Transform<br />Solve<br />Change component and deployment<br />2.5 sec<br />p(fail) 0.02%<br />$ 12000 <br />C2 <br />A<br />Solve<br />Transform<br />Optimise multiple criteria at once<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    4. 4. Multicriteria Optimisation<br />Anne Martens<br />ArchitecturalCandidate<br />A<br />Time<br />5s<br />$40K<br />Costs<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    5. 5. Multicriteria Optimisation<br />Anne Martens<br />Generated & Evaluated<br />A<br />Time<br />5s<br />$40K<br />Costs<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    6. 6. Multicriteria Optimisation<br />Anne Martens<br />A<br />Time<br />5s<br />B<br />3s<br />C<br />2s<br />Pareto-optimal<br />$40K<br />$33K<br />$20K<br />Costs<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    7. 7. Related Work: Quality Optimisation<br />Anne Martens<br />Rule-based approaches: Single quality only<br />Parsons2008, Cortellessa2009, PerformanceBooster (Xu&Woodside2008),ArchE (McGregor2007)<br />Multicriteria evaluation: No improvement<br />Bondarev2007, Grunske2007<br />Optimisation: Limited degrees of freedom<br />ArcheOpteryx (Aleti2009), Canfora2005,Kavimandan2009, Sassy (Menascé2010)<br />Missing: Flexible multicriteriaoptimisationatthe design level<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    8. 8. PerOpteryx Approach<br />Anne Martens<br />Flexible degreesoffreedom<br />Multiplequalities<br />Multi-criteriaoptimization<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    9. 9. Degrees of Freedom<br />Anne Martens<br />Design decision that can still be made<br />C<br />Degree of freedom<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    10. 10. Types of Degrees of Freedom in CBSE<br />Anne Martens<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    11. 11. Instances of Degrees of Freedom<br />Anne Martens<br />Each component<br />Allocation<br />Componentselection for D<br />Each server<br />Processor speed<br />Component selection<br />Search alternatives<br />Component selection for C<br />Allocation of D<br />C<br />D<br />Processor speed of server 1<br />Allocation of C<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    12. 12. Search Problem<br />Anne Martens<br />evaluate<br />Response in 2.5 s<br />P(failure) 0.02%<br />Cost $6000<br />transform<br />evaluate<br />initial model<br />candidate model<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    13. 13. SearchImplementation<br />Anne Martens<br />NSGA-II<br />[Deb2002]<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    14. 14. Quality evaluation<br />Anne Martens<br />PalladioComponentModel<br />[Becker2007]<br />PCM2LQN<br />[Koziolek2008]<br />PCM2Cost<br />[Martens2010]<br />PCM2DTMC<br />[Brosch2009]<br /><br />Cost<br />Reliability<br />Performance<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    15. 15. CaseStudywith PerOpteryx (1/2)<br />Anne Martens<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    16. 16. CaseStudywith PerOpteryx (1/2)<br />1235 candidates<br />58 Pareto optimal<br />8h running time<br />Anne Martens<br />Componentallocation<br />Processingrates<br />Componentselection<br />Response Time<br />POFOD<br />Costs<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    17. 17. Case Study with PerOpteryx (2/2)<br />Anne Martens<br />RT: 1.34 s<br />POFOD: 5.2E-4<br />Cost: 69.83<br />Onlyfour, but fasterserversDifferent Webserver<br />RT: 2.2 s<br />POFOD: 6E-4<br />Cost: 98<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    18. 18. Future Work<br />Anne Martens<br />?<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    19. 19. Conclusions<br />Anne Martens<br />AutomatedArchitectureImprovement<br />Flexible degreesoffreedom<br />Multiplequalities<br />Multi-criteriaOptimization<br />http://sdqweb.ipd.kit.edu/wiki/PerOpteryx<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    20. 20. Conclusions<br />Anne Martens<br />Multi-criteriaOptimization<br />PerOpteryx<br />Benefits<br />Performance, Reliability, Costs<br />Implemented& Validated<br />Automatedimprovement<br />Performance istrade-off<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    21. 21. PerOpteryx Implementation (1/3)<br />Anne Martens<br />Degrees of Freedom:<br />ProcessingRate<br />ComponentSelection<br />ComponentAllocation<br />?<br />?<br />e.g., 1.5 – 3 GHz<br />Motivation – Related Work – Approach – Case Study – Future Work –Conclusion<br />
    22. 22. SearchProcess<br />Anne Martens<br />3 sec<br />p(fail) 0.01%5700 $<br />Change alongdegrees<br />2.8 sec<br />p(fail) 0.02%<br />6000 $<br />Change alongdegrees<br />2.5 sec<br />p(fail) 0.02%<br />12000 $<br />
    23. 23. Not only Performance!<br />Anne Martens<br />C1 <br /> 3 sec<br />A<br />Transform<br />Solve<br />Change component and deployment<br /> 2.5 sec<br />C2 <br />A<br />Solve<br />Transform<br />

    ×