A novel approach to multiformalism performance modeling by composition of basic modeling primitives...

Post on 14-Jan-2016

217 views 0 download

Tags:

Transcript of A novel approach to multiformalism performance modeling by composition of basic modeling primitives...

A novel approach to multiformalismA novel approach to multiformalismperformance modeling by composition of performance modeling by composition of

basic basic modeling primitivesmodeling primitives

A Dissertation Defense

Enrico Barbierato

University of Turin, Italy

February 2013

AgendaAgenda

Multiformalism;State of the art;The SYMTHESys framework;Applications;Originality;Conclusions; Future work

MultiformalismMultiformalism

Multiformalism has emerged as a sound technique showing how a complex model can be described as the composition of a set of sub-

models;

Composability: key aspectsComposability: key aspects

The capacity to assemble different components in one system;

It can be considered from a syntactic (a) or a semantic (b) point of view;

Solution Integration;

a

b

State of the artState of the art

Formalisms:– Process Algebra;– Petri Nets-based algebra;– Queueing Petri Nets;– …

Frameworks:– Möbius, OsMoSys, …

Tools:– ATOM3…

SIMTHESysSIMTHESys

Structured Infrastructure for Multiformalism modeling and Testing of Heterogeneous formalisms and Extensions for Systems

A framework for the definition of new formalisms and the automatic generation of related solvers, that allows the combination of more formalisms in the same model.

FDLFDL

<fdl>

<elementType name="CAMWA">

<propertyType name="Description" type="String" default="An OSSP model" storage="static"/>

<propertyType name="id" type="String" default="" storage="static"/>

<implements ref="hasSubElements"/>

<implements ref="ExpEventModel"/>

<behavior name="InitEvents" return="void">

<code> for(ElementType T : allSubElements) { if(T instanceof ExpEventModel) {

((ExpEventModel)T).InitEvents();}}

</code>

</behavior>

</fdl>

Formalisms are described by the Formalism Description Language (FDL) documents, which declare all their modeling primitives

SIMTHESys ElementTypeSIMTHESys ElementTypeElementType:

– Properties (a constant, a variable or a result);– Behaviors;

…<elementType name="Place"><!-- Interfaces --><implements ref="ElementOccupancy"/>

<!-- Properties --><property Type name="id" type="String" default="" storage="static"/><property Type name="Tokens" type="int" default="0" storage="dynamic"/><property Type name="MeanTokens" type="Result" storage="computed"/> …

Excerpt of the SPN FDL

…<behavior name="getOccupancy“ return="int"><code> return getTokens();</code></behavior> …

Excerpt of the SPN FDL

SIMTHESys InterfacesSIMTHESys Interfaces

An elementType uses:– solver interfaces to define which solving engine(s) should be used

with it;– behavioral interfaces to re-use existing abstractions.

<fdl> <elementType name="FCQN_SPN">

<!-- Special Interfaces --> <implements ref="hasSubElements"/>

<!-- Interfaces --> <implements ref="ExpEventModel"/> <uses ref="ProbWeight"/> <uses ref="PushPull"/> <uses ref="Active"/> <uses ref="FCQueueEvent"/> <uses ref="ExpEventSolver"/> … </fdl>

SIMTHESys InterfacesSIMTHESys Interfaces

An elementType implements a behavioral interface by explicitly defining behaviors and properties specified in it.

<elementType name="Place"><!-- Interfaces --><implementsimplements ref="ElementOccupancy"/> …<behavior name="getOccupancy“ return="int"><code> return getTokens();</code></behavior> …

FDL file excerpt for SPN

<interface><behavior name="getOccupancy" return="int"/><behavior name="setOccupancy" return="void"> <parameter name="o" type="int"/></behavior><behavior name="addOccupancy" return="void"> <parameter name="o" type="int"/></behavior></interface>

ElementOccupancy interface

SIMTHESys InterfacesSIMTHESys Interfaces

An elementType implements a solver helper interface:

