Нагрузочный расчет
Цель нагрузочного расчета - формирование рабочей нагрузки АСНИ во времени между устройствами системы. При этом необходимо решить следующие задачи: * выбрать режим сбора и первичной обработки данных; * рассчитать параметры временной диаграммы работы АСНИ по критерию минимума непроизводительных затрат при ограничении на скорость сбора данных; * рассчитать требуемый объем оперативной памяти; * выбрать ЭВМ, состав программного обеспечения и интерфейс (предварительно) из заданного набора альтернативных вариантов. Снятие показания с датчика и его первичную обработку будем считать прикладной задачей. Для опроса i-го датчика каждый раз запускается i-ая прикладная задача. В начале расчета подсчитывается С0 - суммарная частота запуска прикладных задач по следующей формуле: Здесь m - число датчиков в системе, foi - частота опроса i-го датчика (получены на этапе информационного расчета). Вводится понятие потенциальной нагрузочной характеристики (ПНХ). Она характеризует уменьшение потенциальных возможностей системы, при увеличении расходов на диспетчеризацию. Расход на диспетчеризацию тем больше, чем чаще появляются запросы на запуск прикладных задач. В общем виде ПНХ может быть представлена следующим образом: rn(C)=1-rд(C) Здесь rд(C) - приведенные затраты процессорного времени на диспетчеризацию. rд(С)=1-rп(С) 0£rn(C)£1 Конкретный вид ПНХ определяется выбранной операционной системой (ОС). Операционная система выбирается в соответствии с запросами системы и с учетом критерия минимизации стоимости системы. Возможные ОС представлены в П1 пункт 6.2.3 таблица 6. Наиболее быстродействующей является 3-я ОС.
Рис. 4 Каждому рабочему режиму АСНИ на плоскости нагрузочной характеристики соответствует рабочая точка (РТ) с координатами: Cрт и rрт. rрт=Срт(tусд+tинт+tпо)
tусд - задержка вносимая УСД. Здесь Сусд - максимальная скорость преобразования, выбирается из [1] пункт 6.2.3 таблица 2. tинт - задержка вносимая интерфейсом при обмене данными между ЭВМ и УСД, выбирается из П1 пункт 6.2.4 таблица 4. tпо - затраты процессорного времени не связанные с обменом (подготовительные операции, первичная обработка), выбирается из П1 пункт 6.2.4 таблица 5. При выборе ОС значения t1 и t2 в П1 таблица 6, а также tпо даны для 3-ей ЭВМ. Для их пересчета на выбранный вариант ЭВМ используются формулы: Здесь , , - значения для выбранной ЭВМ; , , - значения для 3-ей ЭВМ из П1 таблицы 5 и 6; , , , - индивидуальные коэффициенты производительности для выбранной и 3-ей ЭВМ из П1 пункт 6.2.3 таблица 3. Для выполнения ограничений на верность восстановления сигнала необходимо, чтобы на этапе сбора данных частоты опроса датчиков были равномерными и лежали в заданных пределах: fi ³ foi Здесь foi - частота опроса i-го датчика при выбранной разрядности АЦП (nацп), полученные на этапе информационного расчета; fi - реальная частота опроса i-го датчика. fi может быть больше foi для выбранной разрядности АЦП, но не меньше, так как в этом случае не будет обеспечено восстановление сигнала с заданной точностью. Варьируя значение fi, мы перемещаем РТ по плоскости ПНХ (по координате Срт), тем самым выбирая выгодное для нас положение РТ, при котором обеспечивается восстановление сигнала с заданной точностью и минимальная стоимость используемого оборудования. Изменение стоимости происходит за счет выбора различных устройств (движение по координате rрт). При выборе fi и устройств необходимо обеспечить выполнение условия: rn(Срт) ³ rрт(Срт)+R0 или R0³ rn(Срт)-rрт(Срт) Здесь R0 - допустимый резерв загрузки ЭВМ в РТ заданный в техническом задании. Для удобства обозначим: =f0 Последовательность запуска прикладных задач формируется по циклограмме, которая представляет собой список номеров задач, расположенных в нужной последовательности. В начале каждого такта диспетчер по сигналу от таймера считывает очередной элемент циклограммы и запускает соответствующую задачу. По окончании циклограммы происходит возврат к ее начальному элементу. В циклограмме могут быть не заполненные такты. Это означает, что в соответствующем такте временной диаграммы выполняется фоновая работа (например, завершение ранее прерванных задач). Если пронумеровать все такты временной диаграммы элементами натурального ряда чисел, то последовательность номеров тактов, в которых вызывается i-ая задача, можно рассматривать как класс вычетов j i по модулю r i. Здесь ji (начальная фаза) - номер такта временной диаграммы, в котором i-ая задача вызывается в первый раз; ri (тактовое расстояние) - расстояние между соседними моментами запуска i-ой задачи, выраженное в тактах временной диаграммы. ri и ji - целые числа. Тогда частоты запуска задач: f i = f0 / r i Рис. 5 Выбор параметров временной диаграммы f0, j=[j1,j2,...,jm], r=[r1,r2,...,rm], где m - число датчиков в системе, следует проводить по критерию минимума суммарной загрузки процессора. Чем меньше загрузка процессора, тем менее производительный процессор можно использовать в АСНИ, а следовательно снизить ее стоимость. Для поиска минимальной загрузки процессора необходимо решить следующую задачу: При следующих ограничивающих условиях: ri £ f0/foi - ограничение на погрешность восстановления, вытекающее из требования fi ³ foi и fi=f0/ri; ji(mod ri)¹jj(mod rj) - требование, согласно которому в каждом такте временной диаграммы должно начинаться выполнение не более одной задачи; н.о.к (r1,r2,r3,...,rm)£N0 - ограничение на длину циклограммы, накладываемое оперативной памятью (н.о.к - наименьшее общее кратное). На этапе предпроектного анализа целесообразно использовать следующий подход к выбору параметров временной диграммы. Примем тактовое расстояние ri равным ближайшей к f0/foi степени числа 2, меньшей f0/foi, т.е. ri=[f0/foi]2=2a. При этом задача сведется к нахождению величины f0, минимизирующей суммарную загрузку процессора rS(f0)=rрт(f0)+rд(f0) при следующем ограничении: Здесь Кз.ц. - коэффициент загрузки циклограммы, характеризует долю ненулевых элементов в циклограмме, М - число датчиков в системе. Функция rS(f0) имеет пилообразный характер, причем, локальные минимумы наблюдаются в “особых” точках, имеющих следующие значения: S(k,i) = foi × 2k, i=1,2,...,m k=1,2,.... Значение частоты f0, обращающее rS в минимум, лежит на интервале [C0, 2C0] в одной из особых точек. Напомним, что: Ограничивающее условие Кз.ц. можно записать в следующем виде: Здесь K - число групп датчиков, Мj - число датчиков в j-ой группе, (2к)j - тактовое расстояние кратное степени числа 2 для j-ой группы. Алгоритм определения параметров временной диаграммы состоит из следующих этапов: Этап 1 Вычисление области поиска рабочей частоты циклограммы f0: [C0, 2С0] – значения тактовой частоты циклограммы из указанного интервала должны выбираться по возможности наименьшими, что снизит требования на быстродействие КТС. C0=10×164+2×80+9×43+10×46=2647 Область поиска рабочей частоты циклограммы: [2647; 5294] Этап 2 Значения тактовой частоты циклограммы из найденного интервала могут определяться, например, наличием генератора стабильной частоты, но предпочтительнее их выбирать из тех, которые обеспечивают более близкое к 1 значение . Выбор предпочтительных частот: С0 £ foi×2a £ 2C0 Для каждой группы датчиков вычисляется: Сj = fj × 2a Здесь fj - частота опроса foi любого датчика j-ой группы. C1 = 164×25 =5248 C2 = 80×26 =5120 C3 = 43×26=2752 C4 = 46×26=2944 Этап 3 Из рассчитанных для каждой группы Сj выбирается наименьшая Сj и проверяется в качестве тактовой частоты циклограммы - f0. Вычисляются тактовые расстояния для каждой группы датчиков - значения (2к)j=[f0/foi]2. По условию построения равномерной адаптивной циклограммы тактовые расстояния в нашем случае выбираются кратными степени двойки, что может иметь то преимущество, что в качестве задатчика циклограммы можно использовать двоичный счетчик. Если для выбранной частоты циклограмма может быть построена - удовлетворяется условие Кз.ц. £ 1, то f0 считается допустимой и квазиоптимальной для всех особых точек rS(f0). В противном случае она отбрасывается и этап 3 повторяется для других по порядку возрастания Сj. При таком подходе полученная f0 является минимальной из возможных, где загрузка процессора также минимальна. Начинаем подбор с меньшей частоты C3=2752: Выбор исследуемой тактовой частоты циклограммы (2752 гц.) позволяет получить по крайней мере для одной дроби искомый результат, совпадающий со значением равным степени двойки, что уменьшает процент пустых тактов в циклограмме и позволяет считать это значение частоты наиболее предпочтительным. Выбор в качестве тактовых расстояний степеней двойки (4,32,16,256), меньших расчетных значений, обуславливается необходимостью обеспечения заданной точности восстановления сигнала. Вычислим коэффициент заполнения циклограммы:
Так как условие Кз.ц. £ 1 не выполняется, то переходим к следующей частоте: С4=2944 Таким образом в качестве Срт выбирается С1: f0= Срт=С1=2944 гц.
Этап 4 Вычисляются тактовые расстояния и частоты запуска для каждой прикладной задачи: ri = [f0 / foi]2 fi = f0 / r i Каждой прикладной задаче в порядке возрастания тактовых расстояний назначается начальная фаза ji и составляется циклограмма. Вычисляется длина циклограммы: Nц = max{r1,r2,...,rm} Номера датчикам назначаются следующим образом: 1-ая цифра - номер группы, которой принадлежит датчик, 2-ая цифра - номер датчика в группе. Параметры временной диаграммы сведем в таблицу:
Таблица 9
Длина циклограммы: Nц = max{r1,r2,...,rm}= 64 такта. Построим циклограмму (табл. 7): Таблица 10
Заполнение циклограммы начинают с отведения тактов для датчиков с меньшими тактовыми расстояниями. Датчикам присваиваются двухзначные номера, где первая цифра означает номер группы датчика, а вторая цифра номер датчика в группе.
После построения циклограммы опроса рассчитываются rрт и rп для выбранного оборудования, и проверяется условие: rп ³ rрт + R0 (7) Если необходимо делаются замены в составе аппаратно-программного обеспечения и вновь проверяется условие. Таким образом выбирается необходимое оборудование. С целью уменьшения трудоемкости расчетов целесообразно на начальном этапе исключить из рассмотрения сочетание программно-аппаратных средств АСНИ, заведомо недопустимых по производительности. Для этих вариантов не выполняется хотя бы одно из следующих неравенств: rп(С0) ³ rрт(С0) + R0 (8) МVзсд+Vос+Nц+С0 n0 Tсб £ maxVозу (9) Здесь М - число датчиков в системе; Vзсд и Vос - объем занимаемой ОП выбранными ЗСД и ОС соответственно; Тсб - время сбора данных (задается в техническом задании); Vозу - имеющийся объем ОП в выбранной ЭВМ; n0=[nацп/8], где[ ] означает дополнение до большего целого. Объем занимаемой оперативной памяти ЭВМ в РТ рассчитывается по формуле: Vозу= МVзсд+Vос+Nц+Срт n0 Tсб Также необходимо чтобы объем занимаемой памяти был меньше максимально допустимого объема ОП выбранной ЭВМ:Vозу£ maxVозу. Задачу выбора работоспособного варианта системы сбора и обработки данных по проектированной системе можно было бы решить простым перебором, но такой подход даже в данном случае (ЭВМ-7, интерфейс-3, УСД-4, ОС-3) предполагает проверку 7*3*4*3=252 возможных вариантов решения, что является достаточно трудоемкой задачей. Задача выбора оптимального варианта состава системы относится к классу целочисленных аддитивных задач динамического программирования, решение которых предполагает определенную последовательность выбора функциональных элементов системы [3], учитывающую характер изменения целевой функции при выборе последовательности шагов нахождения работоспособной системы минимальной стоимости (в нашем случае). Подбор начинают с выбора подходящего варианта элемента системы, обладающего большим значением целевой функции (наибольшей стоимостью), после которого переходят к выбору элементов, обладающих наибольшей стоимостью по отношению к оставшимся и т.д.. Шкала изменения стоимостей элементов системы представлена в таблице 8: Таблица 8
До выполнения топологического расчета неизвестной является стоимость системы связи, поэтому выполненный нагрузочный расчет является неокончательным и требует уточняющей проверки после определения стоимости интерфейсов. Также, рекомендуется проверять условие (9) на любом этапе нагрузочного расчета.
Так как для нашего варианта имеется только один алгоритм ЗСД, то можно рассчитать объем ОП занимаемый ЗСД: МVзсд=21×200=4200 байт Также можно рассчитать объем ОП занимаемый циклограммой и регистрируемой измерительной информацией на этапе сбора данных (так как при выборе оборудования они остаются неизменными): Срт×n0×Tсб+Nц=2944×1×50+64=147264 байт Минимальный объем ОП занимаемый ОС: Vос=5×1024=5120 байт Таким образом минимальный требуемый объем ОП: Vозу=МVзсд+Vос+Nц+Cрт×n0×Tсб=4200+5120+147264=156584 байт Vозу > 128 кб=131072 байт Поэтому выбор ЭВМ возможен только между 5-ой и 7-ой машиной, так как их максимальный объем памяти равен 256 кб. Дальнейший подбор устройств КТС рекомендуется проводить в такой последовательности, когда сначала подбираются более дорогостоящие составляющие КТС и ПО: ЭВМ, интерфейс, УСД и ОС. Так как все параметры задержек задаются в методическом пособии для третьей машины, соответствующие параметры для других ЭВМ определяются с помощью коэффициентов пересчета (см. начало нагрузочного расчета). В нашем случае, так как 5-ая ЭВМ дешевле, то целесообразнее выбрать ее. Проверим выполнение условия (7) для 5-ой ЭВМ: Пересчитаем tпо на 5-ю машину: мкс Выберем самое быстродействующее оборудование и ПО: * параллельный интерфейс сек * 3-й вариант УСД сек * 3-й вариант ОС (пересчитаем на 5-ю ЭВМ) сек Так как резерв по нагрузке для выбранных устройств значительно превышает допустимый, то выберем более дешевые и менее быстродействующие устройства. Так как львиная доля стоимости приходится на сеть связи, то желательно значительно снизить стоимость интерфейса. Возьмем самый дешевый 3-й вариант интерфейса, а также более дешевое УСД - 1-й вариант. Проверим выполнение условия (7): tусд=100 мкс tинт=100 мкс Так как резерв больше допустимого, попробуем изменить вариант ОС. Возьмем 2-ую ОС: Пересчитаем параметры ОС на 5-ю ЭВМ: сек сек Так как резерв превышает допустимый, попробуем взять 1-й вариант ОС: Пересчитаем параметры ОС на 5-ю ЭВМ: сек Резерв по нагрузке ЭВМ в рабочей точке обеспечивается, поэтому остановимся на этом варианте ОС, где резерв R=0,1491, что на 32% больше допустимого. Рассчитаем объем ОЗУ необходимый для нашей АСНИ и число блоков памяти по 16 кб=16384 байт: Как указывалось выше МVзсд=4200 байт Nц+Cрт×n0×Tсб=147264 байт Для выбранного варианта ОС: Vос=10 кб=10240 байт Таким образом требуемый объем памяти: Vозу=МVзсд+Vос+Nц+Cрт×n0×Tсб=161704 байт Количество блоков памяти: h= [Vозу / 16 кб]=[161704 / 16384]=[9,87]=10 Таким образом получим следующий состав аппаратно-программного обеспечения: * 1-й вариант УСД tусд=100 мкс * 5-й вариант ЭВМ * 3-й вариант интерфейса (последовательный) tинт=100 мкс * 1-й вариант алгоритма ЗСД tпо=21,8 мкс * 1-ый вариант ОС rп(С)=1-67,2×10-6×С * 10 блоков памяти по 16 кб h=10 Основные величины: Срт=2944 rрт(Срт)=0,6530 rп(Срт)=0,8021 Когда окончательно выбрано оборудование, рассчитываются следующие величины: t - величина средних затрат процессорного времени на однократное выполнение одной задачи. Численно равна тангенсу угла наклона отрезка прямой соединяющей РТ с началом координат. t = rрт / Срт Сs – производительность системы в РТ, является проекцией точки пересечения ПНХ с прямой проходящей через начало координат и РТ. Определяется как корень следующего уравнения: tCs = rп(Cs) Cmax - теоретический предел производительности системы. Сmax = Cs при t®0. Определяется из следующего уравнения: rп(Cmax)=0 Приведенные затраты процессорного времени на диспетчеризацию в РТ: rд(Cрт)=1-rп(Cрт) По полученным данным вычерчивается график ПНХ. При t®0 Сs®Сmax: 1-67,2×10-6×С Решив уравнение получим Сmax=14880 rрт(Срт)=1-0,8021=0,1979 Построим ПНХ (рис.6): Рис. 6 Основные величины и выражения: * Вид ПНХ: rп(С)= 1-67,2×10-6×С * Суммарная частота запуска прикладных задач в РТ: Срт=2944 * Производительность системы: Сs=3747 * Теоритический предел производительности системы: Сmax=20726 * Резерв загрузки ЭВМ в РТ: Rрт=0,1841 * Загрузка процессора в РТ: rрт(Срт)=0,6530 * Максимальная возможная загрузка процессора в РТ: rп(Срт)=0,8021
|