
- •1. Назвати основні сфери застосування високопродуктивних систем опрацювання даних і коротко їх охарактеризувати.
- •2. Навести класифікацію обчислювальних систем згідно з м.Флінном.
- •3. Навести класифікацію обчислювальних систем згідно з р.Хокні.
- •4. Навести основні архітектури високопродуктивних систем опрацювання даних.
- •5.Архітектура мрр
- •6.Архітекттура smp
- •8. Охарактерізуваті архітектуру numa.
- •9. Охарактеризувати кластерні системи.
- •10. Охарактерізуваті архітектуру grid.
- •11.Навести переваги використання багатоядерних процесорних систем у порівнянні з багатопроцесорними системами.
- •12. Навести переваги використання спеціалізованих графічних процесорів (gpu) у порівнянні з центральними процесорами (cpu) комп'ютерних систем для високопродуктивних обчислень.
- •13.Як визначається час виконання паралельного алгоритму?
- •14. Мінімальний можливий час виконання паралельного алгоритму визначається довжиною максимального шляху обчислювальної схеми алгоритму:
- •15 Основною характеристикою алгоритму, визначальною ефективність його виконання на багатопроцесорній системі є його ступінь паралелізму.
- •16. Ефективність паралельних обчислень сильно залежить від об'єму обміну у виконуваному застосуванні і від свойст коммуникатора.
- •17.Закон Амдала
- •18.Закон Густавсона – Барсиса
- •20.Навести основні принципи, яких необхідно дотримуватись при розробці паралельних алгоритмів.
- •21. Навести та охарактеризувати основні типи апаратних комунікаційних інтерфейсів для організації високопродуктивних систем опрацювання даних.
- •22. Охарактеризувати спеціалізований комунікаційний інтерфейс sci (Scalable Coherent Interface).
- •23.Охарактеризувати спеціалізований комунікаційний інтерфейс Myrinet
- •24.Охарактеризувати комунікаційний інтерфейс Gigabit Ethernet.
- •26 Охарактеризувати принципи роботи технології виклику віддалених процедур, методів, обєктів
- •27 Дати означення терміну маршалізація даних при виклику віддалених процедур
- •28 Дати означення терміну серіалізація обєктів
- •29. Пояснити причини використання клієнтської та серверної заглушок (stub) при написанні програм виклику віддалених процедур та методів.
- •30. Навести основні проблеми, які виникають при використанні технологій виклику віддалених процедур, методів, об'єктів.
- •31. Охарактеризувати технологію rpc.
- •32.Архітектура rmi.
- •1.Rmi (англ. Remote Method Invocation) - програмний інтерфейс виклику видалених методів в мові Java.
- •35. Охарактерізуваті технологію dcom
- •36. Проаналізувати використання программ з багатьма підпроцесами для організації високопродуктивних систем опрацювання даних.
- •37.Дати означення термінам семафор, м'ютекс, критична секція.
- •38.Навести основні проблеми, які виникають при використанні програм з багатьма підпроцесами, зокрема гонка процесів, вхід/вихід з критичних секцій, синхронізація підпроцесів.
- •39.Проаналізувати використання програм зі з'єднанням на основі сокетів для організації високопродуктивних систем опрацювання даних.
- •40.Дати означення терміну сокет, мережевий сокет, unix-сокет.
- •42. Охарактеризуйте технологію mpi, її призначення і реалізації
- •43. Навести приклад найпростішої програми на мові с з використанням технології mpi, яка виводить прізвище студента
- •44 Описати процес компіляції і виконання програми засобами середовища OpenMpi та компілятора gcc.
- •45.Навести необхідні функції mpi для ініціалізації і завершення mpi-коду програми.
- •46Охарактеризувати поняття групи і комунікатора у технології mpi.
- •47Навести і охарактеризувати основні типи даних mpi.
- •48Охарактеризувати основні методи для обміну повідомленнями між окремими процесами технології mpi.
- •50. Навести і охарактеризувати віртуальні топології mpi.
- •52Директива parallel
- •53Навести конструкції технології OpenMp на мові с для паралельного виконання циклу області технології OpenMp.
- •58. Охарактеризувати технологію pvm.
- •59 Проаналізувати можливість використання технології OpenMp, mpi та mpi/openmp на архітектурах mpp, smp та кластерній
- •60 Охарактеризувати високодоступні кластери
- •61 Охарактеризувати високопродуктивні кластери
- •62. Які є базові операції rpc?
- •63.Які є етапи виконання rpc.
- •64.Навести основні етапи розробки паралельних алгоритмів.
- •65.Завдання множення матриці на вектор визначається співвідношеннями
- •66.Навести і описати паралельні методи множення матриць.
- •67. Навести і описати паралельні методи розв'язку систем лінійних рівнянь.
- •67. Навести і описати паралельні методи сортування.
- •69.Навести і описати паралельні методи опрацювання графів.
- •70.Навести і описати паралельні методи розв'язання диференціальних рівнянь у частинних похідних.
- •71.Навести і описати паралельні методи багатоекстремальної оптимізації
- •72. У вихідному коді програми на мові с вставити пропущені виклики процедур підключення мрі, визначення кількості процесів і рангу процесів.
- •73. Програма, яка виводить «Hello Word from process I for n».
- •74. Програма генерації чисел в одному процесі і сумування їх у іншому процесі і надсилення результату в перший процес.
- •85.Налаштувати обчислювальний кластер засобами OpenMosix і пояснити принципи його роботи
- •88.Пояснити що таке mfs і продемонструвати прозору взаємодію файлових систем кластера
- •89. Написати програму з використанням бібліотеки Posix threads на мові с з метою тестування роботи кластера під керуванням OpenMosix. Тестування провести з замірами часу.
40.Дати означення терміну сокет, мережевий сокет, unix-сокет.
сокет – це комбінація IP адреси і номера порту, яка однозначно визначає окремий мережевий процес у всій глобальній мережі. Два сокети, один для хоста - одержувача, інший для хоста - відправника, визначають з'єднання сполучення для протоколів, орієнтованих на встановлення зв'язку, таких, як TCP.
Unix-socket - кінцева точка передач даних, яка подібна до Інтернетівського сокета, але не використовує мережевий протокол для комунікації. Це використовується в операційних системах POSIX для комунікації між-процесу.
Зв'язки областей Unix з'являються, як байтові потоки, багато подібно до зв'язків мереж, але всі дані залишаються в межах локального комп'ютера. UNIX-сокети використовують файлову систему як простір імен адрес, тобто вони посилаються процесами, як індексний дескриптор у файловій системі.
41. Transmission Control Protocol (TCP)(протокол управління передачею) - один з основних мережевих протоколів Інтернет, призначений для управління передачею даних в мережах і підмережах Tcp/ip.
Виконує функції протоколу транспортного рівня моделі OSI.
TCP - це транспортний механізм, що надає потік даних, з попередньою установкою з'єднання, за рахунок цього що дає упевненість в достовірності отримуваних даних, здійснює повторний запит даних у разі втрати даних і усуває дублювання при отриманні двох копій одного пакету
Коли здійснюється передача від комп'ютера до комп'ютера через інтернет, TCP працює на верхньому рівні між двома кінцевими системами, наприклад, Інтернет-браузер і Інтернет-сервер. Також TCP здійснює надійну передачу потоку байт від однієї програми на деякому комп'ютері в іншу програму на іншому комп'ютері. Програми для електронної пошти і обміну файлами використовують TCP. TCP контролює довжину повідомлення, швидкість обміну повідомленнями, мережевий трафік.
UDP (англ. User Datagram Protocol - протокол призначених для користувача датаграм) - це транспортний протокол для передачі даних в мережах IP без встановлення з'єднання. Він є одним з найпростіших протоколів транспортного рівня моделі OSI. Його IP-идентификатор - 0x11.
На відміну від TCP, UDP не гарантує доставку пакету, тому абревіатуру іноді розшифровують як Unreliable Datagram Protocol (протокол ненадійних датаграм). Це дозволяє йому набагато швидше і ефективніше доставляти дані для додатків, яким потрібна велика пропускна спроможність ліній зв'язку, або потрібний малий час доставки даних.
42. Охарактеризуйте технологію mpi, її призначення і реалізації
MPI розшифровується як "Message passing interface" ("Інтерфейс передачі повідомлень"). MPI - це стандарт на програмний інструментарій для забезпечення зв'язку між окремими процесами паралельного завдання. MPI надає програмістові єдиний механізм взаємодії процесів усередині паралельно виконуваного завдання незалежно від машинної архітектури (однопроцесорні, багатопроцесорні із загальною або розділеною пам'яттю), взаємного розташування процесів (на одному фізичному процесорі або на різних) і API операційної системи. Програма, що використовує MPI, легко відлагоджується і переноситься на інші платформи, часто для цього досить простій перекомпіляції початкового тексту програми.
Реалізації MPI
MPI/PRO for Windown NT – комерційна реалізація для Windown NT
Intel MPI – комерційна реалізація для Windows/Linux
Microsoft MPI входить до складу Compute Cluster Pack SDK. Засновиний на MPICH2, але включає додаткові засоби. Підтримується специфікація MPI-2.
HP-MPI – комерційна реалізація від НР
SGI-MPI – платна бібліотека MPI від SGI
Mvapich – безпласна реалізація MPI для Infiniband
OpenMPI – безплатна реалізація MPI
Oracle HPC Cluster Tools – безплатна реалізація для Solaris SPARC/x86 і Linux на основі OpenMPI
MPJ – MPI for Java