Т Коротєєва - Дослідження ефективності застосування net технології для розпаралелювання трасування нвіс - страница 1

Страницы:
1 

УДК 621.3.049.77 Т. Коротєєва

Національний університет "Львівська політехніка", кафедра програмного забезпечення

ДОСЛІДЖЕННЯ ЕФЕКТИВНОСТІ ЗАСТОСУВАННЯ .NET ТЕХНОЛОГІЇ ДЛЯ РОЗПАРАЛЕЛЮВАННЯ ТРАСУВАННЯ НВІС

©Коротєєва Т., 2008

Розглянуто стратегії розпаралелювання трасування НВІС та описано розроблену засобами технології .NET підсистему. Досліджено ефективність результатів тестування.

The system for parallel calculations FPGA routing with use. NET technology is considered.Testing results was analysis.

1. Вступ

В основу трасування НВІС [1] покладено багаторазове розв'язування однотипних задач, що створює нові можливості для застосування розпаралелювання обчислень. Одну із можливих стратегій розпаралелювання процесу трасування інтегральних схем з використанням декількох комп'ютерів розглянуто у [2].

Конструктив розбивається на n суміжних областей. У кожній області визначається множина

незалежних ланцюгів {iNL}, i=1,n, яка реалізується iкомп'ютером (рис. 1), після чого коригуються ресурси моделі. Потім будуються ланцюги, що залишились у межах всього

n

конструктива {KL}\U {iNL}.

Сервер. Поділ конструктиву на п областей.

Комп'ютер №1. Комп'ютер №2. Комп'ютер №n.

Формування та Формування та ...        Формування та

реалізація реалізація реалізація

множини {1NL}. множини {2NL}. множини {nNL}

Сервер Корекція ресурсів. Реалізація підмножини

п

{KL}\U {iNL}.

і=1

Рис. 1. Структурна схема розпаралелювання процесу під час розбиття конструктива на підобласті

2. Опис програмного забезпечення

Цей програмний продукт створений для трасування надвеликих інтегральних схем (НВІС) з використанням процесу розпаралелювання трасування. Програма розділена на три частини, які виконують функції клієнта, сервера та безпосередньо трасування (рис. 2) [3].

Програми трасування схеми

Рис. 2. Загальна схема підсистеми трасування

2.1. Клієнтська програма

Клієнтська програма призначена для взаємодії з користувачем та виконує такі функції:

• створення файлів схеми;

• редагування файлів схеми;

• видалення файлів схеми;

• скерування даних на сервер;

Існує два режими роботи програми-клієнта:

1. Трасування схем малої розмірності (до 5 тис. елементів).

2. Трасування схем великої розмірності (до 100 тис. елементів).

У першому режимі працюють всі описані функції. Цей режим відображає інформацію про схему в табличних даних, дає змогу їх редагувати. Для відображення структури і даних схеми використовується технологія .NET. Дані конвертуються з ADO.NET у текстову інформацію. Оскільки ця технологія потребує багато ресурсів, то створення схем більшої розмірності потребує потужніших комп'ютерів (процесори з тактовою частотою понад 3000 Гц і оперативною пам'яттю понад 1 гігабайт) і більше часу для завантаження схеми.

У другому режимі можливе трасування схем великої розмірності. Цей режим не дає змоги відображати дані в таблицях і редагувати дані з програми. Отже, можна не завантажувати дані в таблиці, а формувати інформацію, яка зберігатиметься в текстовому форматі і під час трасування одразу передаватиметься на сервер.

Для взаємодії користувача з програмою існує базове меню (рис. 3). У пункті меню «Файл» є такі команди: Створити, Відкрити, Зберегти, Видалити, Вихід.

1

Рис. 3. Вікно базового меню

Пункт «Редагування» містить такі команди: Додати елемент, Видалити елемент, Додати зв'язок, Видалити зв'язок (рис. 4).

ЗІ Клієнт

1 Редагування 1

Про програму

Зага Ім'я с

Дадати елемент Видалити елемент

1оризон Веритка

 

Додати зв'язок Видалити зв'язок

 

 

 

 

1 Еле

 

 

Рис. 4. Вікно пункту «Редагування» З пункту «Операції» можна вибрати тип схеми та виконати команду Трасувати схему (рис.5).

