Анализ эффективности распределенных САПР

В.М. Глушань, Р.В. Иванько АНАЛИЗ ЭФФЕКТИВНОСТИ РАСПРЕДЕЛЕННЫХ САПР

Введение. Под распределенной САПР мы будем понимать такую, в решении задач проектирования которой используется не отдельный компьютер или рабочая станция, а некоторое их количество - клиентов, объединенных локальной или корпоративной, или региональной, или, возможно глобальной, сетью [1,2]. Поскольку построением и использованием распределенных САПР мы хотим добиться уменьшения времени проектирования по сравнению с одним компьютером или за тоже самое время увеличить сложность проектируемой схемы (степень интеграции), то возникают вопросы: 1) Как будет уменьшаться время проектирования с увеличением числа компьютеров - клиентов сети, задействованных для решения задачи проектирования? 2) Будет ли время проектирования уменьшаться пропорционально числу этих компьютеров?

При создании распределенных САПР возникает проблема, подобная той, которая встала перед исследователями многопроцессорных систем (МПС). Минским была высказана гипотеза о том что, быстродействие р-процессорной системы в зависимости от р растет как ^2 р [3]. Это обескураживающее обстоятельство

должно было означать, что не имеет смысла вообще создавать МПС, особенно с большим числом процессоров.

В распределенных САПР роль отдельного процессора выполняет соответствующий компьютер-клиент сети. В [4] предлагается способ распределения задач автоматизированного конструкторского проектирования между хост-компьютером ( ) - , -четов времени решения трех основных задач конструкторского этапа проектирования (компоновка, размещение и трассировка). по соотношениям, полученным путем логических рассуждений.

Из результатов указанной работы следует, что с увеличением числа компьютеров сети время проектирования линейно уменьшается. Более глубокий анализ , , , -ное число компьютеров-клиентов, при котором время проектирования будет ми.

Временная сложность задач конструкторского проектирования на рас. , -

фективности будем использовать время решения задачи. Однако абсолютное время решения той или иной задачи не является объективной оценкой ее временной сложности, т.к. она зависит как от быстродействия реализующей алгоритм задачи ЭВМ, так и от искусства программиста. Поэтому, как это принято в теории алго-, , шагов, за которое алгоритм решает индивидуальную задачу [5]. Эту характеристи-

( ).

, -

туитивном или строгом его понимании, а с организацией процесса проектирования. Поэтому время процесса проектирования на распределенной САПР, выраженное в шагах, по аналогии с ВСА будем называть временной сложностью процесса

( ). , -

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

произведение числа шагов на время машинной (компьютерной) реализации одного

шага, а в общем случае, - как время компьютерной реализации шага соответст-.

В соответствии с концепцией, предложенной в [4], ВСПП на сетевой САПР будет содержать пять составляющих:

о/т=(/т+о,мт *п+

+^Р*

/е/

где

N - количество элементов, например микросхем, в исходной схеме, п - количество компьютеров в сети, I - количество алгоритмов, используемых в проектировании;

Оды (/(М))- временная сложность декомпозиции задачи проектирования, т.е

распределения задания по компьютерам сети;

О»(/(N))* п - временная сложность прямой пересылки информации после

декомпозиции задачи с сервера на все компьютеры сети;

X О (/ (N))- временная сложность всех I алгоритмов, используемых каж-

/е/

дым компьютером сети при решении задачи проектирования (например, алгоритм

);

Оо5» (/ (N ))* п - временная сложность обратной передачи информации со всех

компьютеров на сервер;

О (/(М))- временная сложность объединения сервером всех решений с каждого компьютера в единое целое.

В выражении (1) третью составляющую, т.е временную сложность всех I ал, -сти обработки информации ооб (/(М)). Тогда выражение примет вид:

О

+о„ф (/(N)) + о,.„ (/(N)) * п + оа,р (/(N))'

Проанализируем каждую составляющую выражения (2) и представим ее в зависимости от числа элементов N в проектируемой схеме и от числа п компьютеров .

, , -

рой определяется функцией о()ас( / (N)), представляет собой не что иное, как тра-

диционную задачу компоновки. Однако в данном случае, она имеет определенные отличия от традиционной компоновки. Эти отличия состоят в том, что число частей, на которые нужно разбить схему, задается, как правило, заранее. В распределенной САПР число частей определяется числом свободных компьютеров в сети. , -

тельно. Это может быть в том случае, если проектируется относительно небольшая схема, и тогда сразу переходят к решению задач размещения и трассировки. В сетевом же варианте САПР ее надо решать всегда.

Для выяснения вида функции о()„ (/ (N)) будем считать, что для этой цели используется самый быстрый, хотя и посредственный, последовательный алгоритм , -

ментов. В таком случае каждый очередной выбираемый элемент из множества N на каждом шаге алгоритма декомпозиции (компоновки) получает свое назначение,

. . , -

вующий компьютер сети. Тогда о^Д/(N)) = фЫ, где ф - коэффициент, определяющий время назначения одного элемента.

Если для задания исходной схемы используется матрица смежности

, -

мента необходимо «просмотреть» и проанализировать всю строку МС, соответствующую данному элементу. А поскольку «дайна» любой строки МС равна N то в худшем случае ф=К Таким образом,

ол/

Если вместо МС графа использовать другой способ задания исходной схемы,

( ), омк( / (N)), уменьшится примерно в два раза, но это особого влияния на выражение не окажет.

Определим вторую составляющую выражения (2), о„ п (/(N)) * п . Очевидно, что на каждый компьютер нужно передавать подматрицы смежности (связно) . -во, что их число, назначаемое в каждый компьютер, будет дробным, то нужно ввести в исходную схему дополнительное число фиктивных элементов, не связанных ни с какими другими, чтобы на каждый компьютер приходилось одинаковое и целое количество элементов. Таким образом, на каждый компьютер нужно передавать подматрицы смежности размерностью N. * ^ ^ С учетом того, что ин-

