Непряма регістрова адресація

Типовіший випадки, коли в ролі базового регістра виступає один з регістрів загального призначення, тоді його номер явно вказується в підполі Rкоманди.

11. Закони Амдала і Густафсона.

DOP (Degree Of Parallelism)

Ступінь паралелізму програми - D (t) - число процесорів, які беруть участь у виконанні рограмма в момент часу t

DOP залежить від алгоритму програми, ефективності компіляції і доступних ресурсів при виконанні

Графік D (t) - профіль паралелізму програми

T (n) - час виконання програми на n процесорах

T (n)

T (n)> T (1), якщо накладні витрати (витрати) реалізації паралельної версії алгоритму надмірно великі

Прискорення за рахунок паралельного виконання

Ефективність системи з n процесорів

Випадок S (n) = n - лінійне прискорення - масштабованість (Scalability) алгоритму (можливість прискорення обчислень пропорційно числу процесорів)

Випадок S (n)> n - суперлінейное прискорення (наприклад, через більшого коефіцієнта кеш-влучень)

Gene Amdahl (1967)

f - частка послідовної частини програми

1-f - частка распараллелівать частини програми

Непряма регістрова адресація

Непряма регістрова адресація

Практичні обмеження прискорення

Непряма регістрова адресація

Джин Амдал сформулював закон в 1967 році, виявивши просте по суті, але непереборне за змістом обмеження на зростання продуктивності при розпаралелювання обчислень:

«У разі, коли завдання розділяється на кілька частин, сумарний час її виконання на паралельній системі не може бути менше часу виконання найдовшого фрагмента». Якщо колективна частина коду f може бути рівномірно формально розподілена по n процесорам, то закономірність може бути записана, як представлено на рис. 1.

Непряма регістрова адресація

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

Єдина відома гіпотеза про можливість подолання описаних обмежень була висловлена ​​в 1988 році Джоном Густафсоном, але вона не поширюється на підмножина фіксованих завдань. На підставі отриманого досвіду Густафсон прийшов до висновку, що при побудові більш потужних систем користувачі прагнуть не скоротити час роботи поточної версії завдання, а перейти до нової версії, що забезпечує більш високу якість рішення:

S (P) = P - l (P - 1), де P - число процесорів, S - прискорення, l - частина коду, що не піддається распараллеливанию.

Закон масштабується прискорення (Scaled Speedup):

Непряма регістрова адресація

Припустимо, деяку конструкцію можна розрахувати методом кінцевих елементів, і в такому випадку, чим меншим береться розмір елемента, тим вище буде точність. Сьогодні ідеї Густафсона, пов'язані з удосконаленням методів комунікації між вузлами, реалізуються в компанії Massively Parallel Technologies (MPT), де, до речі, працює і сам Амдал. Припустимо сказати, що ці методи дозволяють подолати обмеження закону, названого його ім'ям, але тільки побічно.

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