Ж Клієнт

Файл Редагування г~ Загальна інформації Ім'я схеми:

Про програму

Операції

Трасувати схему

Горизонтальний р Вериткальний роз Рис.5. Вікно пункту «Операції»

При цьому дані відсилаються на сервер для подальшого опрацювання. Результати трасування відображаються у верхньому правому куті загальної схеми. Також з цього пункту викликається вікно для налаштування мережі (рис. 6).

Рис. 6. Вікно налаштування мережі

Згори головного вікна можна побачити загальну інформацію про схему. Тут розміщується інформація про назву схеми, її розміри, кількість доріжок в каналі ПЛМ. Нижче відображено інформацію про елементи схеми. Елемент схеми описується позицією і задіяними контактами. Максимальна кількість контактів, які можуть виходити з елементу, дорівнює восьми. За замовчуванням значення встановлене як 0. Якщо від даного контакту відходить зв'язок, то значення контакту встановлюється як 1. Нижче наведено інформацію про зв'язки схеми. Зв'язок описується ідентифікатором цілого типу, координати елементу, з якого виходить зв' язок, координати елементу, до якого цей зв' язок підходить, статус зв' язку. За замовчуванням статус встановлений як 0. Це означає, що шлях цього зв' язку потрібно трасувати для того, щоб мінімізувати довжину з' єднання. Після трасування цього зв'язку статус встановлюється як 1. Відображення шляху зв'язку на схемі показано в таблиці під назвою "Шляхи".

При натисканні пункту головного меню "Створити" з'являється нове діалогове вікно, в якому потрібно вказати параметри для створення нової схеми (рис. 7).

Рис. 7. Вікно для створення нової схеми

Натисканням пункту меню "Відкрити" відображається діалогове вікно, в якому можна вибрати відповідний файл схеми. При натисканні пункту меню "Зберегти" відкривається діалогове вікно для збереження даних схеми у файл. При натисканні пункту меню "Додати елемент" з' являється вікно, в якому можна додати новий елемент або видалити елемент (рис. 8).

Рис. 8. Вікно для додавання (видалення) елементів

При натисканні пункту меню "Додати зв'язок", "Видалити зв'язок" з'являється вікно, в якому можна додати, видалити зв' язок (рис. 9).

Рис. 9. Вікно для додавання (видалення) зв 'язків

2.2. Серверна програма

Серверна програма складається з одного головного вікна. У цьому вікні розташовано три кнопки. При натисканні кнопки «Старт» розпочинається робота сервера. Для того, щоб завершити роботу сервера, необхідно натиснути кнопку «Стоп». Для налаштування сервера необхідно натиснути кнопку «Опції» та ввести IP адресу і порт прослуховування сервера (рис. 10).

Рис. 10. Вікно для налаштування параметрів мережі

Окрім трьох кнопок на формі розміщено компоненту для відображення інформації про стан програми. На серверній програмі запрограмовано алгоритми розпаралелювання процесу трасу­вання. Для взаємодії з програмою-клієнтом і програмами трасування в серверній програмі створено два об' єкти для прослуховування мережі, які діють на різних портах. Один отримує інформацію від програми клієнта. Проаналізувавши, передає цю інформацію для створення відповідних об'єктів, які відображають структуру і дані схеми. Для цього застосовуються класи конвертації текстової інформації в об' єкти класів. Далі схема розбивається на суміжні підобласті, кількість яких відповідає кількості наявних у мережі комп'ютерів. Об'єкти перетворюють на текстову інформа­цію. Другий об' єкт пересилає ці дані на програми, які займаються трасуванням. Програми трасування після трасування схеми відсилають дані на сервер. Сервер аналізує ці дані, конвертує об'єкти схеми в текстову інформацію і за допомогою першого об'єкта відсилає дані до програми клієнта. При цьому фіксується загальний час трасування схеми.

Ще однією особливістю серверної програми є виконання процесів в потоках. Завдяки цьому програма не припиняє відповідати на дії користувача під час процесу трасування. Потоки діють паралельно, що значно зменшує час трасування схеми. Блок-схему роботи сервера наведено на рис. 11.

Рис. 11. Блок-схема роботи сервера

