MEXMVA
The Mean Value Analysis (MVA) algorithm is one of the most
popular for evaluating the performance of separable (or product-form) closed
queueing networks. In this page you can find a mex version of this famous
algorithm written in C and compiled as mex file to be used in Matlab.
click here to download the
c-mex source file
click here to download the
compiled mex file (dll)
How to use MEXMVA
Just copy the mexmva.dll file in the a default directory of the mex files of
Matlab (see the documentation of Matlab) or copy it in the same directory where
there is the m-script that uses mexmva.
mexmva parameters: [r,x] = mexmva(N0,L,Ld);
- N0 is the vector 1 X C
of the Population of the classes of the closed queueing network,
where C is the number of classes. For instance, with the
command N0 = [1 2 5]; you will assingn 1 client to the class 1, 2 clients to
class 2, and 5 clients to the class 3.
- L is the matrix containing the
Service Demands of the queueing centers of the network. It is a K
X C matrix, where K is the number of the centers. For
instance with L = [1 0.5 0.5; 2 1 0], you will define two (K=2) centers with
the respective Demand 1 0.5 0.5 for the class 1 2 3 of the first center, and
2 1 0 for the class 2 1 0 of the second center. If you don't want queuing
centers (strange case) just use a vector of zeros [0 0 0 ... 0].
- Ld is the matrix of the Delay
Centers. It is a J X C. Exactly as for L, it
defines delay centers instead of queuing centers. For instance with Ld = [1
0.2 0.1], you will define one (J=1) centers with the respective delay 1 0.2
0.1 for the class 1 2 3. If you don't want delay centers just use a vector
of zeros [0 0 0 ... 0].
- r is the response time of the network.
It is a (K+J) X C matrix. the element i,j of this matrix say
the response time of the i-st center (queuing center if i<=k and delay
center if >k) for the clients of the j-st class. With the Matlab command
sum(r) you will evaluate the total response time for each class, and with
the command sum(r')' the global response time of each center for all
classes. Finally, sum(sum(r)) returns the total response time of the
queueing network.
- x is the vector of the throughputs for each class. It
is a 1 X C vector.
For further details about the MVA algorithm see the book:
E.D. Lazowska, J. Zahorjan, G.S. Graham, and K.C. Sevcik,
Quantitative System Performance—Computer System Analysis Using Queueing
Network Models. Englewood Cliffs, N.J.: Prentice-Hall, 1984.