Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы по ТРС.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
201.18 Кб
Скачать

Завдання:

  1. Розглянути, вiдкомпiлювати та запустити на виконання наведенi приклади.

  2. З'ясувати принципи взємодiї та синхронiзацiї потокiв при використаннi портфеля задач.

  3. З'ясувати особливостi програмування та застосування портфеля задач.

 

Iндивiдуальнi завдання до захисту роботи

  1. Написати паралельну програму для генерацiї послiдовностi чисел, якi менше за 10000 та дiляться на 3, 5, 7, 9. Використати два процеси та чотири задачi.

  2. Обчислити визначений iнтеграл для функцiї y = x2 / 4 у дiапазонi [2, 10]. Використати два процеси та чотири задачi.

  3. Обчислити довжину шляху, пройденого матерiальною точкою за 48 секунд, яка рухається за таким законом: y = 16 * sin(2 * t) x = 4 * t Використати три процеси та дев'ять задач.

  4. Дано кардiоїда вписана у квадрат. Обрахувати спiввiдношення площин кардiоїди та квадрата методом Монте-Карло. Використати чотири процеси та шiстнадцять задач.

  5. Дано коло вписане у квадрат. Обрахувати спiввiдношення площин кола та квадрата методом Монте-Карло. Використати два процеси та вiсiм задач.

  6. Дано квадрат вписаний у коло. Обрахувати спiввiдношення площин кола та квадрата методом Монте-Карло. Використати чотири процеси та шiстнадцять задач.

  7. Дано трикутник вписаний у коло. Обрахувати спiввiдношення площин кола та трикутника методом Монте-Карло. Використати три процеси та шiстнадцять задач.

  8. Дано коло вписане у трикутник. Обрахувати спiввiдношення площин кола та трикутника методом Монте-Карло. Використати три процеси та шiстнадцять задач.

  9. Дано зiрка вписана у коло. Обрахувати спiввiдношення площин кола та зiрки методом Монте-Карло. Використати три процеси та дев'ять задач.

  10. Дано сфера вписана у куб. Обрахувати спiввiдношення об'ємiв сфери та куба методом Монте-Карло. Використати три процеси та дев'ять задач.

  11. Дано куб вписаний у сферу. Обрахувати спiввiдношення об'ємiв сфери та куба методом Монте-Карло. Використати чотири процеси та шiстнадцять задач.

  12. Дано сфера вписана у тетраедр. Обрахувати спiввiдношення об'ємiв сфери та тетраедра методом Монте-Карло. Використати три процеси та дев'ять задач.

  13. Дано тетраедр вписаний у сферу. Обрахувати спiввiдношення об'ємiв сфери та тетраедра методом Монте-Карло. Використати чотири процеси та шiстнадцять задач.

 

Примiтка. Тетраедр описати як об'ємну фiгуру, що обмежена такими площiнами , де a - довжина сторони тетраедра.

 

Лабораторна робота №14.

Тема: Розподiлене програмування на мовi Java з використанням бар'єрної синхронiзацiї.

Мета:

  1. Опанувати методику створення розподiлених програм з використанням бар'єрної синхронiзацiї.

 

Теоретичнi вiдомостi.

Барьеры

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

На практицi бар'ери використовуються для збору результатiв виконання деякої розпаралеленої задачi. У якостi прикладу можна розглянути задачу множення матриць. При розпаралелюваннi цiєї задачi кожному потоку буде доручено множення визначених рядкiв на визначенi ствпцi. В точцi синхронiзацiї отриманi результати збираються вiд усiх потокiв, i будується кiнцева матриця.

Розглянемо приклад використання класу CyclicBarrier, який є реалiзацiєю бар'єра. Вiн є складовою пакета java.util.concurrent.