<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Relationship Invariants Based Sojourn Time Approximation for the Fork-Join Queueing System</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Roman S. Khabarov</string-name>
          <email>xabarov1985@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Vladimir A. Lokhvitckii</string-name>
          <email>lokhv_va@mail.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Andry S. Dudkin</string-name>
          <email>andry-ll@mail.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>MSA named, after A.F.Mozhaysky</institution>
          ,
          <addr-line>Saint Petersburg</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <fpage>63</fpage>
      <lpage>68</lpage>
      <abstract>
        <p>The approximation method of task sojourn time in the fork-join queuing system based on relationship invariants is proposed. The idea is in application of intuitive proportion between the certain queuing systems time characteristics. It is shown that, compared with the known methods, the proposed approximation is more accurate with server utilization higher then 0.7.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>To evaluate the efficiency of query processing in
systems using distributed and parallel computing
technologies, queuing systems like Split-Merge and
Fork-Join are used.</p>
      <p>The general idea of the Split-Merge and Fork-Join
systems functioning is as follows: tasks received in the
system are “split” into n sub-tasks, each of which is
sent to the channel with numbers 1, 2, ..., n,
respectively. Processed subtasks fall into the
synchronization buffer, where they wait for the
servicing completion of their related subtasks. At the
end servicing of the last related subtask,
synchronization occurs, i.e. aggregation, after which
task leaves the system. It is regarded that
synchronization occurs instantly.</p>
      <p>The difference between the Split-Merge and Fork-Join
systems is shown in Figures 1 and 2 for the example of
3 service channels. In the case of Fork-Join, the freed
channel may be occupied by the subtask of the next
task (Figure 1). When organizing the Split-Merge
service (Figure 2), a block occurs at the time of task
entering, and the freed channels are idle, waiting for
the last of the subtasks of the current task to be
serviced.
A rather large number of works has been devoted to the
Fork-Join and Split-Merge processes [Alom2014,
Bacc1985, Bacc1989, Fior2015, Flat1979, Harr2003,
Khab2019, Nels1988, Olv2014, Ryzh1980, Ryzh2015,
Qui2015, Var2002, Varma1994, Wright1992]. For the
Split-Merge system in [Harr2003], an exact solution
was obtained to determine the maximum service time
of independent channels with exponential service time
and various intensities, as well as approximations for
the case of a general distribution. In [Fior2015], the
mentioned distribution was obtained for homogeneous
and heterogeneous servers, and its representation in
matrix-exponential form made it possible to find both
the first and the moments of higher orders. It should be
noted that this method is characterized by high
computational complexity, which is a consequence of
the laborious operations of inversion and the Kronecker
product of matrices that are included in it. The use of
Kronecker algebra is associated with a significant
additional memory consumption, as well as many
redundant operations with zero operands. In
[Ryzh2019], an exact solution was found for an
arbitrary distribution of services based on
ChebyshevLaguerre numerical integration. The solution has a
relatively low complexity and high accuracy.
For Fork-Join systems, the exact expression for the
average sojourn time with an arbitrary service
distribution was obtained only for a system with two
channels [Bacc1985, Fior2015]. For the case n &gt; 2 and
exponential service, using various methods,
approximations of the average sojourn time were
obtained in [Nels1988, Var2002, Varma1994]. We give
below a brief summary of the results.</p>
      <p>In [Flat1979], an exact formula is given for the average
sojourn time for n = 2, and the exponential distribution
of the service time</p>
      <p>ae
v1 = çè H 2
r ö</p>
      <p>÷ × v1(M ) ,
8 ø
n
where H n = åi=1</p>
      <p>1/ i for n = 2 , H 2 = 1.5 ,
r = l / µ – system utilization,
v1(M ) = 1 (µ - l ) –
M / M /1 queueing system.</p>
      <p>average sojourn time in
