Частина тексту файла (без зображень, графіків і формул):
Паралелізм і конвеєризація (перекриття). Перекриття проти конвеєризації .
Аби підвищити продуктивність універсальних комп’ютерних систем використовують наступне:
- розпаралелювання,
- конвеєризацію (у сенсі перекриття виконання сусідніх інструкцій програми в часі, або ж часове розпаралелення),
- підвищення тактової частоти (фактор технології),
- оптимізацію частини апаратно-програмних засобів під задачу, точніше під конкретний алгоритм. Розбіжність паралелізму і конвеєризації проілюструємо наступним рисунком.
Паралельний та конвеєрний варіанти прискорення обчислення функції
Тут обчислення функції у конвеєрній системі поділяють на покрокове обчислення підфункій, на які поділено цільову функцію. В паралельній системі апаратно реалізують декілька апаратних пристроїв обчислення цільової функції. При цьому в паралельних та конвеєрних системах існує актуальна задача завантаження роботою надлишкових (з погляду стандартної організації обчислення) апаратних засобів. Несуперечливим є одночасне застосування розпаралелювання і конвеєризації. Наприклад, суперкомп’ютер CDC 6600 (1964 рік) спроектували як паралельний, а його вдосконалену версію CDC 7600 зробили вже паралельно-конвеєрною. Принципові відмінності паралельної та конвеєрної організації обчислень подано наступною таблицею.
Цікаво, що майже від початку випуску універсальних комп’ютерних систем, усі вони були більше чи менше конвеєризованими (працювали з перекриттям). Прикладом є навіть перший комерційний комп’ютер UNIVAC I, за допомогою якого передбачено перемогу генерала Дуайда Ейзенхауера над Гаррі Труменом (став президентом по смерті Франкліна Рузвельта, саме він наказав використати ядерну зброю проти Японії в 1945 році) на президентських перегонах США у 1952 році. Всі сучасні уніпроцесори використовують і паралелелізм, і перекриття (конвеєризацію).
Перекриття проти конвеєризації
Конвеєризація має місце тоді, коли істиною є наступне:
- кожне обчислення базової функції є відносно незалежним від попереднього обчислення,
- кожне обчислення вимагає наближено того ж самого ланцюжка підфункцій,
- підфункції щільно пов’язані поміж собою,
- час обчислення різних підфункцій є майже рівним.
Перекриття має місце тоді, коли істиною є наступне:
- окремі обчислення мають поміж собою залежності,
- кожне обчислення може вимагати відмінного ланцюжка підфункцій,
- за своїм призначенням підфункції достатньо різнорідні,
- час, необхідний для виконання дій на деякій сходинці не є постійним; він є функцією як самої сходинки, так і функцією даних, що пересуваються цією сходинкою.
Практична розбіжність поміж паралельною обробкою, конвеєрною обробкою та перекриттям може бути досить нечіткою. Проте, до універсальних систем краще пасує термін перекриття виконання інструкцій одинарного потоку ніж термін конвеєрного опрацювання цих інструкцій.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!