
- •Теоретичні Аспекти на Межі Продуктивності і Толерантність Дефекту в Паралельному Обчисленні
- •1 Вступ
- •1.1 Дослідницькі Питання
- •1.2 Дослідницька Методологія
- •1.3 Дослідницьке Сприяння
- •2 Багатопроцесорне Планування (Частина I)
- •2.1 Класифікація планування проблем
- •2.2 Межі і Складність на Багатопроцесорному Плануванні
- •3 Баланс Навантаження і толерантність дефекту (Частина 2)
- •3.1 Модель Дефекту
- •3.2 Надійність проти Доступності
- •4 Підсумок Статей
- •4.1 Частина 1
- •4,2 Частина 2
- •5 Робота в майбутньому.
- •1 Вступ
- •2 Попередні результати
- •3 Визначення і основні результати
- •3.1 Позначення
- •3.2 Визначення
- •3.3 Основні результати і план статті
- •4 Перетворення програми р в нову програму що містить вузьку і широку частину.
- •4.1 Програма р’ як м-ідентична копія програми р
- •4.2 Продовження процесів
- •4.3 Від чотирьох копій в три нові програми
- •4.4 Перетворення програмP в програму з «товстою» і «тонкою» частинами
- •5 Товста частина
- •5.1 Перетворення p в q
- •5.2 Перетворення q в q'
- •5.3 Властивості розміщення товстої частини
- •5.4 Обчислення товстої частини
- •6 Тонка частина
- •7 Об'єднання товстих і тонких частин
- •7.1 Знахідка оптимального розміщення, що користується класами розміщення
- •7.2 Гілково-граничний алгоритм
- •8 Твердження
- •9 Обговорення
- •10 Висновки
- •Стаття 2 Стаття 2 «Максимальна Вигода Збільшення Числа пріоритетних Переривань у Багатопроцесорному Плануванні»
- •Введення до роботи
- •2. Формування проблем, позначення і основні результати.
- •2.1. Формулювання завдання
- •2.2. Позначення і терміни
- •(Білі прямокутники показують неперервні роботи)
- •2.3. Основний результат
- •3. Докази
- •3.1. Методи доведення
- •3.2. Перевищення програми p'
- •4. Висновки
- •5. Обговорення
- •6. Список літератури
- •Стаття III Використання лінійок Голомбо для оптимальних відновлюючих системах в розподілених обчисленнях толерантних до помилок
- •1 Вступ
- •2 Формулювання задачі
- •3 Загальна нижчня межа b
- •4. Ощадні Схеми Відновлення
- •5 Лінійка Голомбо
- •6. Висновок
- •7. Список літератури
- •8. Додаток: Оптимальні Послідовності
- •1 Вступ
- •1. Формулювання задачі
- •Попередня робота
- •Ощадливі Схеми Відновлення і Схеми Відновлення Голомбо
- •Модульна Схема Відновлення
- •Схеми Голомбо проти схеми модуля
- •8. Висновки
- •8. Список літератури
- •1 Вступ
- •2. Проблемне формулювання
- •3. Попереднє дослідження
- •4. Схеми відновлення
- •4.1. Нижчий mv межі
- •4.2. Послідовність s
- •4.3. Приклад послідовності
- •4.4. Регулярна схема відновлення
- •4.5. Приклад схеми відновлення, заснованої на послідовності
- •5. Схеми відновлення чотирикутника з непаралельними сторонами проти схеми відновлення Голомбо
- •6. Обговорення і укладення
- •7. Список літератури
- •8. Додаток
- •1 Вступ
- •2. Проблемна область
- •3. Попереднє дослідження
- •4. Проблемне формулювання
- •4.1. Найгірша кількість справ, що розглядаються у визначений період
- •4.2. Послідовне балансування навантаження
- •4.3. Оптимальні схеми відновлення
- •5. Головні результати
- •5.1. Комп'ютерні ланцюги
- •5.2. Приклад послідовності
- •5.3. Нормальні послідовності
- •5.4. Приклади: Голомбо, Ощадливий і послідовності модуля
- •5.5. Наваньаження компенсації ланцюгами
- •6. Напруженість mv
- •6.1. Алгоритм
- •7. Обговорення і укладення
- •8. Список літератури
7.2 Гілково-граничний алгоритм
Алгоритм для виявлення оптимального розміщення - класичний Гілково-граничний
алгоритм [1]. Ми починаємо з повністю відокремленого розміщення (Мал. 15(b)). Ми переміщаємо один
процесор в загальну частину, а отже створюємо новий підклас відокремлених розміщень (Мал. 15(c))., який ми потім мінімізуємо над цими відокремленими розміщеннями. Припустимо, що в приклад Мал. 15c клас з 5 процесорами в загальному розміщенні є мінімальним. Новий підклас показується в Мал. 15(d). Усі відокремлені розміщення дають вищі (чи рівні) значення, ніж відокремлене розміщення, яке є батьківським до нового класу. Класи організовані в деревовидній структурі. Мінімум зараз обчислюється над усім листки в дереві, у тому числі листки на переходах, які заздалегідь були розгорнуті.
Якщо ми припускаємо, що класи в Мал. 15(e) і (f) дають мінімальні значення, ми досягли оптимального розміщення. Обчислюючи клас, ми користуємося загальним розміщенням, складеним з товщиною розміщення як введення для функції g(Athick) і, r(Athin, t) де - Athick загальне розміщення конкатенувало з товстим розміщенням і - загальне розміщення складено з тонким розміщенням Athin. Додаючи результати (зважено z)двох функцій, ми набуваємо значення цього листка (g(Athick)+ zr(Athin, t)) . Практичне випробування показало, що багато різних видів розміщень, можливо, оптимальні залежно від цінностей n, k, q, t і z. Це знаходиться в контрасті з попередніми застосуваннями , що представляється в [9,10,11], (подивіться частину 9).
8 Твердження
Результати в цій статті засновані на теоретичному доказі, що веде до програми для яких коефіцієнт Ts(P, k, t)⁄ Td(P,q) максимальний. Ця частина результату не може бути перевірена на правильність
відколи неможливо генерувати усі програми а потім вимірювати їх часи завершення і приймають максимальний коефіцієнт за усіх них. Коректність цієї частини результат що заснований на доказах.
В любому випадку це не можливо побачити , якщо програма, виявляється, перевищенням
(погано працюючої програми) для параметрів n, q, і z дійсно призводить до значення близько до H(n, k, q, t, z)коли виконується в реальному багатопроцесорному середовищі. Ми зробили ряд перевірок на багатопроцесорних середовищах Сан/Solaris. Ми уперше перевіряли товсті програми, визначені трьома параметрами: число потоків (n), число активні потоки в кожному відрізку (q) часу і кількості роботи, що виконується в кожному відрізку часу (w); w означає число повторень над вектором довжини 1024 (кожен таке повторення іде приблизно 0.1 ms)., Користуючись Сан-ентерпрайз 4000, з 8 процесорами, ці програми виконуються, користуючись двома алгоритмами планування. Спершу ми використовували стандартний Solaris плануючи, де ніякі потоки не пов'язані до процесорів, а потім число потоків i є обмежене процесора ми (i мод k). Це означає, що, якщо число процесорів (k) – вісім і число потоків (n) складає 20, потім потоки 0, 8 і 16 пов'язане до процесорами рівне нулю. Як описано в частині 5, ми знаємо, що це оптимальний шлях зв'язати потоки. Коефіцієнт часу завершення, користуючись межею, панування на k процесорах, у порівнянні до непов’язаного пданування на q процесорах означають - h(n, k, q, w), що, для програми з n
потоками, потоки q дійсного стану в кожному слоті, і довжина слота w.
Ми розглядаємо випадки, коли q = k, 1 ≤ k ≤ 8, k ≤ n ≤ 20 і w = 100, 1000 і 10000 (рис. 16)., Ці значення h(n, q, k, w) порівнюються з теоретичними межами g(n,k,q,t=0,z) в рис. 16. Таблиці показують, що, коли w = 1000, n = 18 і k = q = 8, час завершення, користуючись межею, планвання, - 1.93 разів час завершення
користування стандартним вільним плануванням Solaris. таблиці також показують, що h(n, k, k, w) ніколи
не перевищує H(n, k, k, t=0, z). Тобто, виміри вказують, що H(n, k, k, t=0, z) є дійсно дійсна верхня межа. Коли w зростання, h(n, k, k, w) прибуває ближче в H(n, k, k, t=0, z), і вибираючи досить великий w, який ми можемо отримати довільно близько до H(n, k, k, t=0, z). Тому H(n, k, k, t=0, z) - оптимальна верхня межа, коли великий w, тобто H(n, k, k, t=0, z) є оптимальною верхнььою межею, коли маленький z (отже, скорочуючи дію тонкої частини).
Ми також зробили виміри для тонких програм. Тобто, програми, що полягають у ланцюжку потоків, які синхронізуются. Випробування розглядало випадок, де n = 8 і довжина ланцюжка синхронізації складає 100000. Ланцюжок виконувався на двох інший середовища: Сан-Ентерпрайз 4000, з вісьмома процесорами (середня затримка синхронізації нуля в нашій моделі) і випадку, коли вісім програм виконуються на восьми ідентичних комп'ютерах з'єднаних мережею. На SMP ми здійснювали синхронізації з семафорами і в розподілених системах, які ми послали однобайтові повідомлення UDP між комп'ютерами.
Ці виміри, показують, що коефіцієнт між тривалістю виконання поширюється у середовищі і SMP тривалість виконання складає 1/200, тобто 0.5%. У нашій моделі ми припускаємо, що цей коефіцієнт нульовий (відколи ми припускаємо, що SMP тривалість виконання цієї частини нульова)., Це означає, що наша модель має помилку 0.5% для тонкої частини програми порівнюючи ці два середовища. Відколи тонка частина не бере нульовий час, щоб виконуватися на SMP, межа все ще дійсна але не зовсім оптимальна, тобто в цьому випадку там є різниця 0.5%. Якщо час синхронізації в розподіленій системі зростає (тобто, якщо t росте), різниця стає меншою. Ми можемо зробити два висновки від тверджень:
• Спершу, межа, здається, дійсна для усіх програм. Це означає, що немає такої програми P, для якої коефіцієнт Ts(P, k, t)⁄ Td(P,q) перевищує межу.
• По-друге, межа оптимальна для грубих подрібнених програм. Тому, у товстій подрібнений програми P (тобто програми з маленький z), раціон Ts(P, k, t)⁄ Td(P,q) дорівнює межі. Межа також оптимальна для систем з дуже довгим часом (тобто для великого t) очікування синхронізації.
Тому, модель правильна для товстої частини (відколи ми можемо зробити цю частину довільно
товстою), і різниця для тонкої частини невелика для реалістичних врегулювань. Наші твердження обмежені середовищем Сан/Solaris, але ми вважаємо, що ці два укладення також триматимуть за інші середовища.