Опубликован: 20.04.2011 | Уровень: для всех | Доступ: платный
Лекция 14:

Прикладная теория организации очередей

Пример 13.6.1: Средние времена ожидания GI/M/1

Для M/M/1 мы находим \alpha = \alpha_m = A. Для D/M/1\alphaa = \alpha_d получается из уравнения:

\alpha_d=e^{-(1-\alpha_d)/A}

где \alpha_d находится в пределах (0,1).

Можно показать, что 0 < \alpha_d < \alpha_m < 1. Таким образом, система организации очереди D/M/1 будет всегда иметь среднее время ожидания меньше, чем M/M/1.

Для = 0,5 Эрл. мы находим следующие средние времена ожидания для всех клиентов (13.78):

М/М/1:\qquad \alpha = 0.5, \qquad W= 1, \qquad w = 2.\\
D/M/1:\qquad \alpha = 0.2032, \qquad W = 0.2550, \qquad w = 1.3423.

где среднее время пребывания в системе используется как единица времени ( \mu=1 ).Среднее время ожидания пропорционально прошедшему до данного момента времени с коэффициентом формы распределения интервала поступления.

Распределение времени ожидания: GI/M/1, FCFS

Когда клиент достигает системы организации очереди, число клиентов в системе геометрическое распределено и клиент, предположительно, ожидает некоторое время, равное нескольким геометрически экспоненциально распределенным фазам.

Это сводится к экспоненциально распределенному времени ожидания с параметром, данным в (13.80), когда дисциплина организации очереди - FCFS (секция 12.4 и рис.4.9).

Циклическое и совместное использование процессора

Циклическая ( RR - Round Robin ) модель организации очереди (рис.13.6) является моделью для исследования компьютерной системы с разделением времени, где мы хотим обеспечить быстрое время реакции для самых коротких работ. Эта дисциплина организации очереди также названа справедливой организацией очереди, потому что доступные ресурсы одинаково распределены среди заявок на работу (клиенты) в системе.

 Циклическая система организации очереди.

Рис. 13.6. Циклическая система организации очереди.

Задача распределена в интервале времени \Delta s для момента обслуживания. Если задача не закончена в этот интервал, то она возвращается в FCFS -очередь, где ставится на равных условиях с новыми задачами. Если мы допускаем уменьшение \Delta s, до нуля, то получаем дисциплину организации очереди типа "совместного использования процессора (PS - Processor Sharing).

Заявки на новые работы помещаются в FCFS -очередь, где они находятся на ожидании, пока не будут взяты на обслуживание, в пределах интервала времени (слота) \Delat s, который одинаков для всех заявок на работу. Если работа не закончена в пределах интервала времени, обслуживание прерывается и работа помещается в конце FCFS -очереди. Это продолжается, пока не будет представлено полное время обслуживания.

Мы принимаем, что очередь неограниченна и что заявки (новые работы) прибывают согласно Пуассоновскому процессу ( \lambda ). Распределение времени обслуживания может быть общим со средней величиной s. Интервал времени может изменяться.

Если он становится конечным, и все работы будут заканчиваться за один интервал, то мы получаем просто систему организации очереди M/G/1 с дисциплиной FCFS. Если мы допускаем уменьшение интервала времени до нуля, то получаем дисциплину организации очереди типа "совместного использования процессора" (PS - Processor Sharing), которая имеет множество хороших аналитических свойств. Она была исследована Клейнроком (1967) и подробно изложена в (Kleinrock, 1976 [67] ). Модель совместного использования процессора может интерпретироваться как система организации очереди, где все работы обслуживаются непрерывно обслуживающим прибором (режим разделения времени). Если есть i работ в системе, каждая из них получает 1/i часть емкости компьютера. Так что нет никакой очереди, и дисциплина организации очереди бессмысленна.

Когда предложенная нагрузка A = \lamda * s меньше единицы, можно показать, что вероятности устойчивых состояний равны:

p(i)=(1-A)*A^I, \quad i=0,1, \dots, ( 13.81)

то есть, получается, геометрическое распределение со средней величиной A/(1-A) . Среднее время пребывания в системе (среднее время реакции) для работ с продолжительностью t равно:

R_t=\frac{t}{1-A} ( 13.82)

