- •Теоретичні Аспекти на Межі Продуктивності і Толерантність Дефекту в Паралельному Обчисленні
- •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. Список літератури
4.3 Від чотирьох копій в три нові програми
Спершу ми обговорюватимемо локальну проблему планування.
Нехай програми Р Р’і Р’’ будуть ідентичними програмами, за винятком того, що довжина кожної роботи в P″ - подвоєна у відповідності до роботи в Р’, і довжина кожної Роботи Р рівна нулю. Розглянемо виконання Р’’, де розміщення А - оптимальний локальний графік. Нехай Q буде програмою, де ми об'єднали усі процеси, що виконуються на тому ж процесорі в одному процесі. рис. 8 показує , як P2″і P3″ об'єднані в процес Q2″ . Нехай Q′буде програмою, яка ідентична до Q″ з винятком того, що довжина кожного Робочого часу ділиться на два. Нехай Q буде програмою, яка ідентична до Q″і за винятком того, що робочий час - нульовий
Рис 8. Перетворення P” в Q”
З теореми 2, ми знаємо, що 2Ts(Q′, A)≤ Ts(Q,A)+ Ts(Q″, A). І ми використовуємо
таке ж розміщення «А» для обох P″ і Q″Проте, відколи є менше процесів в Q″ми нехтуємо розміщенням неіснуючих процесів в Q″. Це означає, що кожен процес в Q″ розподіляється для власного процесора. Із визначення Q″ ми знаємо що Ts(P″, A) = Ts(Q″, A) . Від того як оптимального порядок, в якому процеси розподілені до того ж процесора (тобто оптимальний локальний графік), можливо, не є тим же для P′ і P″ ми знаємо що Ts(P′, A)≤ Ts(Q′, A) .
Роглянемо зараз програму R , так як число процесів в R рівне числу процесів в Р, і так як R виконує нульову Роботу (тобто R містить тільки синхронізації, подібні до Р). Число синхронізацій між процесами Ri
і Rj в програмі R – подвійне значення синхронізацій між процесами Pi і Pj в програмі Р . Це означає, що завжди є ряд синхронізацій між будь-якою парою процесів в R . Всі синхронізації в R повинні виконуватися
в порядку (Рис. 9). Ми знаємо, що завжди можливо сформувати таку послідовність яка є рядом синхронізацій між будь-якою парою процесів. Послідовне виконання синхронізацій очевидно представляє "найбільш погано працюючу» програму, і локальне планування не впливає на тривалість виконання послідовності програм. Отже ми знаємо, що 2Ts(P,A)≤ Ts(R,A) і 2Ts(Q,A)≤ Ts(R,A) .
Тому: 4Ts(P′, A)≤4Ts(Q′, A)≤2Ts(Q,A)+ 2Ts(Q″, A)≤ Ts(R,A)+ 2Ts(P″, A).
Рис 9, Перетворення програми Р в програму R
Ми довели наступне:
Теорема 3: Для будь-якого розміщення А: 4Ts(P′, A)≤ Ts(R,A)+ 2Ts(P″, A).
Це означає, що довжина чотирьох копій P′ користування розміщенням А є менша ніж відповідна сума довжин програми R і двох копій P″ що використовують же розміщення А. Перетворення продовження змінює робочий час але не число синхронізацій. Отже перетворення продовження безпосередньо не зберігає міру деталізації. Проте, в порівнянні Теореми 3, обидві альтернативи мають ту ж деталізацію.
Ми бачитимемо, що Теорема 3 грає важливу роль в наступній частині , де ми виокремимо програму в двох частинах.
4.4 Перетворення програмP в програму з «товстою» і «тонкою» частинами
У цій секції ми описуємо, як перетворити м копій програми P′ в програму з однією частиною, що складається тільки з сигналів синхронізації (тонка частина), і інша частина, що складається з усієї обробки (товста частина). Перейміть на себе довільну програму P′. Спершу ми створюємо м копій P′, де m = 2х
для деякого (крупно) цілого числа (з Леми 1 ми знаємо, що коефіцієнт Ts(P, k, t)/Td(P, q) не змінюється)., Ми комбінуємо «м» копій в групах чотири і перетворюємо кожногу групу до двох програм P″ і однієї програми R . З теореми 3 ми знаємо що 4Ts(P′, A)≤ Ts(R,A)+ 2Ts(P″, A) для будь-якого розміщення А. перетворення закінчується з 2 x – 1 програмами P″ і 2 x – 2 програмами R . Знову ми комбінуємо 2 x – 1 програми P″у групах по чотири і використовуємо ту ж техніку. Цього разу перетворення закінчується
з 2
x – 2
програмами
P″
(порівнявши із подвійним виконанням до
P″
) і 2 x
– 3 програмами
R,
які
ми додаємо попереднім 2
x – 2
програмам цього типу. Ми повторюємо це
техніка до там – дві дуже «товсті»
програми з усім виконанням і
програми
R
. Частина, що складається з двох дуже
товстих програм, з велокою кількістью
виконань і дуже слабкою синхронізацією,
так званою товстою частиною. 2x
–
1
–
1 Копії R,
що містять (майже усю) синхронізацію,
зоветься тонкою частиною. Відмітьте,
що вибираючи досить великий m
= 2x,
ми можемо нехтувати часом завершення
з синхронізації в товстій частині. Ми користуватимемося цим фактом в наступній частині. міра деталізації z зберігає перетворення.
Перетворення для m = 8 ілюструється в рис. 10. Програма S″ представляє програму що складається з двох частин : тонка (трьох програм R) і товста (двох програм P'''). Це перетворення дозволяє оптимізувати статичний розподіл часу завершення тільки для зростання, тобто. mTs(P′, k, t) Ts(S, k, t)≤ T= s(S′, k, t)≤ Ts(S″, k, t)
Але в динамічному розподілі, де вартість синхронізації дорівнює нулю, час завершення справжній впродовж перетворення.
Тому,
.
Від цього покажчика і далі, ми обговорюватимемо тонку частину програм P″ (програмні
секції з тільки синхронізацією) і окремо товста частина програми (програмна секція з тривалістю виконання).
