Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ СИСТЕМ В СРЕДЕ EXTENDSIM
Посмотреть оригинал

Инструменты для управления потоком заявок

Маршрутизация заявок

В ExtendSim реализован инструментарий для управления потоком заявок, позволяющий разделять или объединять потоки в зависимости от заданных условий (критериев). Маршрутизация потоков реализуется блоками Select Пет

In и Select Item Out.

Блок Select Нет In выполняет слияние нескольких потоков заявок в один поток, выбирает заявку с одного из входных коннекторов в зависимости от условий и посылает заявку на выходной коннектор. Доступны разные режимы работы блока:

  • — по приоритет)' {Item priority). Выбирается входной коннектор (вход), на котором доступна заявка с наивысшим приоритетом (соответствует наименьшему числовому значению приоритета);
  • — по вероятности (Random). Вход выбирается по вероятности, заданной в диалоговом окне блока. Вероятности вводятся в десятичном формате (например, можно ввести 0.25 или 25%), сумма вероятностей должна быть равна единице. Нели выбрана опция Select from: all input, то вход будет выбран случайным образом независимо от того, доступна или нет заявка на данном входе. Подобная ситуация может потенциально привести к зависанию. Если выбран пункт Select from: only inputs with available items, блок будет выбирать только входы с доступными заявками;
  • — по значению на коннекторе блока (Select connector). Значение, полученное на коннекторе select, определяет, какой выбирается вход. В диалоговом окне блока есть иоле ввода для значения, соответствующего верхнему входу; но умолчанию установлен 0. Нижние коннекторы будут пронумерованы последовательно от верхнего коннектора. То есть, если верхний вход определяется значением I, то второй вход будет пронумерован как 2, следующий нижний вход как 3,

и так далее. В этом случае, значение 3 на коннекторе select приведет к выбору заявки с третьего входа. Даже если доступны заявки на других входах, блок ожидает заявки на входе 3;

последовательно (Sequential). Выбираются входы в строго последовательном порядке, начиная сверху. Эго также известно, как выбор но методу «round robin» — циклический перебор;

— объединение (Merge). Заявки выбираются по мере доступности. В общем случае, данный режим используется для объединения потоков заявок, где отсутствует блокировка заявок, поступающих на блок Select Item In. Входы выбираются в порядке циклического перебора, начиная сверху; после получения заявки с входа выбор будет продолжен со следующего входа.

Блок Select Item Out разделяет поток заявок и направляет их по какому-либо конкретному пути в зависимости от условий. Доступны следующие режимы работы блока:

по свойствам (Property). Выход определяется с использованием параметров заявки — атрибута или приоритета;

  • — по приоритету коннекторов (Connector priority). Делается попытка отправить заявку на каждый коннектор в порядке их приоритета, пока заявка не будет принята присоединенным блоком. Приоритет для коннекторов вводится в таблице в диалоговом окне блока. Наивысший приоритет соответствует наименьшему числу;
  • — по вероятности (Random). Выходы выбираются по вероятности, исходя из настроек, заданных в таблице вероятности блока. При выборе режима If output is blocked: item will try unblocked outputs, блок будет случайным образом выбирать выход для отправления заявки. При выборе режима If output is blocked: item will wait for blocked output, блок будет выбирать выход, и заявка будет в состоянии ожидания, пока выход не сможет принять заявку;
  • — по значению на коннекторе блока (Select connector). Значение, полученное на коннекторе select, определяет, какой выбирается выход. В диалоговом окне блока есть поле ввода для значения, соответствующего верхнему выходу; но умолчанию установлен 0. Нижние коннекторы будут пронумерованы последовательно после верхнего коннектора. Блок удерживает заявку, пока выходной канал занят;

последовательно (Sequential). Выходы выбираются в последовательном порядке, начиная с верхнего (режим циклического выбора «round robin»). При выборе пункта If output is blocked: item will tty unblocked outputs, блок будет проверять последовательно все коннекторы, пока не найдет свободный выход. Если выбран пункт If output is blocked: item will wail for blocked output, блок выберет выход и заявка будет ждать до тех пор, пока выход не сможет принять заявку.

Блоки Select Item In и Select Item Out работает только с целыми числами. Поэтому, если выбран режим select connector, то числа 0,001 и 0,999, полученные на входе select, будут приведены к 0.