<fdl> <elementType name="SPN"><!-- Special Interfaces --><implements ref="ExpEventModel"/>

<uses ref="hasSubElements"/><uses ref="ExpEventSolver"/> …

FDL file for SPN (excerpt )

<interface><behavior name="InitEvents" return="void"/><behavior name="computeStateRewards "return="double[]"/><behavior name="countStateRewards" return="int"/><behavior name="setStateRewards" return="void">

<parameter name="r" type="Result[]"/></behavior>

ExpEventModel interface (excerpt)

InitEvents behaviorInitEvents behavior A formalism defines a behavior called

InitEvents: …

<behavior name="InitEvents“ return="void">

<code>

for(Transition T : sub_Transition) {

if(T.isActive()) {Transition _T = T;

((ExpEventSolver)getModel().getSolver()).schedule("T.fire()", T.getRate, T.getId(), 1.0);}}

</code>

</behavior>

…Excerpt of FDL

Schedule behaviorSchedule behavior The solution engines expose a behavior

Schedule that is used by the implementations of the InitEvents behavior to define what must be executed whenever an event occurs;<behavior name="InitEvents“ return="void">

<code>

for(Transition T : sub_Transition) {

if(T.isActive()) {Transition _T = T;

((ExpEventSolver)getModel().getSolver()).schedule("T.fire()", T.getRate, T.getId(), 1.0);}}

</code>

</behavior>Excerpt of FDL

MDLMDL

<mdl fdl="CAMWA.fdl">

<CAMWA id="CAMWA" Description="Un_modello_di_prova">

<CheckGe id="Arc_GE_01" from="In" to="Degradation0" weight="1"/>

<CheckGe id="Arc_GE_02" from="In" to="Crash0" />

<RateControl id="Arc_RC_05" from="Degradation0" to="Srv“ weight="1"/>

<CheckLt id="Arc_LT_01" from="Crash0" to="Srv" />

<CheckLt id="Arc_LT_02" from="Rejuvenation0" to="Srv" />

<CheckLt id="Arc_LT_03" from="Degradation0" to="Srv" />

<OSSP id="OSSP0" >

<Degradation id="Degradation0" nPhases="2" Phase="0" phaseRate="1.15;1.25;" phaseDeg="1;0.9" />

</mdl> Excerpt of MDL

A file describing the model according to the FDL file in a Model Definition Language (MDL), XML-based:

Formalism familiesFormalism families

Exponential Event Formalisms (EEF)– Primitives represent entities capable of

generating events;– Such events (that can be used to represent

the firing of a PN transition, or the end of the service in a queue) are characterized by the fact that they occur after an exponentially distributed time;

More formalism familiesMore formalism families

Exponential and Immediate Events Formalisms (EIEF);

Labelled Exponential Events Formalism (LEEF);

Labelled Fluid Events Formalisms (LFEF);

Solution EnginesSolution Engines

The framework currently provides some solving engines for performance evaluation:– Classic event based simulators;

– Solvers designed to generate Continuous Time Markov Chains (CTMCs) and perform steady state and transient analysis

Performance IndicesPerformance Indices

Formalisms may be characterized by performance indices calculated by using State Rewards and Impulse Rewards;

<RESULTS>

<SPNS>

<SPN>

<ID>Serv2br</ID><BOUNDED>false</BOUNDED> <PLACE>P1<MEANTOKENS>3.0000000000000004</MEANTOKENS></PLACE>

<PLACE>P2<MEANTOKENS>2.0 </MEANTOKENS></PLACE>

<TRANSITION>T1<THROUGHPUT>4.163336342344338E-06</THROUGHPUT></TRANSITION>

</SPN>

</SPNS>

</RESULTS>

Excerpt of a RESULT file

SIMTHESysER Architecture and SIMTHESysER Architecture and Workflow: FDL AnalyzerWorkflow: FDL Analyzer

SIMTHESysER Architecture and SIMTHESysER Architecture and Workflow: MDL ParserWorkflow: MDL Parser