Если бы эта работа была одна в системе, то ее время пребывания в системе было бы t. Так как нет очереди, мы можем говорить о средней задержке для работ с продолжительностью t

W_t=R_t-1=\\
=\frac{A}{1-A}*t. ( 13.83)

Соответствующие средние величины для произвольной работы естественно равны:

R=\frac{s}{1-A}, ( 13.84)
W=\frac{A}{1-A}*s. ( 13.85)

Это показывает, что мы получаем точно такие же средние величины, что и для M/M/1 (секция 12.2.4). Но фактическое среднее время ожидания становится пропорциональным продолжительности работы. Такое свойство зачастую весьма желательно. Мы не предполагаем, что имеются какие-либо предварительные знания о продолжительности работы.

Среднее время ожидания пропорционально среднему времени обслуживания. Пропорциональность не должна пониматься при этом методе так, что две работы одной той же продолжительности имеют одинаковое время ожидания. Это справедливо только в среднем. По сравнению с результатами, которые мы получили ранее для M/G/1 (формула Полячека-Хинчина (13.2)), результаты могут не соответствовать нашим интуитивным представлениям.

Очень полезное свойство модели совместно используемого процессора: процесс выхода из системы - Пуассоновский процесс, как и процесс поступления вызовов (секция 14.2). Это интуитивно объясняется тем фактом, что процесс выхода из системы получается из процесса поступления вызовов стохастическим смещением отдельных моментов поступления. Сдвиг по времени равен времени реакции со средней величиной, приведенной в (13.82) (секция 6.3.1, теорема Пальма).

Совместно использующая процессор модель очень полезна для того, чтобы анализировать системы с разделением времени, и для сетей, использующих организации очереди (Лекция 14).

