Оптимальная производительность

Пример вычислений. Модель производительности (1.1) можно использовать для определе­ния числа процессоров N max, при котором будет достигнута наивысшая производительность СОС. Это можно сделать, используя тот факт, что в точке максимума (см. рис. 1.1) тангенс угла наклона касательной к кривой П (N) равен нулю и что он задается производной функции П (N) по N при фиксированных значениях остальных параметров. Переписывая (1.1) в форме

(1.2)

можно легко вычислить требуемую производную:

(1.3)

Если определить N max как точку, в которой тангенс угла наклона касательной равен нулю

, (1.4)

то, подставив выражение для из (1.3) в (1.4)

и разрешив полученное уравнение относительно N max, получим

(1.5)

Для рассматриваемого примера СОС, когда S = 1000, Р = 200и М = 80, оптимальное число про­цессоров

N max =(1000—200+80)/160 =5,5.

Поскольку на практике можно работать только с целым числом процессоров, придется до­вольствоваться системой из 5 или 6 процессоров с П (N) = = 120 сообщ./с.

Одним очень полезным следствием знания точного значения N max является возможность оце­нить ухудшение производительности из-за того, что нельзя на практике реализовать абсо­лютно оптимальное решение. В рассмотренном случае

П (5,5) = 5,5[1000—200—80(4,5)]/20= 121 сообщ./с,

т.е. убеждаемся, что ухудшение производительности относительно невелико.

Общее обсуждение. Обращение производной в нуль является необходимым, но не достаточ­ным условием нахождения абсолютно максимального или минимального значения функции, или оптимального значения. Ниже рассматриваются несколько ситуаций, в которых произ­водная обращается в нуль и не в точках абсолютного минимума и максимума, или оптимума.

1. Несколько максимумов или (и) минимумов. В точке x0 на рис.1.2 производная обраща­ется в нуль, и функция имеет в этой точке локальный максимум, но x0 не является оп­тималь­ной точкой, точкой глобального максимума. С подобной ситуацией можно стал­киваться до­вольно часто. Таким образом, нахождение оптимальной точки связано с иссле­дованием всех точек, в

 
 

которых производная обращается в нуль.

Рис. 1.2

2. Точки перегиба и седловые точки. На графике в левой части (см. рис. 1.3) точка х = 0 яв­ляется точ­кой перегиба функции П (х)=х3. Производная этой функции dП/dх=Зх2 обраща­ется в нуль при х = 0, однако функция в этой точке не имеет ни максимума, ни минимума.

В правой части (см. рис. 1.3) показана седловая точка. В седловой точке производная функции равна нулю, однако, в зависимости от ограничений, накладываемых на аргументы, в этой точке может достигаться как максимум, так и минимум функции.

       
   
 

Рис. 1.3

Наиболее часто точки перегиба или седловые точки встречают­ся при анализе очень слож­ных функций. Лучший способ исследо­вания таких точек состоит в рассмотрении второй производной: если она равна нулю (а третья производная не равна нулю), то найдена точка перегиба; если она положительна в одном направ­лении и отрицательна в другом, то найдена седловая точка; если она отрицательна во всех направлениях, то найдена точка макси­мума; если она положительна во всех направлениях, то точка минимума.

Все рассуждения верны при существовании производных функ­ции. В инженерном про­граммировании это предположение часто не выполняется. Так, например, в тарифах на пере­дачу данных или использование ЭВМ нередко имеются разрывы в расценках, производи­тельность цифровых систем обычно выражается дискрет­ными значениями. Поэтому необхо­димо также убедиться, что поиск максимума не ограничен областью существования произ­водной, поскольку может существовать максимум, показанный на (см. рис. 1.4)

Оптимальные решения в инженерном программировании наибо­лее часто используются на фазах детального проектирования и кодирования. На более ранних фазах ЖЦПО можно найти предпочтительное решение, не являющееся оптимальным по производительности.

 
 

Как будет видно из последующего изложения, существует целый ряд соображений сте­пень риска, производственные ограничения, психология и профессиональный рост пользова­телей, сопровождаемость, которые могут заставить выбрать решение, не обеспечивающее опти­мальной производительности. Однако даже в таких ситуациях, как правило, важно оп­реде­лить оптимальную точку и оптимальное значение, так как это позволяет оценить объем уси­лий, которые стоит затратить на улучшение неоптимального решения.

Рис. 1.4


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: