![]()
(a) SBCS-CQ
|
We consider size-based task assignment with cycle stealing under central
queue (SBCS-CQ; see Figure 3.19(a)), where short jobs and long
jobs arrive at the central queue according to Poisson processes with
rate and
, respectively. The service demand of
the short jobs (respectively, long jobs) has an exponential
distribution with rate
(respectively,
).
We assume that jobs are nonpreemptive (i.e.,
once a job receives service, it runs to completion).
To prevent short jobs from waiting behind long jobs,
we designate one server as the short server, and the other as the long
server. Whenever the short server becomes idle, it picks the first
short job in the queue to run. Whenever the long server becomes idle,
it picks the first long job in the queue. However, if there is no
long job, the long server picks the first short job in the queue.
The number of jobs in the above system can be modeled as a GFB
process3.6. Here, we define the background process so that it tracks the number
of long jobs waiting in the queue or in service at the long server, , as well as
whether the long server is serving a long job, short job, or none.
Specifically, level
in the background process corresponds to
.
Also, we define the foreground process so that level
in the
foreground process corresponds to the the number of short jobs waiting in the
queue or in service at the short server,
. Note that whether there is a
short job in service at the long server is captured in the background
process and not in the foreground process.
As long as , the foreground and background processes can
be modeled as QBD processes, respectively. Figure 3.19(b) shows
the background process when
. It tracks
as well as
whether the long server is working on a long job (top row) or a short
job (bottom row). If the long server is serving a short job, the
short job is completed with rate
, but no long jobs are
completed. If the long server is serving long jobs, long jobs are
completed with rate
. Figure 3.19(c) shows
the foreground process given
. Since the long server is
busy, it does not pick short jobs in the queue, but short jobs are
completed with rate
by the short server. Observe that both
Markov chains in Figures 3.18(b)-(c) are QBD
processes.
Also, any transition from level 0 to level
is to level 1 in the background process,
since
is never incremented more than one at a time.
Further, any transition changes the level of the foreground
process by at most one, since any event (job arrival, job completion,
and changes in the long server mode) changes the number of short jobs
by at most one. Thus, these foreground and background processes
constitute a GFB process.