In [Nels1988], Nelson and Tantawi proposed an
approximation for the average sojourn time in a
ForkJoin queueing system with n service channels
é H
v1 » ê n +
ë H 2
4 ae
11
èçç1</p>
      <p>H ö ù 12 - r</p>
      <p>n ÷÷r ú
H 2 ø û 8</p>
      <p>1
µ - l
, n ³ 2.</p>
      <p>(2)
In [Var2002], Varki and Merchant proposed a formula
v1 »
1 é</p>
      <p>êH n +
µ ë
r</p>
      <p>ae n
2(1 - r ) èçç åi=1 i - r
1</p>
      <p>+
n 1 öù
+ (1 - 2r )å
i=1 i(i - r ) ø÷÷ûú, n ³ 2.</p>
      <p>(1)
(3)
In [Varma1994], Varma proposed a method for
approximating the sojourn time based on a combination
of high and low system utilization interpolation
methods:
v1 » [H n + (Vn - H n )r ]
1
µ - l
(4)
where Vn = åin=1 çèaeç ni øö÷÷(-1)i-1 åim=1 ççèae mi ÷÷øö (mi m-+11)!
.</p>
      <p>In this paper, we propose a method for finding the
average sojourn time for a Fork-Join queueing system
with an arbitrary service distribution based on the
approximation of relationship invariants.</p>
    </sec>
    <sec id="sec-2">
      <title>2 Method idea</title>
      <p>In [Ryzh2015], to find the time characteristics of
multichannel queueing system with priorities, a method was
used based on the invariants idea of the relationship
between the desired characteristics:</p>
      <p>M k / Gk / n » M k / Gk /1×
All designations are given in Kendall notation.
Calculation methods for the systems indicated on the
right are considered known. In particular, iterative
methods of Takahashi-Takami or matrix-geometric
progression are used to calculate systems [Ryzh1980,
Taka1976]. For the non-priority systems M / G / 1
and M / G / n with a non-uniform task flow, the total
intensity of the task flow and the weighted average
moments of the servicing distribution were used.
As an approximation of the service time, it is proposed
to use a second-order hyperexponential distribution
H 2 applicable for values of the coefficient of
variation, both smaller and larger than 1.0. For
example, when replacing the gamma distribution with
the parameter 1 &lt; a &lt; 2 by H 2 -approximation, one
of the “probabilities” will be negative, and the other
will exceed 1.0. As computational experiments show
[Ryzh2015], these paradoxical intermediate results do
not interfere with the successful calculation of
queueing system using known numerical methods
[Taka1976].</p>
      <p>Here we present the scheme proposed in
[Ryzh2015] for the implementation of conversion
invariants for an n-channel priority system:</p>
      <p>a) By multiplying the channel rate by n, we obtain
the equivalent single-channel system rate.</p>
      <p>b) Calculate the waiting time distribution
moments{wi, j } for all types of requests i and the order
of the moments j = 1, 3.</p>
      <p>c) For the same initial data on the weighted average
service times and the total intensity of the incoming
flow L as applied to the
M / H 2 / 1 system,
calculate the number of requests stationary distribution
{ pi } and the average requests number in the queue:
¥
Q(1) = å (i - 1) pi .</p>
      <p>i=1
d) For the M / H 2 / n system, it is similar to carry
out the calculation of state probabilities at initial
service intensities and obtain the average queue length:
¥
Q(n) = å (i - n) pi .</p>
      <p>i=n+1
e) Recalculate the waiting time distribution
moments in the system with priorities for all i and j for
the multichannel case:</p>
      <p>Wi, j = wi, j × Q(n) Q(1) .</p>
      <p>f) Using them, according to relation (5), obtain the
sojourn time distribution moments of each task type in
a multichannel system.</p>
      <p>We propose a similar approach for finding the
average sojourn time in the Fork-Join queueing system
with the number of channels. We rewrite the proportion
(5) in the following form</p>
      <p>FJ n » FJ 2 ×