SIMTHESysER Architecture and SIMTHESysER Architecture and WorkflowWorkflow

ApplicationsApplications

1) A motivating example: closed TFCQN with three servers;

Enrico Barbierato, Marco Gribaudo, Mauro Iacono, Defining Formalisms for Performance Evaluation With SIMTHESys. Electr. Notes Theor. Comput. Sci. 275: 37-51 (2011);

ApplicationsApplications

2) A multiformalism performance oriented model verifying some conditions;

Barbierato E, Gribaudo M, Iacono M. (2011). Exploiting multiformalism models for testing and performance evaluation in SIMTHESys, Proceedings of 5th International ICST Conference on Performance Evaluation Methodologies and Tools,ICST, ISBN:978-1-936968-09-1, DOI:10.4108/icst.valuetools.2011.245727

ApplicationsApplications

3) A formal definition of an exception handling mechanism for multiformalism models;

Enrico Barbierato, Marco Gribaudo, Mauro Iacono, Stefano Marrone: Performability Modeling of Exceptions-Aware Systems in Multiformalism Tools. ASMTA 2011: 257-272;

ApplicationsApplications

4-5) Two approaches (of increasing complexity) adding software rejuvenation features to performance models;

- Enrico Barbierato, Marco Gribaudo, Mauro Iacono, The SIMTHESys multiformalism modeling framework. Computers & Mathematics with Applications 64(12): 3828-3839 (2012);

- Enrico Barbierato, Andrea Bobbio, Marco Gribaudo, Mauro Iacono: Multiformalism to Support Software Rejuvenation Modeling. ISSRE Workshops 2012: 271-276

ApplicationsApplications

6) A performance evaluation of SOA-based applications;

Enrico Barbierato, Mauro Iacono, Stefano Marrone (2012): PerfBPEL: A graph-based approach for the performance analysis of BPEL SOA applications. VALUETOOLS 2012: 64-73

ApplicationsApplications

7) A case study showing how product-form solution theory can couple with multiformalism compositional modeling techniques.

Barbierato E., Dei Rossi G., Gribaudo M., Iacono M., Marin A. (2012). Exploiting product forms solution techniques in multiformalism modeling. Electr. Notes Theor. Comput. Sci, to appear;

ApplicationsApplications

8) Modeling applications based on the map-reduce paradigm

E. Barbierato, M. Gribaudo, M. Iacono, A Performance Modeling Language For Big Data Architectures. 27th European conference on modelling and simulation (ECMS 2013). IEEE Soc. German Chapter, ISBN: 978-0-9564944-6-7, DOI: 10.7148/2013-0511

9) Language for what-if analysis for Big Data application designers

E. Barbierato, M. Gribaudo, M. Iacono, Performance Evaluation of NoSQL Big-Data applications using multi-formalism models. Future generation computer systems, Elsevier, ISSN: 0167-739X, DOI: 10.1016/j.future.2013.12.036

Originality of SIMTHESysOriginality of SIMTHESys

SIMTHESys separates the component defining the formalism from the component solving the model;

Originality of SIMTHESysOriginality of SIMTHESys

Flexibility:– new formalisms (or extension of the existing

ones) can be easily added to the framework by creating a new FDL file;

Solution integration:– SIMTHESys derives the underlying CTMC

from the analyzed model; in this way, it is not necessary to consider mechanisms sharing results between sub-models.

ConclusionsConclusions

SIMTHESys is an ongoing project that defines a framework for the design of multiformalism performance evaluation models:

Future WorkFuture Work

– The definition of Formalisms and Models by using the concept of inheritance;

– The definition of a Proprietary Language for Behaviors;

– New formalism families and applications.

PublicationsPublications

Journals:[2014] Enrico Barbierato, Marco Gribaudo, Mauro Iacono, Modeling and

evaluating the effects of Big Data storage resource allocation in global scale cloud architectures. International Journal of Data Warehousing and Mining, ISSN: 1548-3924, DOI: (to appear);

