игра брюс 2048
Главная / Аппаратное обеспечение / Архитектура параллельных вычислительных систем / Тест 4

Архитектура параллельных вычислительных систем - тест 4

Упражнение 1:
Номер 1
Произведите распараллеливание выполнения на стеке программы в безадресной системе команд. Разное время начальной загрузки подстеков и время обмена между ними не учитывать. За сколько тактов выполнится параллельная программа, не считая записи результатов? Сколько процессорных элементов будет использовано? abc×+ de: f+ × ЗпА

Ответ:

 (1) 4 такта, 2 ПЭ 

 (2) 3 такта, 3 ПЭ 

 (3) 2 такта, 4 ПЭ 


Номер 2
Произведите распараллеливание выполнения на стеке программы в безадресной системе команд. Разное время начальной загрузки подстеков и время обмена между ними не учитывать. За сколько тактов выполнится параллельная программа, не считая записи результатов? Сколько процессорных элементов будет использовано? ab+ c× de- × f× ЗпА

Ответ:

 (1) 3 такта, 4 ПЭ 

 (2) 4 такта, 3 ПЭ 

 (3) 2 такта, 5 ПЭ 


Номер 3
Произведите распараллеливание выполнения на стеке программы в безадресной системе команд. Разное время начальной загрузки подстеков и время обмена между ними не учитывать. За сколько тактов выполнится параллельная программа, не считая записи результатов? Сколько процессорных элементов будет использовано? ab+ c× de+× ЗпА

Ответ:

 (1) 3 такта, 3 ПЭ 

 (2) 2 такта, 4 ПЭ 

 (3) 4 такта, 3 ПЭ 


Упражнение 2:
Номер 1
Произведите распараллеливание счета арифметических операторов, содержащих конструкции if-then-else, убедившись в правильной начальной загрузке и связывания подстеков. Сдвиг во времени загрузки подстеков не учитывать. Продолжите вычисления и определите количество тактов счета по разным ветвям программы. a+ if b+c > 0 then d: 5 else d: 20 files

Ответ:

 (1) 3 такта по двум ветвям 

 (2) 2 такта по ветви "+", 3 такта по ветви "-" 

 (3) 4 такта по двум ветвям 


Номер 2
Произведите распараллеливание счета арифметических операторов, содержащих конструкции if-then-else, убедившись в правильной начальной загрузке и связывания подстеков. Сдвиг во времени загрузки подстеков не учитывать. Продолжите вычисления и определите количество тактов счета по разным ветвям программы. 
a × if b > 0 then (c + d)×x else (e + f)
files
Укажите число тактов счета при заданном значении b ( b= 5, b = -7).

Ответ:

 (1) 3 такта по ветви "+", 2 такта по ветви "-" 

 (2) 3 такта по двум ветвям 

 (3) 2 такта по ветви "+", 3 такта по ветви "-" 


Номер 3
Произведите распараллеливание счета арифметических операторов, содержащих конструкции if-then-else, убедившись в правильной начальной загрузке и связывания подстеков. Сдвиг во времени загрузки подстеков не учитывать. Продолжите вычисления и определите количество тактов счета по разным ветвям программы. (a+ b)× if c > 0 then B else (d+ e)× ffiles

Ответ:

 (1) 2 такта по ветви "+", 3 такта по ветви "-" 

 (2) 3 такта по двум ветвям 

 (3) 3 такта по ветви "+", 2такта по ветви "-" 


Упражнение 3:
Номер 1
Предполагая механизм использования бита значимости регистров r СОЗУ, уплотните код фрагмента программы счета арифметического оператора на процессоре с программным управлением каждым тактом. Программа составлена в трехадресных командах. b= a+ c

Ответ:

 (1) Сч a r1 Сч с r2 + r1r2  

 (2) Сч a r1 Сч с r2 {пропуск тактов в ожидании считывания} + r1r2b  

 (3) Сч a r1 {пропуск тактов в ожидании считывания} Сч с r2 {пропуск тактов в ожидании считывания} + r1 r2b  


Номер 2
Предполагая механизм использования бита значимости регистров r СОЗУ, уплотните код фрагмента программы счета арифметического оператора на процессоре с программным управлением каждым тактом. Программа составлена в трехадресных командах. a= b2c

