Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

Міністерство освіти і науки України

Тернопільський національний технічний університет імені Івана Пулюя

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

ЗВІТ
про виконання лабораторної роботи №4
з дисципліни: “Грід-системи та технології хмарних обчислень”
на тему: “ Розгортання Azure VM Linux та встановлення OpenMP”

Виконав:
студент групи СНнм-51
Зелінський А.О.

Прийняв:
Назаревич О. Б.

Тернопіль-2021
Лабораторна робота №4
Тема: Розгортання Azure VM Linux та встановлення OpenMP.
Мета: Навчитись здійснювати розгортання ОС Ubuntu Server на віддаленій
віртуальній машині із використанням хмарного сервісу Azure; навчитись
встановлювати ssh-з’єднання із використанням клієнта PuTTY; набути
практичного досвіду створення та запуску паралельних програм на віддаленій
машині із використанням OpenMP.
Хід роботи
Відео виконання ЛР4

Заходжу на портал Azure і створюю ресурс – віртуальну машину під


управлінням Ubuntu Server 20.04 LTS. Вводжу персональні дані (див. рис. 4.1).

Рисунок 4.1 – Створення віртуальної машини


Відкриваю PuttyGen і створюю ключі для SSH-з’єдання, вводжу ці ключі в
шаблон створення та обираю відкриті порти (див. рис. 4.2).

Рисунок 4.2 – Продовження налаштування віртуальної машини

Створюю SSH-підключення до віртуальної машини, ввівши її публічну ІР


адресу (див. рис. 4.3).
Рисунок 4.3 – SSH-підключення
Створюю робочу папку та файл (див. рис. 4.4).

Рисунок 4.4 – Робота в SSH

Вводжу програмний код у файл:


#include <stdio.h>
#include <omp.h>
#include <iostream>

using namespace std;

int main(int argc, char * argv []){

cout << "Лабораторна 5 - Грід-системи\n";


int N, operation;

cout << "Кількість чисел для виконання основних


математичних операцій N = ";
cin >> N;

#pragma omp parallel num_threads(3)


{

#pragma omp sections


{
#pragma omp section
{
operation = 0;
for (int i = 0; i < N; i++)
{
operation = operation + i;
}
printf("Секція 1. Номер потоку: %d Додавання:
%d\n", omp_get_thread_num(), operation);
}

#pragma omp section


{
operation = 0;
for (int i = 0; i < N; i++)
{
operation = operation - i;
}
printf("Секція 2. Номер потоку: %d Віднімання:
%d\n", omp_get_thread_num(), operation);
}

#pragma omp section


{
operation = 1;
for (int i = 1; i < N; i++)
{
operation = operation * i;
}
printf("Секція 3. Номер потоку: %d Множення:
%d\n", omp_get_thread_num(), operation);
}
}
}
}

Встановлюю пакунок g++. Запускаю програмне рішення (див. рис. 4.5).

Рисунок 4.5 – Результати програми

Висновки: на цій лабораторній роботі я здійснив розгортання ОС Ubuntu


Server на віддаленій віртуальній машині із використанням хмарного сервісу
Azure; встановив ssh-з’єднання із використанням клієнта PuTTY; створив та
запустив паралельних програм на віддаленій машині із використанням OpenMP.

You might also like