Page 196 - 6571
P. 196

3. Які обмеження притаманні вбудованим блокуванням у мові
                  Java?
                        4. Яким  чином  можна  оголосити  синхронізований  блок
                  засобами мови Java?

                        5. У чому полягає суть процедури клієнтського блокування?
                        6. За  допомогою  яких  методів  у  мові  Java  реалізовано
                  механізм міжпотокових комунікацій?

                        7. У  чому  полягає  відмінність  між  викликами  методів
                  notify() та notifyAll()?

                        8. Яке призначення ключового слова volatile у мові Java?
                        9. Яким  чином  ведуть  себе  поля  та  змінні  оголошені  із
                  ключовим словом final під час роботи з декількома потоками?

                        10. Які  потокозахищені  колекції  визначені  у  мові  Java  Ви
                  знаєте?




                                                       ЛЕКЦІЯ 21
                                    ОСНОВИ РОЗРОБКИ MPI-ПРОГРАМ



                        21.1 Вступ домови програмування MPI


                        У  обчислювальних  системах  з  розподіленою  пам’яттю  про-

                  цесори працюють незалежно один від одного. Для організації па-
                  ралельних обчислень в таких умовах необхідно мати можливість
                  розподіляти  обчислювальне  навантаження  і  організувати  інфор-

                  маційну взаємодію (передачу даних) між процесорами.
                        Вирішення  усіх  перерахованих  питань  і  забезпечує  інтер-
                  фейс передачі даних (message passing interface – MPI).

                        У загальному випадку, для розподілу обчислень між проце-
                  сорами необхідно проаналізувати алгоритм рішення задачі, виді-
                  лити інформаційно незалежні фрагменти обчислень, провести їх
                  програмну реалізацію і потім розмістити отримані частини про-

                  грами на різних процесорах. У рамках MPI прийнятий простіший
                  підхід – для вирішення поставленого завдання розробляється од-
                  на програма і ця єдина програма запускається одночасно на вико-

                  нання на усіх наявних процесорах. При цьому, для того щоб уни-
                  кнути ідентичності обчислень на різних процесорах, можна, по-
                  перше, підставляти різні дані для програми на різних процесорах,
                  а  по-друге,  використати  наявні  в  MPI  засобу  для  ідентифікації

                                                             195
   191   192   193   194   195   196   197   198   199   200   201