Краткие итоги:

  • Для описания типа нагрузки и структуры очереди D.G. Kendall (1951 [61] ) ввел следующую систему обозначений для моделей организации очереди:

    A/B/n

    где

    A - процесс поступления вызовов,

    B - распределение времени обслуживания,

    n - число обслуживающих приборов.

  • Применяются три классических дисциплины организации очереди: FCFS (First Come - First Served): "Первый Пришел - Первый Обслужен", LCFS (Last Come - First Served) - "Последний Пришел - Первый Обслужен" и SIRO (Service In Random Orde) - "Обслуживание в Случайном Порядке".
  • Для компьютерных систем мы часто пробуем уменьшить полное время ожидания. Это может быть сделано с использованием дисциплин, учитывающих критерии времени обслуживания:

    • Shortest Job First - "Первым - Самое короткое Задание";
    • RR (Round Robin) - циклическая (круговая система);
    • PS (Processor Sharing) - совместное использование процессора;
    • FB (Foreground / Background) - "Передняя позиция план /Задняя позиция".
  • На практике клиенты часто разделяются на N приоритетных классов. Различают два типа приоритетов: Неприоритетный, Приоритетный. Если обслуживаемый клиент имеет более низкий приоритет, чем новый поступивший вызовов, то обслуживание прерывается. При этом возможно возвращение к работе.
  • Приоритетное возвращение к работе имеет варианты: приоритетное без повторения, приоритетное с повторением. В поведении клиентов рассматриваются дисциплины: Отказывающийся становиться в очередь, Нарушающий очередь, Перепрыгивающий.
  • Среднее время ожидания для системы M/G/1 определяется формулой Полячека-Хинчина:

    W=\frac{V}{1-A}=\frac{A*s}{2(1-A)}* \varepsilon
  • Если мы рассматриваем только клиентов, которые задержаны, то можем найти моменты распределения времени ожидания для классических дисциплин организации очереди: FCFS, LCFS, M/G/1/k для системы, где общее количество мест ожидания для клиентов конечно и равно k.
  • В соответствии с различными стратегиями организации очереди, времена ожидания могут быть распределены среди клиентов согласно приоритету. В этом случае клиенты разделены на N классов (потоков нагрузки). В результате распределение времени обслуживания становится взвешенной суммой распределений времени обслуживания отдельных классов (секция 3.2: комбинация параллельных процессов).
  • Ранее мы предположили, что время обслуживания клиента не зависит от дисциплины организации очереди. Пропускная способность обслуживающего прибора, таким образом, постоянна и не зависит, например, от длины очереди. Дисциплина организации очереди, как говорят, сохраняет работу.
  • Функция нагрузки U(t) обозначает время, которое требуются, чтобы обслужить клиента, прибывшего в систему в момент времени t. В момент поступления вызова функция U(t) увеличивается скачком на величину времени обслуживания, а между поступлением вызовов U(t) - уменьшается линейно с наклоном от 1 до 0.
  • Используя принцип сохранения работы и функцию U(t) , можно получить закон сохранения Клейнрока: среднее время ожидания для всех классов взвешенной нагрузки не зависит от дисциплины очереди. Это справедливо только для неприоритетных дисциплин организации очереди.
  • Полное среднее время ожидания W_p клиента класса p не зависит от того, какого класса клиенты ожидают, пока обработка очереди не будет закончена {V для всех классов одинаково}.

    \sum_{i=1}^N A_i*W_i=\frac{A*V}{1-A}=conctant
  • M/M/n приоритетная дисциплина организации очереди без прерывания обслуживания имеет среднее время ожидания W_p для класса p:

    W_p=\frac{nsE_{2,n}(A)}{\{n-A_{p-1}'\}\{n-A_p'\}}.
  • M/M/n дисциплина организации очереди с приоритетным возвращением к работе имеет среднее время ожидания W_p для класса p:

    W_p=\frac{V_p}{(1-A_{p-1}')(1-A_p')}+\frac{A_{p-1}'}{1-A_{p-1}'}*s_p.
  • Для M/M/n случай приоритетного возвращения к работе анализируется более сложно. Все клиенты должны иметь одинаковое среднее время обслуживания. Сначала среднее время ожидания может быть получено рассмотрением каждого класса автономно (12.15). Затем можно рассмотреть два класса вместе и получить время ожидания для двух классов и т. д.
  • Системы с постоянными временами обслуживания имеют определяющее свойство: клиенты покидают обслуживающие приборы в том же самом порядке, в котором они приняты для обслуживания.
  • W обозначает среднее время ожидания для всех клиентов, и w обозначает среднее время ожидания для клиентов, которые стоят в очереди. Постоянные времена занятия требуют, чтобы мы помнили точное время начала. С экспоненциальным распределением иметь дело проще из-за отсутствия у него памяти: остающееся время "жизни" имеет то же самое распределение, как полное время "жизни" (секция 4.1), и поэтому мы можем забыть о периоде или моменте времени, когда начинается время обслуживания.
  • W - среднее время ожидания для всех клиентов, и w - среднее время ожидания для клиентов, которые стоят в очереди в системе M/D/1, определяются следующими формулами:

    W=\frac{A*h}{2(1-A)},\\
w=\frac{h}{2(1-A)}.
  • Для распределения времени ожидания M/D/1, FCFS формула времени ожидания имеет вид:

    p\{W \le t\}=(1-\lambda)*\sum_{j=0}^T \frac{\{\lambda (j-t)\}^j}{j!}*e^{-\lambda(j-t)},
  • Распределение времени ожидания M/D/n, FCFS определяется распределением Кроммелина:

    p\{W \le t\}=1-\sum_{i=0}^{n-1} \sum_{k=0}^I p(k)*\sum_{j=1}^{\infty} \frac{\{A(j- \tau)\}^{(T+j+1)n-1-i}}{\{(T+j+1)n-1-i\}!},
  • Системы M/D/r * k, FCFS=E_k /D/r, FCFS эквивалентны относительно распределения времени ожидания.
  • Для конечной системы очереди M/D/1/k уравнения равновесия для вероятностей состояния p_k(i), i=0,1, \dots, k-2,могут быть установлены с помощью уравнений состояний Фрея. Первые (k-1) уравнения (13.41) вместе с требованием нормализации и фактом, что предложенная нагрузка равняется обслуженной нагрузке плюс отклоненная нагрузка ( свойство PASTA ) дают в результате (k+1) независимых линейных уравнений, которые легко решить.
Нияз Сабиров
Нияз Сабиров

Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей.

Елена Сапегова
Елена Сапегова

для получения диплома нужно ли кроме теоретической части еще и практическую делать? написание самого диплома требуется?

Муслим Джалалудинов
Муслим Джалалудинов
Россия, Махачкала
Дмитрий Свиридов
Дмитрий Свиридов
Россия