2.3. Програма трасування схеми

Програма трасування схеми складається з одного головного вікна. У вікні розташовані три кнопки і компонента для відображення текстової інформації. При натисканні кнопки "Розпочати роботу" програма трасування пробує під' єднатися до сервера і прослуховує відповідний порт. Дані, які надходять від сервера, аналізуються, користувачу відображається інформація про стан програми трасування. Оскільки дані програма трасування отримує в текстовому форматі, їх потрібно перевести у відповідні об'єкти, які відображатимуть структуру і дані схеми. Після створення об' єктів розпочинається трасування схеми. Як тільки завершиться процес трасування схеми, дані знову перетворюються на текстовий формат і пересилаються на сервер. При натисканні кнопки "Завершити роботу" розривається з' єднання з сервером, і програма трасування завершує свою роботу. Для взаємодій з сервером потрібно налаштувати програму для передачі даних мережею. Для цього через кнопку «Опції» потрібно викликати вікно налаштування IP адреси і налаштувати ІР адресу і порт прослуховування.

3. Результати досліджень

Дослідження проводили на комп'ютерах з різними характеристиками. Програма-клієнт і програма-сервер розміщувались на комп'ютерах з 356 Мб оперативної пам'яті. Програма трасування -на комп'ютерах з 256 Мб оперативної пам'яті. Отримані дані наведено у табл. 1. Три комп'ютери, на яких проводилось трасування, мали по 256 Мб оперативної пам'яті. Час наведено у хвилинах.

Таблиця 1

Розмір схеми (кількість елементів)

Час виконання на одному комп'ютері

Час виконання на трі комп'ютерах

>ох

1

10 000

1,52

0,4

 

2

10 000

1-5

0,45

 

3

10 000

1,55

0,44

 

4

20 000

3,28

1,3

 

5

ЗО 000

5,3

2,1

 

6

5 000

1,06

0,16

 

Після цього було проведено дослідження на комп'ютері, який мав 512 Мб оперативної пам'яті. На цьому комп'ютері була встановлена програма, яка трасує схеми. Було проведено трасування схеми за допомогою трьох комп'ютерів трасування з такими характеристиками:

• перший - оперативна пам'ять 256 Мб;

• другий - оперативна пам'ять 512 Мб;

третій - оперативна пам' ять 256 Мб. Результати відображено у табл. 2.

Таблиця 2

 

Розмір схеми (кількість елементів)

Час виконання на одному комп'ютері

Час виконання на трьох комп'ютерах

 

1

10 000

1,2

0,4

 

2

ЗО 000

4,16

1,4

 

3

50 000

7,02

2,1

 

Результати тестів показали доцільність використання системи розпаралелювання трасування схем. Основний виграш - це час трасування, який при застосуванні розпаралелювання покращується майже втричі.

Висновки

Задача трасування НВІС розв'язується розпаралелюванням обчислень. Було запропоновано стратегії розпаралелювання обчислень у випадку використання n процесорної системи. Детально описано розроблену підсистему, яка вирішує поставлену проблему засобами NET.технології. Наведені практичні результати трасування ПЛМ дозводили покращити час здійснення з'єднань майже втричі.

1. Мельник Р.А., Коротєєва Т.О. Стратегії та алгоритми макротрасування ПЛМ//Вісник Нац. ун-ту "Львівська політехніка" "Комп'ютерні системи проектування. Теорія і практика". -2000. -№ 398. - С. 129-133. 2. Коротєєва Т.О. Розпаралелювання трасування через глобальну комп'ютерну мережу // Вісник Нац. ун-ту "Львівська політехніка" "Комп 'ютерні системи проектування. Теорія і практика". - 2004. - № 522. -С. 27-30. 3. Коротєєва Т.О., Рибчак О.М. Підсистема розпаралелювання трасування ПЛМ засобами технології .NET // Proceedings of the International Conference on Computer Science and Information Technologies, Lviv, Ukraine, 2007. - P. 368-371.

Страницы:
1 


Похожие статьи

Т Коротєєва - Дослідження ефективності застосування net технології для розпаралелювання трасування нвіс

Т Коротєєва - Розроблення ефективного формату для сумісного використання з lsb-методом стеганографічного кодування у bmp-контейнери