При мер 9. Специализированная вычислительная система получает на вход задания. Задания поступают в систему в соответствии с нормальным законом распределения со средним значением 20 мс и средним квадратическим отклонением (СКО) — 2 мс. Задания распределяются на два компьютера с вероятностями: 0,8 и 0,2. Время обработки задания на каждом из компьютеров распределено по равномерному закону в диапазоне соответственно: 8—12 мс; 6—10 мс. Промоделировать работу системы по обработке 2000 заявок.

Конечный вид модели приведен на рис. 43.

Модель системы (пример 9)

Рис. 43. Модель системы (пример 9)

Для построения модели необходимо выполнить следующие шаги:

  • 1. Создать, разместить и соеденить блоки, как показано на схеме (рис. 43).
  • 2. Задать в блоке Executive режим окончания моделирования: Stop simulation: when count connector value = 2000.
  • 3. Задать в диалоговом окне блока Create режим Create items randomly, распределение Normal с параметрами mean = 20 и Std.dev = 2.
  • 4. Задать в диалоговом окне блока Select Нет Out режим Select output based on: random опцию if output is bloked: item will wait for blocked output и таблицу вероятностей Probability: 0,8 — первый выход, 0,2 — второй выход.
  • 5. Задать в диалоговом окне блоков Activity режим Delay is: specified by a distribution распределение Uniform, Real с параметрами Min = 8 (6) и Max = 12 (10) и вынести в область модельного окна выходную характеристику Utilization (коэффициент использования устройства).

Для остальных блоков модели используются настройки «но умолчанию».

В результате моделирования выдается информация о за1рузке устройств: 0,4 (для первого компьютера) и 0,08 (для второго), которая позволяет сделать вывод о неравномерной загрузке компьютеров системы и неполном использовании вычислительных ресурсов системы в целом. Система имеет резервы вычислительной мощности и входной поток заявок может быть значительно увеличен.

Пример 10. На обработку в вычислительную систему поступают задания. Средний интервал между поступлением двух заданий подчиняется равномерному закону распределения в диапазоне 10—14 мс. Задания обрабатываются одним из трех компьютеров. Время обработки — 36 мс. Если в очереди на обработку стоит 3 задания, то вновь поступившее задание выводится из системы без обработки. Промоделировать работу системы в течение 200 мс.

Конечный вид модели с ограничением очереди приведен на рис. 44.

Модель системы (пример 10)

Рис. 44. Модель системы (пример 10)

Последовательность разработки модели следующая.

  • 1. Создать, разместить и соеденить блоки, как показано на схеме (рис. 44).
  • 2. Задать в блоке Executive режим окончания моделирования: Stop simulation: at end time. В пункте меню Run —> Simulation Setup задать End time = 200.
  • 3. Задать в диалоговом окне блока Create режим Create items randomly, распределение Uniform, Real с параметрами Min = 10 и Max = 14.
  • 4. Задать в диалоговом окне блока Select Item Ош режим Select output based on: select connect.
  • 5. Задать в диалоговом окне блоков Activity режим Delay is: a constant. Delay (D) - 36 time units, Maximum items in activity = 3.
  • 6. Задать в диалоговом окне блока Decision (библиотека Value.Их) опцию Outputs 1 at Y (TRUE) and 0 at N (FALSE) if: A <= В and В is: 3.

Для остальных блоков модели используются настройки «по умолчанию».

В блоке Decision анализируется длина очереди. Если длина очереди меньше чем или равна пороговой величине, определенной в диалоговом окне блока Decision (3 заявки) на выходе Y будет выдано значение 1. Это укажет блоку Select Item Out направлять заявки через нижний выходной коннектор. Если длина очереди больше порогового значения, выход N блока Decision выдаст 0, и заявки будут направлены на выход, игнорируя очередь.

В результате моделирования выдается график изменения времени ожидания заявки в очереди и количества необслуженных заявок во времени (см. рис. 45). Анализ выходных характеристик позволяет сделать вывод о низкой эффективности моделируемой системы: обрабатывается только примерно половина, поступающих заявок (9 из 17 заявок но результатам одного прогона модели), остальные заявки выводятся из системы без обработки.

График изменения выходных характеристик системы (пример 10)

Рис. 45. График изменения выходных характеристик системы (пример 10)

 
Посмотреть оригинал
Если Вы заметили ошибку в тексте выделите слово и нажмите Shift + Enter
< Предыдущая   СОДЕРЖАНИЕ   Следующая >
 

Популярные страницы