20.01.2015 Views

Performance Modeling and Benchmarking of Event-Based ... - DVS

Performance Modeling and Benchmarking of Event-Based ... - DVS

Performance Modeling and Benchmarking of Event-Based ... - DVS

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

74 CHAPTER 4. PERFORMANCE ENGINEERING OF EVENT-BASED SYSTEMS<br />

!"#$%&'&<br />

('&<br />

!"#$%&1&<br />

(')*+&(-.%/&0&%23454!<br />

!"#$%&'&<br />

!"#$%&'& )&<br />

!"#$%&*&<br />

)&<br />

)&<br />

!"#$%&1&<br />

!"#$%&(&<br />

!"#$%&+&<br />

(')**+&,-&(-.%/&0!<br />

!"#$%&'&<br />

!"#$%&'&<br />

!"#$%&*&<br />

)&<br />

)&<br />

!"#$%&1&<br />

!"#$%&(&<br />

!"#$%&+&<br />

Figure 4.22: Example for Priority <strong>of</strong> Transitions<br />

network links. The respective physical system resources are modeled using the queues inside the<br />

queueing places. After completing our logical model we can use it to generate different physical<br />

representations by defining mappings <strong>of</strong> logical resources to physical resources.<br />

In Figure 4.21, an example application composed <strong>of</strong> two different components is illustrated.<br />

In the logical model, we define how they interact with each other. Multiple queueing places<br />

can be mapped to the same physical queue. For example, if all entities are deployed on a<br />

single server, their corresponding queueing places should be mapped to a set <strong>of</strong> central queues<br />

representing the physical resources <strong>of</strong> the server.<br />

The hierarchical structure <strong>of</strong> the model not only makes it easy to underst<strong>and</strong> <strong>and</strong> visualize,<br />

but most importantly, it provides flexibility in mapping logical resources to physical resources<br />

<strong>and</strong> thus makes it easy to customize the model to a specific deployment <strong>and</strong> to reuse the<br />

logical model by mapping into different physical scenarios. Further, it is possible to map several<br />

logic models in one physical model, e.g., to verify if a server has enough resources to run two<br />

applications.<br />

4.3.2 Non-Constant Cardinalities <strong>of</strong> Transitions<br />

In st<strong>and</strong>ard QPNs, the cardinalities <strong>of</strong> transitions are specified by a constant value. This has<br />

several limitations. In our approach it is possible to specify the cardinality <strong>of</strong> a transition by<br />

using a distribution function. This increases the flexibility <strong>and</strong> at the same time minimizes the<br />

number <strong>of</strong> transition modes. Furthermore, models are easier to maintain.<br />

For example, in Pattern 2 (1:n communication) we define the number <strong>of</strong> subscribers directly<br />

by setting a constant integer value for the cardinality <strong>of</strong> the transition. For each different sized<br />

subscriber set we have to define an extra transition mode (e.g. one for 10 subscribers, one for 15,<br />

etc.). By allowing distribution functions, such scenarios are easier to model with less complexity.<br />

The modeler can concentrate on the logical relations instead <strong>of</strong> creating <strong>and</strong> maintaining a high<br />

number for transition modes.<br />

4.3.3 Priority <strong>of</strong> Transitions<br />

St<strong>and</strong>ard QPNs do not support priorities <strong>of</strong> transitions. This approach provides only limited<br />

control <strong>of</strong> transition firing order. To illustrate this limitation we have a look at the example in<br />

Figure 4.22. We have two modes defined for transition T1 <strong>and</strong> would like to model the following<br />

behavior:<br />

• If Token A <strong>and</strong> Token B exist, the first mode T1-I should be fired.<br />

• If only Token A <strong>and</strong> no Token B exist, T1-II should be fired.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!