Ответ:

 (1) Сч b r1 Сч с r2 × r1 r2 r3. × r2 r3 a  

 (2) Сч b r1 {пропуск тактов в ожидании считывания} Сч с r2 {пропуск тактов в ожидании считывания} × r1 r2 r3. × r2 r3 a  

 (3) Сч b r1 Сч с r2 {пропуск тактов в ожидании считывания} × r1 r2 r3. × r2 r3 a  


Номер 3
Предполагая механизм использования бита значимости регистров r СОЗУ, уплотните код фрагмента программы счета арифметического оператора на процессоре с программным управлением каждым тактом. Программа составлена в трехадресных командах. a = a+ b

Ответ:

 (1) Сч a r1 Сч b r2 + r1 r2 a  

 (2) Сч a r1 Сч b r2 {пропуск тактов в ожидании считывания} + r1 r2 a  

 (3) Сч a r1 {пропуск тактов в ожидании считывания} Сч b r2 {пропуск тактов в ожидании считывания} + r1r2 a  


Упражнение 4:
Номер 1
Составьте программу для процессора VlIW-архитектуры задачи 
abc×+ de: f+ × ЗпА
при условии: данные находятся в регистровой (сверхоперативной) памяти; результат сложения можно использовать через 1 такт, результат умножения – через 2 такта, деления – через 3 такта; в составе АЛУ (в числе других) содержится 2 ИУ сложения, 2 умножения, одно деления. За сколько тактов, не считая записи, выполняется программа?

Ответ:

 (1) программа имеет вид
1.×b c r1;:d e r2
2.NOP
3.NOP
4.+a r1 r3
5.NOP
6.+ r2 r4
7.NOP
8.×r3 r4 A
программа выполняется за 10 тактов 

 (2) программа имеет вид
1.×b c r1;:d e r2
2.NOP
3.+a r1 r3
4.NOP
5.+ r2 f r4
6.NOP
7.×r3 r4 A
программа выполняется за 9 тактов 

 (3) программа имеет вид
1.×b c r1;:d e r2
2.NOP
3.NOP
4.+ a r1 r3
5.NOP
6.NOP
7.+r2 f r4
8.NOP
9.× r3 r4 A
программа выполняется за 11 тактов 


Номер 2
Составьте программу для процессора VlIW-архитектуры задачи
ab+ c× de- × f× ЗпА
при условии: данные находятся в регистровой (сверхоперативной) памяти; результат сложения можно использовать через 1 такт, результат умножения – через 2 такта, деления – через 3 такта; в составе АЛУ (в числе других) содержится 2 ИУ сложения, 2 умножения, одно деления. За сколько тактов, не считая записи, выполняется программа?

Ответ:

 (1) программа имеет вид
1.+ a b r1;-d е r2
2.NOP
3.× r1 c r3
4.NOP
5.NOP
6.× r3 r2 r4
7.NOP
8.NOP
9.× r4 f A
программа выполняется за 11 тактов 

 (2) программа имеет вид
1.+ a b r1;-d е r2
2.NOP
3.× r1 c r3
4.NOP
5.NOP
6.× r3 r2 r4
7.NOP
8.× r4 f A
программа выполняется за 10 тактов 

 (3) программа имеет вид
1.+ a b r1;-d е r2
2.NOP
3.×r1 c r3
4.NOP
5.×r3 r2 r4
6.NOP
7.×r4 f A
программа выполняется за 9 тактов 


Номер 3
Составьте программу для процессора VlIW-архитектуры задачи 
ab+ c× de+× ЗпА
при условии: данные находятся в регистровой (сверхоперативной) памяти; результат сложения можно использовать через 1 такт, результат умножения – через 2 такта, деления – через 3 такта; в составе АЛУ (в числе других) содержится 2 ИУ сложения, 2 умножения, одно деления. За сколько тактов, не считая записи, выполняется программа?

Ответ:

 (1) программа имеет вид
1.+ a b r1;+d е r2
2.NOP
3.× r1 c r3
4.NOP
5.NOP
6.× r3 r2 A
программа выполняется за 8 тактов 

 (2) программа имеет вид