[2014] E. Barbierato, M. Gribaudo, M. Iacono, Performance Evaluation of NoSQL Big-Data applications using multi-formalism models. Future generation computer systems, Elsevier, ISSN: 0167-739X, DOI: 10.1016/j.future.2013.12.036;

PublicationsPublications

[2012] M. Iacono, E. Barbierato, M. Gribaudo, The SIMTHESys Multiformalism Modeling Framework. Computer & mathematics with applications, vol. 64, num. 12, pp. 3828-3839 (December 2012), Elsevier, ISSN: 0898-1221, DOI: 10.1016/j.camwa.2012.03.009

[2011] E. Barbierato, M. Gribaudo, M. Iacono, Defining formalisms for performance evaluation with SIMTHESys. Electronic notes in theoretical computer science, vol. 275, pp. 37-51, Elsevier, ISSN: 1571-0661, DOI: 10.1016/j.entcs.2011.09.004

PublicationsPublications

Contributions in edited print books:[2014] Enrico Barbierato, Mauro Iacono, Marco Gribaudo, Multiformalism and multisolution strategies for system performances evaluation. QUADS, (to appear)2012: 271-276

[2014] E. Barbierato, Multiformalism modeling composability in SIMTHESys, IGI-Global, ISBN: 978-1-4666-4659-9, DOI: 10.4018/978-1-4666-4659-9

 [2011] E. Barbierato, M. Gribaudo, M. Iacono, S. Marrone, Performability modeling of exceptions-aware systems in multiformalism tools. Analytical and Stochastic Modeling Techniques and Applications, LNCS 6751, pp. 257-272, Springer-Verlag, ISBN: 978-3-642-21712-8, DOI: 10.1007/978-3-642-21713-5_19

PublicationsPublications

Conferences:

[2013] E. Barbierato, M. Gribaudo, M. Iacono, Modeling Apache Hive based applications in Big Data architectures. VALUETOOLS 2013, 7th International Conference on Performance Evaluation Methodologies and Tools, Torino, Italy, December 10-12, 2013

[2013] E. Barbierato, M. Gribaudo, M. Iacono, A Performance Modeling Language For Big Data Architectures. 27th European conference on modelling and simulation (ECMS 2013). IEEE Soc. German Chapter, ISBN: 978-0-9564944-6-7, DOI: 10.7148/2013-0511

PublicationsPublications

[2012] E. Barbierato, A. Bobbio, M. Gribaudo, M. Iacono, Multiformalism to Support Software Rejuvenation Modeling. IEEE 23rd International Symposium on Software Reliability Engineering Workshops (ISSREW), 27-30 Nov. 2012, pp.271-276, IEEE, ISBN: 978-0-7695-4928-6, DOI: 10.1109/ISSREW.2012.92

[2012] E. Barbierato, M. Iacono, S. Marrone, PerfBPEL: a graph-based approach for the performance analysis of BPEL SOA applications. Proceedings of Valuetools 2012, 6th International Conference on Performance Evaluation Methodologies and Tools. Carg se (France), �October 9-12, 2012, ISBN: 978-1-936968-63-3, DOI: 10.4108/valuetools.2012.250340

PublicationsPublications

[2011] E. Barbierato, M. Gribaudo, M. Iacono, Exploiting multiformalism models for testing and performance evaluation in SIMTHESys. Proceedings of 5th International ICST Conference on Performance Evaluation Methodologies and Tools - VALUETOOLS 2011, Cachan (France), May 16-20, 2011, ICST, ISBN: 978-1-936968-09-1, DOI: 10.4108/icst.valuetools.2011.245727

[2011] E. Barbierato, D. Cerotti and M. Gribaudo, A tool suite for modelling spatial interdependencies of distributed systems with Markovian Agents, in Proceedings of the 8th European conference on Computer Performance Engineering, ser. EPEW 2011. Berlin, Heidelberg: Springer-Verlag, 2011, pp. 280 - 294.