69770

Планування у багатопроцесорних системах

Лекция

Информатика, кибернетика и программирование

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

Украинкский

2014-10-09

34.5 KB

1 чел.

Тема 18. Планування у багатопроцесорних системах

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

Планування з розподілом часу

Найпростішим способом організації багатопроцесорного планування незалежних потоків є використання структури даних для готових потоків, спільної для всіх процесорів. Прикладом такої структури може бути багаторівнева черга, яка використовується під час планування із пріоритетами.

Коли потік на одному з процесорів завершує роботу або призупиняється, цей процесор починає виконувати код планувальника ОС. Планувальник при цьому блокує чергу готових потоків, ставить на виконання потік із найвищим пріоритетом і вилучає його керуючий блок із черги. Наступний за пріоритетом потік почне виконуватися на наступному звільненому процесорі і т. д. Такий підхід називають плануванням із розподілом часу, оскільки, як і у традиційних системах із розподілом часу, щоразу приймають рішення щодо використання одного процесора і виконання одного потоку.

Головним недоліком цього підходу є високий ступінь паралелізму доступу до черги готових потоків, що може стати «вузьким місцем» системи. Є ймовірність того, що більшу частину часу потоки проводитимуть в очікуванні на м'ютексі, який захищає чергу. Крім того, немає можливості уникнути перемикання контексту в разі призупинення потоку і подальшої його міграції на інший процесор.

Планування з розподілом простору

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

Найефективнішим алгоритмом планування із розподілом простору є бригадне планування (gang scheduling). Цей алгоритм працює так.

  1.   Пов'язані потоки (наприклад, потоки одного процесу) одночасно запускають на виконання на максимально можливій кількості процесорів. Такі потоки становлять бригаду (gang).
  2.   Усі потоки бригади виконуються впродовж однакового для всіх кванта часу.
  3.   Після вичерпання кванта часу відбувається повне перепланування для всіх процесорів. Виконання починають потоки іншої бригади.

Якщо кількість потоків бригади менша, ніж кількість процесорів, виконання можуть почати потоки кількох бригад, якщо більша — виконується частина потоків бригади, а інші будуть заплановані до виконання упродовж наступного кванта часу.

Робота цього алгоритму показана на рис. 20.1. По вертикалі відкладено моменти часу, по горизонталі — процесори. Буквами позначено процеси (бригади), цифрами індексу — номери потоків.

Контрольні питання:

1. Планування з розподілом часу.

2. Планування з розподілом простору.


 

А также другие работы, которые могут Вас заинтересовать

56374. Does television play a positive or negative role in modern society? 71 KB
  During the lesson you’ll be able to deepen and widen your knowledge about the most famous invention of the 20th century. You will work in small groups and than share your researched information with each other. The second part of the lesson will be dedicated to a Talk Show...
56375. Є. Гуцало «Перебите крило» 64 KB
  Однією із головних задач сучасної школи є виховання відповідальної особистості, яка здатна до самоосвіти й саморозвитку, вміє творчо застосовувати набуті знання
56376. Чи може бути свобода основою моральності? 66.5 KB
  Мета. Навчити учнів обґрунтовувати поняття свободи як основи моральності висловлювати своє розуміння свободи пояснювати що означає свобода вибору дії волі; формувати вміння наводити приклади узгодження власних інтересів із суспільними...
56378. Теоретические основы трудового воспитания дошкольников 62 KB
  Отличие труда взрослых и детей. Виды труда дошкольников. Формы организации труда. Понимая огромную роль труда в воспитании подрастающего поколения в своих работах часто затрагивали эту тему.
56379. Виды труда дошкольников 175 KB
  Труд детей в детском саду многообразен. Труд в природе предусматривает участие детей в уходе за растениями и животными выращивание растений в уголке природы на огороде в цветнике.
56380. Литературный процесс в США на рубеже 19-20 вв. 15.99 KB
  Развитие литературы США в последней трети XIX века и в первые десятилетия XX века характеризуется ускоренными темпами и быстрой сменой литературных направлений и тенденций.
56382. Отрезок. Длина отрезка. Треугольник 58.5 KB
  Цели урока: образовательные: обеспечить обобщение и систематизацию понятий отрезок, концы отрезка, равные отрезки, длина отрезка, треугольник, стороны треугольника, вершины треугольника, многоугольник.