Here FJ n and FJ 2 – Fork-Join queuing systems
with n and 2 channels, respectively. To find the
average sojourn time in FJ 2 , we use the formula (1).
The calculation of the remaining queueing systems
from the right-hand side of (6) will be carried out by
known methods [Ryzh1980, Taka1976]. To ensure the
equality of system utilization values, when calculating
M / G / n queuing systems, the initial moments of
service time for were multiplied by n 2 .</p>
    </sec>
    <sec id="sec-3">
      <title>3 Calculation results</title>
      <p>The following are the results of calculations of the
average sojourn time in the queueing system (Figures
3-8) in comparison with the methods proposed in
[Nels1988,Var2002,Varma1994] (formulas (2), (3),
(4)) and simulation data. The comparison was carried
out depending on the system utilization and the number
of service channels at three values of the service time
coefficient of variation {0.5, 1.0, 1.5}.
As can be seen from the figures, the accuracy of
approximation by the method of invariants of the ratio
is higher than calculated by the formulas (2-4).
Moreover, at low ρ values, the method of invariant
relations gives underestimated estimates of the average
sojourn time, especially when increasing the coefficient
of variation of the service time. Since the proposed
method (as well as other approximation methods
compared here) allows us to estimate only the average
sojourn time of task in the system, if higher moments
are necessary, the Split-Merge calculation method
mentioned above should be used, since the estimated
values of the sojourn time estimates in this case are the
upper bound stay in Fork-Join queuing system.</p>
    </sec>
    <sec id="sec-4">
      <title>4 Summary</title>
      <p>The relation invariants method showed well average
sojourn time approximation accuracy for Fork-Join
queueing system. Calculation results and simulation
data comparison showed that the proposed
approximation accuracy increases as system utilization
increasing. At high the service time coefficient of
variation values, the method gives underestimated
sojourn time of the task in the system. If it is necessary
to find the upper bounds of sojourn time higher
moments, it is recommended to use the method
proposed in [Khab2019,Ryzh2019]</p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgments</title>
      <p>The study was carried out with the financial support of
the Russian Foundation for Basic Research, project
number 18-29-22064 \18.
[Alom2014] Alomari F., Menasce D.A. Efficient
Response Time Approximation for Multiclass
Fork and Join Queues in Open and Close
Queueing Networks. IEEE Transaction on
Parallel and Distributed Systems, vol. 25.
pp.1437-1446, 2014.
[Bacc1989] Baccelli F., Makowski A.M., Shwartz A.</p>
      <p>The Fork-Join Queue and Related Systems
with Synchronization Constraints: Stochastic
Ordering and Computable Bounds. Advances
in Applied Probability, vol. 21. No. 3. Pp.
629-660, 1989.
[Bacc1985] Baccelli F. Two parallel queues created by
arrivals with two demands. The M/G/2
symmetrical case. Technical report
INRIARocquencourt, no. 426, 1985.
[Fior2015] Fiorini P., Lipsky L. Exact Analysis of
Some Split-Merge Queues. Performance
Evaluation Review, vol. 43. No. 2. pp. 51-53,
2015.
[Flat1979] Flatto, L., Hahn S. Two parallel queues
created by arrivals with two demands. SIAM
Journal on Applied Mathematics, vol. 44.</p>
      <p>Pp.1041-1053, 1979.
[Harr2003] Harrison P.G., Zertal S. Queueing models
with maxima of service times. Computer
Performance Evaluation. Modelling
Techiniques and Tools, pp. 152-168, 2003.
[Khab2019] Khabarov R.S., Lokhvitckii V.A. Model’
otsenivaniya operativnosti mnogopotochnoi
obrabotki zadach v raspredelennoi
vychislitel’noi srede s uchetom protsessov
Split-Join. Vestnik Rossiyskogo novogo
universiteta. Seriya ”Slozhnye sistemy:
modeli, analiz i upravlenie” [Efficiency
evaluating model of tasks multy-threading
processing in a distributed computing
environment with Split-Join processes].
Vestnik of Russian New University. Series
”Complex systems: models, analisys,
management”, no. 1. Pp. 26-34, 2019 (In
Russ.).
[Nels1988] Nelson, R., Tantawi A.N. Approximate
analysis of fork/join synchronization in
parallel queues. IEEE Transactions on
Computers, vol. 37. Pp. 739-743, 1988.
[Olv2014] Olvera-Cravioto M., Ruiz-Lacedelli O.</p>
      <p>Parallel queues with synchronization. In arXiv
