Ім'я файлу: _Sofiia_442sk_lab_PRO1.docx
Розширення: docx
Розмір: 17кб.
Дата: 07.06.2020
скачати

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ

ЧЕРНІВЕЦЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ

ІМЕНІ ЮРІЯ ФЕДЬКОВИЧА
Інститут фізико-технічних та комп’ютерних наук

Кафедра комп’ютерних систем та мереж

ЗВІТ
про виконання лабораторної роботи №1


з дисципліни: Паралельні та розподілені обчислення

«Розробка і дослідження паралельної програми на основі існуючої готової послідовної»
Керівник

асистент

кафедри КСМ

__________ І.Д. Лісовенко

„_____”_______2020 р.

Виконавець

студентка 4-го курсу

442-ск групи

__________С.В. Синжерян

„_____”________2020 р.


Чернівці, 2020
«Розробка і дослідження паралельної програми на основі існуючої готової послідовної»

Мета роботи: навчитись приймати рішення про можливість розпаралелювання за результатами аналізу всієї сукупності залежностей програми.
Варіант-5
Хід роботи:


int main(int argc, char **argv)

{

double a[ISIZE][JSIZE];

int i, j;

FILE *ff;

for (i=0; i
for (j=0; j
a[i][j] = 10*i +j;

}

}

for (i=1; i
for (j = 6; j < JSIZE-1; j++){

a[i][j] =

sin(0.00001*a[i+1][j-6]);

}

}

ff = fopen("result.txt","w");

for(i=0; i < ISIZE; i++){

for (j=0; j < JSIZE; j++){

fprintf(ff,"%f ",a[i][j]);

}

fprintf(ff,"\n");

}

fclose(ff);

}


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

  1. Що таке детермінованість операцій?

Атомарні операції активностей можуть чергуватися всілякими

способами із збереженням свого порядку розташування всередині

активностей. Так як, псевдопаралельне виконання двох активностей

призводить до чергування їх неподільних операцій, то результат

псевдопаралельного виконання може відрізнятися від результату

послідовного виконання. Розглянемо приклад. Нехай у нас є дві активності P

і Q, що складаються з двох атомарних операцій кожна:

P: x=2 Q: x=3

y=x-1 y=x+1

Що ми отримаємо в результаті їх псевдопаралельного виконання, якщо


змінні x і y є загальними для активностей?

Легко бачити, що можливі чотири різних набору значень для пари (x , y) : (3 , 4) , (2 , 1) , (2 , 3) і (3 , 2). Ми будемо говорити, що набір активностей (наприклад, програм) детермінований, якщо всякий раз при псевдопаралельному виконанні для одного і того ж набору вхідних даних він дає однакові вихідні дані. В іншому випадку він недетермінований.

Вище наведено приклад недетермінірованного набору програм. Зрозуміло, що детермінований набір активностей можна безпроблемно виконувати в режимі поділу часу. Для недетермінірованного набору таке виконання небажано.

2. В чому полягають умови Бернстайна?

Назвемо нашу послідовність дій P, набір її вхідних змінних - R (P) (від слова read), а набір вихідних змінних - W (P) (від слова write). У цьому випадку умови Бернстайна для двох послідовностей дій P і Q виглядають таким чином:

Якщо:

 перетин W (P) і W (Q) пустий,

 перетин W (P) і R (Q) пустий,

 перетин R (P) і W (Q) пустий,

то виконання P і Q детерміноване.

Перша умова вимагає, щоб послідовності НЕ намагалися записувати дані в одні і ті ж вихідні змінні. Друга і третя вимагають, щоб одна послідовність не

намагалася записувати дані у вихідну змінну, яка одночасно є вхідною для

іншої послідовності. Якщо всі ці умови виконуються, це рівнозначно тому,

що P і Q не взаємодіють.
скачати

© Усі права захищені
написати до нас