п п \п)

формацию на компьютеры сети можно передавать только последовательно, то

о Л/

V п ^ п

Определим третью составляющую выражения (2), ^ (/(N)), исходя из сле-

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

о

Поскольку каждый компьютер сети будет обрабатывать информацию об (Ы/п) , (5) :

оо6р

В общем случае, ВСА размещения и трассировки, которая определяется пока-к, , , -, к .

Теперь определим четвертую составляющую оыйп(/(Ы))*п выражения (2).

Для установления этой зависимости приведем следующие соображения. Результатом решения задачи каждым отдельным компьютером будет совокупность трасс на

( ),

соответствующих элементов. ДРП будет представлять совокупность клеток, каждая из которых может быть частицей какой-то трассы. Причем клетки ДРП, ис-

пользуемого в задаче трассировки, будут иметь значительно меньшие размеры, чем в задачах компоновки и размещения [6].

Поскольку до сих пор каждую составляющую выражения (2) мы определяли через параметры п и N то это необходимо сделать и для Оыйп(/(N)) * п, т.е. надо

подсчитать число клеток ДРП, выраженное через п и N.

Проведя соответствующий анализ, можно получить

0,„

где Бэ - число клеток, занимаемых одним элементом.

Наконец, пятую составляющую О (/(N)) можно определить следующим

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

п,

.

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

,

Ода (/(N)) = пк.

Если учесть, что 2БЭ величина постоянная, то, опуская ее, и объединяя все соотношения (3), (4), (6-8), получим выражение временной сложности процесса проектирования, зависящее только от числа элементов N исходной схемы и числа компьютеров п, используемых в сети для проектирования:

О

п \п )

Используя выражение (9), построим и проанализируем графики этой зависимости при различных значениях N п и к. При построении графиков удобно использовать не абсолютные значения числа компьютеров п, а относительные - как некоторую часть от числа элементов N. Например, можно рассматривать ряд значений п=0,001; 0,005; 0,01;...,0,95; N. Эти зависимости приведены на рис.1-7.

1 10 100 1 103 1-104

Рис.1. N=10000, к=2

Рис.2. N=10000, к=2,5

1 10

1 10

Рис.3. N=10000, к=3

Рис. 4. N=10000, к=4

/

-Л-

1 -10 1 -10" п

Рис.5. N=20000, к=2,5

Рис. 6. N=20000, к=3

Рис. 7. N=20000, к=3

Анализ приведенных графиков позволяет сделать следующие заключения:

♦ Абсолютная величина ВСПП с ув сличением ВСА используемых в про-

( к) .

♦ Увеличение размерности задачи (величины N ведет к увеличению

, , к п.

♦ Минимальное значение ВСПП сдвигается в сторону больших значений п при увеличении к практически при всех N.

♦ При больших значениях N значения ВСПП практически линейно убы-

п, , -

растает (рис.3,4, 6,7).

1 10

1 -10

1 10

1 10

100

1 10

п

♦ Во многих случаях наблюдается «зона безразличия», когда при увеличении n ВСПП остается практически постоянной (см. рис.2-4), после чего ВСПП резко возрастает.

Выводы

1. При построении распределенных САПР следует иметь в виду, что число

n ,

,

этого значения приводит к увеличению ВСПП.

2. , . .

элементов N целесообразно использовать и большее число компьютеров , .

3. Для более полного представления всех возможных результатов проектирования с помощью распределенных САПР необходимо: провести более тщательное исследование полученных зависимостей, расширив диапазон изменения параметров n, N и k; учесть в выражении (2) фактор разделения передаваемой информации на фреймы и «пристыковку» к каждому из них некоторой служебной информации; согласовать полученные результаты оптимального числа компьютеров n с качеством проектирования в зависимости от степени декомпозиции общей задачи.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК.

1. Глушань В. М., Будников Е. В. Распределенная сетевая обработка при решении задач конструкторского проектирования ЭВА / Известия ТРТУ. Тематический выпуск «Интеллектуальные САПР». - Таганрог: Изд-во ТРТУ, №3, 1997. - С. 42-47.

2. Адамов А. 3. Разработка и исследование распределенных Web-ориентированных архитектур САПР: Дис. канд. техн. наук (рук. Глушань В.М.) - Таганрог, 2003. - 195 с.

3. Minski M., S. Papert: On same associative, parallel and analog computations; In: Associative Information Techniques, edit E. T. Jacobs Elsevier, New York, 1971.

4. Глуш ань B.M., Далекин А.В., Иванько Р.В., Косов ИМ. Автоматизированное конструкторское проектирование радиоэлектронных схем на локальных вычислительных сетях. Известия ТРТУ. Тематический вып. «Интеллектуальные САПР». - Таганрог: Изд-во ТРТУ, 2005, №3(47). - С. 64-69.

5. ., . : . .

- М.: Мир, 1982. - 416 с.

6. . ., . ., . .

. - .: « », 1990. - 216 .

С.В. Баринов, В.М. Курейчик, Л.А. Гладков

КОМПОНОВКА МЭС НА ОСНОВЕ ИТЕРАЦИОННОЙ КЛАСТЕРИЗАЦИИ С УЧЕТОМ ВРЕМЕННЫХ ЗАДЕРЖЕК*

. -

ные части называется процесс распределения элементов низшего конструктивного уровня в высший в соответствии с заданными критериями [1]. Такими критериями : , -. -

.

* Работа выполнена при поддержке РФФИ (грант №06-01-00272) 120