the descartes modeling language status quo
play

The Descartes Modeling Language: Status Quo Samuel Kounev - PowerPoint PPT Presentation

The Descartes Modeling Language: Status Quo Samuel Kounev University of Wrzburg http://se.informatik.uni-wuerzburg.de/ Symposium on Software Performance, Stuttgart, Nov 27, 2014 Nikolaus Huber Fabian Brosig Credits S. Kounev 2 Main


  1. The Descartes Modeling Language: Status Quo Samuel Kounev University of Würzburg http://se.informatik.uni-wuerzburg.de/ Symposium on Software Performance, Stuttgart, Nov 27, 2014

  2. Nikolaus Huber Fabian Brosig Credits S. Kounev 2

  3. Main References  Fabian Brosig . Architecture-Level Software Performance Models for Online Performance Prediction . PhD thesis, Karlsruhe Institute of Technology (KIT), Karlsruhe, Germany, 2014. [ http | http ]  Nikolaus Huber . Autonomic Performance-Aware Resource Management in Dynamic IT Service Infrastructures . PhD thesis, Karlsruhe Institute of Technology (KIT), Karlsruhe, Germany, 2014. [ http | http ] 3 S. Kounev

  4. Elastic Resource Provisioning SLAs Load Variations Challenges  When exactly should a reconfiguration be triggered?  Which particular resources should be scaled?  How quickly and at what granularity? 4 S. Kounev Introduction Language Tool Chain Summary

  5. Semantic Gap Problem EAR EAR Applications Java EE • Multiple tiers VM VM VM • Multiple resource types JVM VMM OS Host VM VM VM Complex Software Stacks • Multiple layers VMM • Heterogeneous Resource Host Allocation VM VM VM VMM Host Resource Allocations in End-to-end QoS metrics ? Application SLAs Each Tier & Each Layer 5 S. Kounev Introduction Language Tool Chain Summary

  6. Descartes Research Group  Modeling methods for predicting at run-time the effect of dynamic changes on the system Quality-of-Service (QoS)  Current focus: availability and performance (response time, throughput and resource/energy efficiency)  Model-based algorithms and techniques for autonomic system adaptation during operation  Goal:  End-to-end QoS guarantees  High resource/energy efficiency  Low operating costs 6 S. Kounev Introduction Language Tool Chain Summary

  7. Descartes Modeling Language Adaptation Process Model Strategies Tactics Actions Adaptation Points Model DML Model Architecture-level Performance Model Application Architecture Model Software Usage Resource Landscape Model Profile Degrees-of-Freedom Infrastructure 7 Language S. Kounev Introduction Tool Chain Summary

  8. Summary http://descartes.tools/dml Tool Chain DML Specification Language Introduction S. Kounev 8

  9. Online Performance Prediction Online Performance Architecture-Level Prediction Performance Model <<FineGrainedBehavior>> IGateway.predict() <<InternalAction>> <<BranchAction>> parsePredictionJobs doLoadBalancing Probability: 0.5 Probability: 0.5 <<InternalAction>> schedulePredictionJobs <<ExternalCallAction>> <<ExternalCallAction>> <<ParametricResourceDemand>> PredictionServerA.predict PredictionServerB.predict ResourceType="CPU" Unit="CpuCycles" Specfication="(0.5506 + (7.943 * 10^(-8) * recordsize)) * 2700" <<implements>> IGateway train() predict() <<DataCenter>> results() BYDC <<ComputingInfrastructure>> <<ComputingInfrastructure>> desc1 desc2 Gateway # VM-Instances Server <<ConfigurationSpecification>> ResourceType="CPU" <<UsageProfile>> ProcessingRate=2.7GHz UserPopulation=10 Cores=2 = (1...16) ThinkTime=0.0 Service="train" 1 Gbit Ethernet RecordSize=500,000 <<ComputingInfrastructure>> <<ComputingInfrastructure>> desc3 desc4 #vCPU = (2...4) Prediction Database ServerA IPredictionServer IDatabase train() Prediction write() predict() query() ServerB <ConfigurationSpecification>> <<ModelEntity ResourceType="CPU" ConfigRange>> Autonomic Decision Making ProcessingRate=2.7GHz minInstances=1 Cores=8 maxInstances=16 9 Language S. Kounev Introduction Tool Chain Summary

  10. Model-Based System Adaptation Adaptation on Adaptation Adaptation Problem the Model Impact Execution on Anticipation Level Prediction Real System Online Perf. uses Prediction adapts Load Forecasting adapts Adaptation Process Model Architecture-Level Performance Model uses describes System 10 Language S. Kounev Introduction Tool Chain Summary

  11. Summary http://descartes.tools Tool Chain Descartes Tool Chain Language Introduction S. Kounev 11

  12. Summary Tool Chain http://descartes.tools Language Introduction S. Kounev 12

  13. DML Bench  Editors  Textual and graphical editors for DML models  Solvers  Solvers for conducting performance prediction  S/T/A Adaptation Framework  Execution of adaptation process on the model level http://descartes.tools/dml_bench 13 S. Kounev Introduction Language Tool Chain Summary

  14. DQL (Descartes Query Language) Performance Example of a Query y performance query specified with DQL Model SELECT s.avgResponseTime, Parameterization app.utilization, dbs.utilization CONSTRAINED AS FAST Model FOR RESOURCE Analysis ‘ApplicationServer’ AS app, RESOURCE ‘DBServer’ AS dbs, SERVICE ‘processOrder’ AS s; Query Results http://descartes.tools/dql 14 S. Kounev Introduction Language Tool Chain Summary

  15. DNI - Descartes Network Infrastructure Modeling  Language for perf. modeling of data center networks  network topology, switches, routers, virtual machines, network protocols, routes, flow-based configuration,...  Model solvers based on simulation (OMNeT) http://descartes.tools/dni 15 S. Kounev Introduction Language Tool Chain Summary

  16. LibReDE  Library for Resource Demand Estimation  Ready-to-use implementations of estimation approaches  Comparison of the accuracy of different approaches  Selection of a suitable approach for a given scenario http://descartes.tools/librede 16 S. Kounev Introduction Language Tool Chain Summary

  17. LIMBO  Load Intensity Modeling Tool  Automated model extraction from recorded traces  Creation and composition of custom models  Emulation of job arrivals for load generation http://descartes.tools/limbo 17 S. Kounev Introduction Language Tool Chain Summary

  18. WCF  Workload Classification & Forecasting Tool  Use of multiple alternative forecasting methods in parallel  Selection of method based on its accuracy in the recent past workload intensity history now near future http://descartes.tools/w cf 18 S. Kounev Introduction Language Tool Chain Summary

  19. BUNGEE  Framework for benchmarking elasticity  Current focus: IaaS cloud platforms http://descartes.tools/bungee 19 S. Kounev Introduction Language Tool Chain Summary

  20. Summary  Descartes Tool Chain  DML Bench - Editors, solvers and adaptation framework  DQL – Declarative query language  DNI – Descartes network infrastructure modeling  LibReDE - Library for resource demand estimation  LIMBO – Load intensity modeling tool  WCF – Workload classification & forecasting tool  BUNGEE - Framework for benchmarking elasticity 20 S. Kounev Introduction Language Tool Chain Summary

  21. http://w w w.descartes-research.net http://descartes.tools Questions? S. Kounev 21

  22. Employed Modeling & Analysis Methods Resource Descriptive Workload Regression Demand Architecture ‐ level Models → DML Analysis Forecasting Estimation • OMG Meta Object Facility (MOF) Regression ‐ • MOF ‐ based meta ‐ models MARS AR(I)MA based • (UML MARTE) techniques • (UML SPT) CART Extended Kalman exp. filter smoothing Predictive Performance Models M5 trees • Bounding techniques Nonlinear tBATS optimization • Operational analysis Cubist • Statistical regression models forests Croston’s Maximum • Stochastic process algebras method likelihood • (Extended) queueing networks Quantile estimation regression Cubic • Layered queueing networks forests smoothing Independent • Queueing Petri nets splines component Support • Machine learning ‐ based models analysis vector Neural • Detailed simulation models machines network ‐ based S. Kounev

Recommend


More recommend