preprint https://arXiv:1501.00186, 2014.
[Ryzh1980] Ryzhikov Y.I., Khomonenko A.D.</p>
      <p>Iterativnyj metod rascheta mnogokanalnyh
system s proizvolnym raspredeleniem vremeni
obsluzhivaniya [An iterative method for
calculating multichannel systems with an
arbitrary distribution of service time].
Problemy upravleniya i teoriya informacii
[Management problems and information
theory], no. 3, Pp. 32-38, 1980 (In Russ.).
[Ryzh2015] Ryzhikov Y.I., Khomonenko A.D. Raschet
mnogokanal’nyh sistem obsluzhivaniya s
absolyutnym i otnositel’nym prioritetami na
osnove invariantov otnosheniya [Calculation
of multi-channel queueing systems with
preemptive and non-preemptive priorities
based on relationship invariants].
Intellektual’nie technologii na transporte
[Intellectual Technologies on Transport], no.
3, Pp. 11-17, 2015 (In Russ.).
[Ryzh2019] Ryzhikov Y.I., Lokhvitckii V.A.,
Khabarov R.S. Metod rascheta dlitel’nosti
obrabotki zadach v sisteme massovogo
obsluzhivaniya s uchetom processov
SplitJoin [Method for calculating the duration of
processing tasks in a queuing system taking
into account Split-Join processes]. Izvestiya
vysshikh uchebnykh zavedeniy.
Priborostroenie [Journal of Instrument
Engineering], vol. 62. No. 5. Pp. 419-423,
2019 (In Russ.).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [Taka1976]
          <string-name>
            <surname>Takahashi</surname>
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Takami</surname>
            <given-names>Y.</given-names>
          </string-name>
          <article-title>A numerical method for the steady-state probabilities of a GI/G/c queuing system in a general class</article-title>
          .
          <source>J. of the Operat. res. soc. of Japan</source>
          , vol.
          <volume>19</volume>
          (
          <issue>2</issue>
          ). Pp.
          <volume>147</volume>
          -
          <fpage>157</fpage>
          ,
          <year>1976</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Qui2015] Qiu</surname>
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perez</surname>
            <given-names>J.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Harrison</surname>
            <given-names>P.G.</given-names>
          </string-name>
          <article-title>Beyond the mean in fork-join queues: Efficient approximation for response-time tails</article-title>
          .
          <source>Performance evaluations</source>
          , vol.
          <volume>91</volume>
          . pp.
          <fpage>99</fpage>
          -
          <lpage>106</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>[Var2002] Varki</surname>
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merchant</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chen H. The</surname>
            <given-names>M/</given-names>
          </string-name>
          <article-title>M/1 Fork-Join Queue with Variable Subtasks</article-title>
          . http://www.cs.unh.edu/varki/publication/2000 -nov-open.pdf,
          <source>Accessed 19 Nov</source>
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [Varma1994]
          <string-name>
            <surname>Varma</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Makowski</surname>
            <given-names>A.M.</given-names>
          </string-name>
          <article-title>Interpolation Approximations for Symmetric Fork-Join Queues. Performance evaluations</article-title>
          , vol.
          <volume>20</volume>
          . Pp.
          <volume>245</volume>
          -
          <fpage>265</fpage>
          ,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>[Wright1992] Wright P.E.</surname>
          </string-name>
          <article-title>Two parallel processors with coupled inputs</article-title>
          .
          <source>Advances in Applied Probability</source>
          , vol.
          <volume>24</volume>
          . Pp.
          <volume>986</volume>
          -
          <fpage>1007</fpage>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>