Обсуждение примера. Любое решение в инженерном программировании или в какой-нибудь другой области основывается на некоторых предположениях. В случае СОС решение о закупке пяти процессоров для обеспечения производительности 120 сообщ./с основывалось бы на предположении, что фактические характеристики работы аппаратуры и программ будут достаточно близки к значениям системных параметров, использованных в моделях. В частности, учитывалось бы предположение о значении коэффициента межпроцессорных накладных расходов М.
Допустим, однако, что указанное предположение на практике подтверждается. Какое влияние окажет это на производительность СОС?
Рассмотрим ситуацию, в которой М = 160, а все остальные системные параметры остались прежними. В этом случае из (1.1) получаем
Результаты сравнения с первоначальным примером показаны (см. рис. 1.5).
Таким образом, если бы было закуплено пять процессоров и после включения их в работу обнаружено, что коэффициент межпроцессорных накладных расходов равен 160, а не 80, то была бы получена пятипроцессорная СОС с производительностью 40 сообщ./с. Этот результат был бы не лучше, чем для однопроцессорной СОС и существенно отличался бы от ожидаемой производительности 120 сообщ./с.
Можно получить более полную картину чувствительности функции П (N,S, М, Т) к М, положив N=5, оставив S =1000, Р =200 и Т= 20 и изучив поведение следующей функции:
В рассматриваемом случае пятипроцессорной СОС любое увеличение коэффициента межпроцессорных накладных расходов на x единиц приведет к уменьшению производительности СОС на x сообщ./с.
Рис. 1.5. Производительность СОС для двух значений коэффициента межпроцессорных накладных расходов
Общее обсуждение. В общем случае, если имеется функция П (а, b,..., z) от нескольких параметров, ее чувствительность код-ному из них, например z, в данной точке (а 0, b 0 ,…, z 0) можно определить вычислением производной функции П по z в точке (а 0, b 0 ,…, z 0):
В случае СОС из (1.1) можно получить
Поэтому частная производная функция П по М
Полученное значение представляет собой тангенс угла наклона характеристики чувствительности.
Во многих случаях инженерного программирования вычисление частных производных будет трудным, так как функция П может оказаться весьма сложной. Или может случиться, что эта функция не имеет производных, либо производные не являются непрерывными. В таких случаях лучший способ анализа чувствительности заключается в рассмотрении значений системных параметров вблизитех точек, которые желательно исследовать, вычислении соответствующих значений П и сравнении полученных значений со значениямив исследуемых точках.
Анализ чувствительности чрезвычайно важен для двух главных работ инженерного программирования: анализа осуществимости на исследовательских фазах, отвлеченных от конкретных практических вопросов, и анализа степени риска на фазах планирования, анализа требований и проектирования изделия. Особенно важно исследовать чувствительность производительности к накладным расходам в операционных системах в реальных условиях, характеристикам работы алгоритмов распределения ресурсов, а также характеристикам таких систем искусственного интеллекта, как процессоры естественных языков, систем распознавания образов или эвристического поиска.