1.+ a b r1;+d е r2
2.NOP
3.NOP
4.NOP
5.×r3 r2 A
программа выполняется за 7 тактов 

 (3) программа имеет вид
1.+ a b r1;+d е r2
2.NOP
3.× r1 c r3
4.NOP
5.NOP
6.× r3 r2 A
программа выполняется за 7 тактов 


Упражнение 5:
Номер 1
Используя команду if-then-else и трехадресную систему команд, составьте программу счета значения выражения
a+ if b+c > 0 then d: 5 else d: 20
Задержки выполнения команд из-за связности данных выполняются автоматически

Ответ:

 (1)
+bcr1
:d5r2
:d20r3
>r1s
if...sr2r4
r3
+ar4<результат>
 

 (2)
;d20r3
;d5r2
+bcr1
>s
if...sr2r4
r3
+ar4<результат>
 

 (3)
;d20r3
+bcr1
;d5r2
>r1s
if...sr2r4
r3
+ar4<результат>
 


Номер 2
Используя команду if-then-else и трехадресную систему команд, составьте программу счета значения выражения
a× if b > 0 then (c+ d)× x else (e+ f)
Задержки выполнения команд из-за связности данных выполняются автоматически

Ответ:

 (1)
>bs
+cdr1
+efr2
×r1xr3
if...sr2r4
r3
×ar4<результат>
 

 (2)
+cdr1
>bs
+efr2
×r1xr3
if...sr2r4
r3
×ar4<результат>
 

 (3)
+efr2
+cdr1
>bs
×r1xr3
if...sr2r4
r3
×ar4<результат>
 


Номер 3
Используя команду if-then-else и трехадресную систему команд, составьте программу счета значения выражения
(a+ b)× if c > 0 then B else (d+ e)× f
Задержки выполнения команд из-за связности данных выполняются автоматически

Ответ:

 (1)
+abr1
>cs
+der2
×r2fr3
if...sBr4
r3
×r1r4<результат>
 

 (2)
>cs
+abr1
+der2
×r2fr3
if...sBr4
r3
×r1r4<результат>
 

 (3)
+der2
>s
+abr1
×r2fr3
if...sBr4
r3
×r1r4<результат>
 


Упражнение 6:
Номер 1
 Используя механизм предикатов и считая, что адрес предиката указывается перед кодом операции, составьте программу счета значения выражения
a+ if b+c > 0 then d: 5 else d: 20

Ответ:

 (1)
1.+bcr1
2.>r1s
3.s:d 5r2
4.s:d 20r2
5.+a r2<результат?>
 

 (2)
1.+bcr1
2.> r1s
3.s:d 5r2
4.s:20r2
5.+ ar2<результат?>
 

 (3)
1.+ bcr1
2.> r1s
3.s :d 5r2
4.s +a r2<результат?>
5.s :d 20r3
6.s +a r3<результат>
 


Номер 2
Используя механизм предикатов и считая, что адрес предиката указывается перед кодом операции, составьте программу счета значения выражения
a× if b > 0 then (c+ d)× x else (e+ f)

Ответ:

 (1)
1.>bs
2.s+cdr1
3.s+efr1
4.s× r1xr1
5.× ar1<результат>
 

 (2)
1.>bs
2.s+cdr1
3.+efr1
4.s× r1xr1
5.× ar1<результат>
 

 (3)
1.> bs
2.s+cdr1
3.s+ efr1
4.s× r1xr1
5.× ar1<результат>
 


Номер 3
 Используя механизм предикатов и считая, что адрес предиката указывается перед кодом операции, составьте программу счета значения выражения
(a+ b)× if c > 0 then B else (d+ e)× f

Ответ:

 (1)
1.+ abr1
2.> cs
3.s× r1B<результат>
4.s+ der2
5.s× r2fr2
6.s× r1r2<результат>
 

 (2)
1.+ abr1
2.> cs
3.sЗn Br2
4.s+ der2
5.s× r2fr2
6.× r1r2<результат>
 

 (3)
1.+ abr1
2.> cs
3.s3n Br2
4.s+ der2
5.× r2fr2
6.× r1r2<результат>
 




Главная / Аппаратное обеспечение / Архитектура параллельных вычислительных систем / Тест 4