persiform: performance engineering based on simulation of ... · hyperformix workbench. models in...
TRANSCRIPT
![Page 1: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/1.jpg)
research & development
Persiform: formance Engineering Based on Per
al Functional ModelsFormmulation of Si
Olivier Constant, Marius Bozga, Susanne Graf -- Verimag, GrenobleNicolas Moteau, Wei Monin -- France Telecom R&D
2007 April, 20th
![Page 2: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/2.jpg)
The PerSiForm project : Towards the integration of performance simulation in functional design
• French national project (RNRT)• Started Nov. 2004, ends August 2007• Partners
– 3 academic labs
– 2 companies
(leader)
![Page 3: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/3.jpg)
PerSiForm-DATE07/2007-04-20/author – p 3 research & development France Telecom Group
� Persiform methodology and tool chain: Performance models from annotated Functional Models
� Objectives and Constraints: methodology
� Persiform Modeling concepts
� Methodology implementation by systematic model transformation
� Example
� Application of the Persiform Tool Chain and Industrial Perspective
� Case study description and demo
� Simulation’s results vs. measures realized on the application
� Perspectives for France Telecom
1
2
summary
![Page 4: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/4.jpg)
PerSiForm-DATE07/2007-04-20/author – p 4 research & development France Telecom Group
1Performance Models from Annotated Formal Functional
Models through Systematic Model Transformation
![Page 5: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/5.jpg)
Outline
• Objectives and constraints
A methodology for performance evaluation throughout the development of performance critical service oriented systems
• Contribution– PerSiForm modeling concepts– Implementing the methodology by systematic model
transformations
• Example• Conclusion & perspectives
![Page 6: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/6.jpg)
Objectives : a methodology for performance evaluation throughout the development of performance critical service oriented systems
![Page 7: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/7.jpg)
Performance of complex systems
• Complex service-oriented system specifications– Distributed– Multiple usages of services / components– Large number of users
• Criticity of their performance– Controlling end-to-end response time, throughput– Controlling the cost of deployment
• Need for performance analysis throughout the entire design process– Early: evaluate architectural decisions– Late: determine an acceptable infrastructure
Objectives
![Page 8: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/8.jpg)
Performance of complex systems (2)
• Existing analysis techniques– Analytical methods– Simulation (expressiveness, scalability, applicability)– Test
• Problems– Consistency between functional and performance models
• Functional verification vs. performance analysis
– Performance modeling is an activity for experts• Requires dedicated professional tools
Objectives
![Page 9: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/9.jpg)
Design
Performance Simulation
Functional model
Enhanced model(time, resources,
environment)
Generatedperformance model
feedback anddiscussion
Adaptedperformance model
Model transformationautomaticsystematic
semantic preserving
input
output
adapt, simulate, analyze
Designer
provide
Performanceexpert
FunctionalVerification
output
Generatedverification model
(CASE tool)
(Perf. simulator)
Methodology
Objectives
UML
HyperformixWorkbench
![Page 10: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/10.jpg)
Models in Design and Performance Case Tools• A UML activity Diagram: functional view (causality +
synchronisation + data + annotations)
• A queuing network in HyPerformix Workbench:
focusing on resource consumption, characteristics of resources, environment (arrival of service requests)
![Page 11: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/11.jpg)
PerSiForm modeling concepts
![Page 12: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/12.jpg)
Categories of modeling concepts
• Structure– its impact on the behaviour (deployment)
• Behaviour– Causal flows– Synchronizations– Behaviour decomposition– Data– Resource consumptions– Time consumptions
• Environment (request arrival patterns)
Modelling concepts
Activity Diagrams
+
Data, Actions
+
Annotations
![Page 13: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/13.jpg)
Behaviour: Causal flows
A possible representation(UML Activity Diagrams)
Action1
Action2 Action3 Action4
Modelling concepts
A formal definition(Petri Nets)
![Page 14: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/14.jpg)
Decomposition
• Reusable sub-behaviours with parameters– ‘‘Procedural’’ Petri Nets without recursion
• A sub-behaviour may have concurrent executions
Modelling concepts
![Page 15: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/15.jpg)
Decomposition (2)
• Possible sub-behaviour terminations
– Equivalent to sub-behaviour inlining
– Thread destruction
– Return + destruction of all threads in the same execution
– Return once per execution, when all threads inthe same execution have been destroyed
Interrupt
Wait
Stop
Return
Modelling concepts
![Page 16: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/16.jpg)
Causal flows and synchronizations(defined by designers)
classical fork / joinpattern
arbitrary fork / join patterns
Modeling concepts
![Page 17: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/17.jpg)
Causal flows and synchronizations (2)
Modeling concepts
Loss of causality thread!
![Page 18: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/18.jpg)
Causal flows and synchronizations (3)
New thread
Modelling concepts
Solution• Use colours (coloured Petri Nets)• Allow edges to be marked as ‘‘new
thread’’• Synchronize on colours• But also support ‘‘weak’’
synchronization
![Page 19: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/19.jpg)
Causal flows and synchronizations (4)
Causality is preserved
Modelling concepts
Strong synchronization
![Page 20: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/20.jpg)
Decomposition (3)
• Semantics: each token owns a stack of colours– Entering a sub-behavior means pushing 2 fresh colors– Exiting a sub-behavior means popping twice– ‘‘New color’’ changes the topmost color only
• Rationale– The topmost color identifies the causality thread, as
introduced for flat behaviors – The second color identifies the execution of the sub-
behavior that the thread belongs to
Calling stack level 0
Calling stack level 1
Calling stack current level (2)Execution color
Causality thread color
Modelling concepts
![Page 21: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/21.jpg)
Behavior: Decomposition (4)
• Termination semantics clarified– Tokens belong to an execution E iff their stack contains
the color of E (independently of further sub-executions)
• Synchronization rules redefined– Strong synchronization requires stack equality
– Weak synchronization requires stack prefix equality
Modeling concepts
![Page 22: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/22.jpg)
Resource consumptions (defined by performance experts)
execute ( duration, time unit [, priority] )
allocate / free ( size )
take / release ( number )
emit ( quantity )
ProcessingUnit- Queuing discipline- Nb of processors- Max threads nb(- Max priority)(- Preemptible or not)
Memory- Size
TokenPool- Queuing discipline- Capacity
Network link- Queuing discipline- Delay- Throughput
Semantics comes from
Queuing Networks
deployment
deployment
deployment
deployment
Modelling concepts
![Page 23: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/23.jpg)
• Usage– Functional delays– Abstraction of external processing– Abstraction of internal processing
Behavior: Time consumption
delay ( duration, time unit )
Modeling concepts
![Page 24: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/24.jpg)
Behaviour: Data
• Variables– Scope: sub-behavior– Kind: parameter / shared / private to tokens– Type: Boolean, Integer, Real, String
• Computations– C / Workbench strings
• Probabilistic / deterministic choices
i = i + 3 + iuniform(1, 10);
Modeling concepts
![Page 25: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/25.jpg)
Environment
• Triggers the execution of the system’s behaviours
• Reflects the expected behaviour of the clients of the system
Environment- Executed behaviour- Inter arrival delay- Time unit- Nb executions- Values passed as parameters
Modeling concepts
![Page 26: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/26.jpg)
Implementing the approach
![Page 27: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/27.jpg)
Transformation process: Conceptual view
PF WorkbenchLanguage
PROFILE
- One possible translation of PF to Workbench- One possible manifestation of PF in UML- All exploitable user models (OCL constraints)
PerSiForm metamodel- All supported modelling concepts- All syntactically valid models- Clear semantics
UML 2.0
Implementation
![Page 28: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/28.jpg)
PF model WB modelUML 2.0+ PFU profile
model
UML2PF WB2XMLPF2WB XML2Text
XML model WorkbenchXML file
Semantics-driven transformation
Technical transformation
Workbench
Implementation
RSM
Transformation process: Technical view
![Page 29: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/29.jpg)
Profile & Metamodels
• Profile– 40 stereotypes (12 abstract) on 20 UML metaclasses– 34 OCL constraints
• PF– 64 metaclasses (28 abstract)– 31 OCL constraints
• Our Workbench metamodel– 47 metaclasses (8 abstract)
Implementation
![Page 30: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/30.jpg)
Overview of PF
Flows: Petri Nets + coloring model
Resources, resource consumptions: high-level concepts from Queueing Networks+ environments
Decomposition, data, terminations, time consumptions+ restrictions to transformable patterns
Implementation
![Page 31: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/31.jpg)
Transformations implementation
• Transformation process implemented in ATL (InriaNantes)– Tried to stick to a declarative style (rule-based)– Allowed informal proofs
Implementation
Query Rule based on query
![Page 32: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/32.jpg)
Transformations implementation (2)
Implementation
• Overview of transformation code– Fully declarative except for ‘‘called rules’’
![Page 33: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/33.jpg)
PF to Workbench transformation
• Principles– Standard concepts to high-level
Workbench concepts– Complex concepts to Workbench
code• Arbitrary synchronization,
terminations, etc.
– Try to obtain a clear graph representation
• Apply a last transformation thatinterfaces with DOT to generatelayout information for Workbench
Implementation
![Page 34: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/34.jpg)
Example: Audio Conference System
![Page 35: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/35.jpg)
Environment
![Page 36: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/36.jpg)
Deployment
![Page 37: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/37.jpg)
BehaviorParticipateToConference
in: conferenceIsInternationalout: isLeader
![Page 38: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/38.jpg)
Resulting Workbench model (extract)
![Page 39: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/39.jpg)
Case studies
• Several small examples• Orpheus Radar map system (under work)
– Service providing actual radar pictures to ships– Purpose: calibrate memory, computation and network
capacities
• France Télécom IOS-W (demonstrated application)– Plat-form-to-platform communication bus using web
services
• France Télécom ADSL– ADSL registration service– 17 activity diagrams
![Page 40: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/40.jpg)
Conclusion & perspectives
• Shown the feasibility of the approach– Systematic transformations– High expressivity & complex models– Involvement of industrial tools used by the specialists
• Forthcoming …– Progress on investigating support for functional validation,
in particular absence of feature interaction (Promela, IF, BIP),
– More case studies – code generation from detailed models ? (BIP)
![Page 41: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/41.jpg)
PerSiForm-DATE07/2007-04-20/author – p 41 research & development France Telecom Group
2Application of the Persiform Tool Chain
and Industrial Perspective
� Case study description and demo
� Simulation’s results vs. measures realized on the application
� Perspectives for France Telecom
![Page 42: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/42.jpg)
PerSiForm-DATE07/2007-04-20/author – p 42 research & development France Telecom Group
case study: IOS-W
� why this case study and not the ADSL delivery?
� IOS-W fits well
� ADSL delivery case study is a too big case study for a short talk• 17 activity diagrams
� IOS-W system is developed and real measurements are available• Comparisons of simulation results with these measurements
� what is IOS-W?
� a platform-to-platform communication bus using web services
� used by France Telecom’s Information System
� developed on BEA Aqualogic (SOA platform)
![Page 43: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/43.jpg)
PerSiForm-DATE07/2007-04-20/author – p 43 research & development France Telecom Group
informal description
WSP
IOS
WSCAuthentif TraitReq
TraitRespEmisLog
TraitLog
T0
T5
T1 T2
T3T4
Aqualogic/Weblogic
Cluster
Test platform
Authentification
TraitRequete
ServeurWSP
TraitReponse
traitService
WebSerceClient ServeurIOS
PreparLog
ServeurLog
TraitementLog
3 ms
4,5 ms
0,5 ms
1,4 ms
1,5 ms
![Page 44: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/44.jpg)
PerSiForm-DATE07/2007-04-20/author – p 44 research & development France Telecom Group
IOS-W ’s PerSiForm description
� 7 diagrams for IOS-W:
� 1 use case diagram• describes client's behavior
� 5 Activity diagrams• describe the dynamic of the system, the cluster and garbage collectors
� 1 deployment diagram• describe how the system is deployed on the hardware
![Page 45: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/45.jpg)
PerSiForm-DATE07/2007-04-20/author – p 45 research & development France Telecom Group
Demo
� A look at some of the diagrams with RSM
� running model transformations
� UML to Petri net
� Petri net to Workbench
� Workbench to XML
� XML to text (to produce a file for Hyperformix/Workbench)
![Page 46: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/46.jpg)
PerSiForm-DATE07/2007-04-20/author – p 46 research & development France Telecom Group
Generated simulation model
Module
Architecture
![Page 47: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/47.jpg)
PerSiForm-DATE07/2007-04-20/author – p 47 research & development France Telecom Group
Cluster’s behavior:
IOS’s behavior:
GC’s behavior:
![Page 48: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/48.jpg)
PerSiForm-DATE07/2007-04-20/author – p 48 research & development France Telecom Group
Simulation results vs. measurements
� original study in 2006 by
� :HL�0RQLQ��&\ULOOH 3XJHW�DQG�*X\�9DFKHW �)UDQFH�7HOHFRP�5'�
� open source load injection framework: CLIF (ObjectWeb)
� Some comments
![Page 49: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/49.jpg)
PerSiForm-DATE07/2007-04-20/author – p 49 research & development France Telecom Group
Simulation results vs. measurements (1/4)
distribution_temps_reponse
-0,1
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
0 20 40 60 80 100 120 140 160
ms
simu_60/s
test_60/s
Prob_cumulée_temps_reponse
0
0,2
0,4
0,6
0,8
1
1,2
0 50 100 150
ms
s imu_60/s
tes t_60/s
� end-to-end response time under a load of 60 requests/sec
� simulation is very close to what is observed by test
![Page 50: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/50.jpg)
PerSiForm-DATE07/2007-04-20/author – p 50 research & development France Telecom Group
Simulation results vs. measurements (2/4)� end-to-end response time under a load of 100 requests/sec
� a distance between simulation and test appears
distribution_temps_reponse
-0,1
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0 20 40 60 80 100 120 140
mn
simu_100/s
test_100/s
Prob_cumulée_temps_reponse
0
0,2
0,4
0,6
0,8
1
1,2
0 50 100 150
ms
s imu_100/s
test_100/s
![Page 51: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/51.jpg)
PerSiForm-DATE07/2007-04-20/author – p 51 research & development France Telecom Group
Simulation results vs. measurements (3/4)
� and the gap grows with the load…
distribution_temps_reponse_test
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0 100 200 300 400 500
msP
rob
(t_r
epo
nse
=x)
60Req/s
100Req/s
160Req/s
275Req/s
distribution_temps_reponse_simu
-0,1
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0 100 200 300 400 500
ms
Pro
b(t
_rep
on
se=x
)
60Req/s
100Req/s
160req/s
275Req/s
![Page 52: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/52.jpg)
PerSiForm-DATE07/2007-04-20/author – p 52 research & development France Telecom Group
Simulation results vs. measurements (4/4)� under somewhat heavy loads, a request’s end-to-end
response time is longer in test than in simulation…
� a possible reason:
� need to describe middleware's behavior for finer simulation results (thread pool, connection pool, component pool,…)
![Page 53: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/53.jpg)
PerSiForm-DATE07/2007-04-20/author – p 53 research & development France Telecom Group
Conclusion and perspectives
� relevant simulation results when the behavior is well known
� kind of results: response time, number of concurrent accesses, risks of bottleneck, impact of parameter values, configuration’s comparison,…
� sizing resources for large scale deployment
� possible transfer to anticipation and/or development projects
� main targeted domains: Information System, service platforms,…
� use theses techniques on more applications within pilot projects
� user feed back
![Page 54: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/54.jpg)
PerSiForm-DATE07/2007-04-20/author – p 54 research & development France Telecom Group
Conclusion and perspectives
� Information System edits recommendations to handle performance requirements earlier in the life cycle.
� 4 main complementary approaches• intuition: based on experience• measures: expensive, difficult interpretation, system needs to exist,…• model for performance: flexible (modifications are easy), reliable, but no specific tool
recommended yet. Not widespread • peer reviews
� PerSiForm is legitimate to contribute to the ’Model for performance’ approach
� brings added value with it’s formalism (strong semantic + specific OCL constraints) and it’s tool chain
� make performance study more accessible (description of the model based on UML)
![Page 55: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/55.jpg)
PerSiForm-DATE07/2007-04-20/author – p 55 research & development France Telecom Group
Questions & discussion
![Page 56: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/56.jpg)
PerSiForm-DATE07/2007-04-20/author – p 56 research & development France Telecom Group
Annexes
� UML diagrams screenshots
![Page 57: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/57.jpg)
PerSiForm-DATE07/2007-04-20/author – p 57 research & development France Telecom Group
Use Case diagram
� Une copie d’écran ici
![Page 58: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/58.jpg)
PerSiForm-DATE07/2007-04-20/author – p 58 research & development France Telecom Group
Activity diagram (cluster behavior)
![Page 59: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/59.jpg)
PerSiForm-DATE07/2007-04-20/author – p 59 research & development France Telecom Group
Activity diagram (IOS behavior)
![Page 60: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/60.jpg)
PerSiForm-DATE07/2007-04-20/author – p 60 research & development France Telecom Group
Activity diagram (GC behavior)
![Page 61: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/61.jpg)
PerSiForm-DATE07/2007-04-20/author – p 61 research & development France Telecom Group
Deployment diagram
![Page 62: Persiform: Performance Engineering Based on Simulation of ... · Hyperformix Workbench. Models in Design and Performance Case Tools • A UML activity Diagram: functional view (causality](https://reader035.vdocument.in/reader035/viewer/2022071219/6056023a06c984232f67271b/html5/thumbnails/62.jpg)
PerSiForm-DATE07/2007-04-20/author – p 62 research & development France Telecom Group
Model used for the simulation