Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы Архитектура ВС.docx
Скачиваний:
59
Добавлен:
31.08.2019
Размер:
2.86 Mб
Скачать
  1. Системы (языки) параллельного программирования Системы (языки) параллельного программирования

 

В рамках параллельной модели программирования существуют различные подходы, ориентированные на разные архитектуры высокопроизводительных вычислительных систем и различные инструментальные средства. Перечислим некоторые из них.

 

Модель передачи сообщений

Основные особенности данного подхода:

  • Программа порождает несколько задач.

  • Каждой задаче присваивается свой уникальный идентификатор.

  • Взаимодействие осуществляется посредством отправки и приема сообщений.

  • Новые задачи могут создаваться во время выполнения параллельной программы, несколько задач могут выполняться на одном процессоре.

 

Основными инструментами программирования являются специализированные библиотеки

(MPI - Message Passing Interface, PVM - Parallel Virtual Machines).

Модель параллелизма данных

 

Основные особенности данного подхода:

  • Одна операция применяется к множеству элементов структуры данных. Программа содержит последовательность таких операций.

  • "Зернистость" вычислений мала.

  • Программист должен указать транслятору, как данные следует распределить между задачами.

При программировании на основе параллелизма данных часто используются специализированные языки или надстройки над языками . DVM Fortran, HPF (High Perfomance Fortran) и другие.

 

Модель общей памяти

В модели общей (разделяемой) памяти задачи обращаются к общей памяти, имея общее адресное пространство и выполняя операции считывания/записи. Управление доступом к памяти осуществляется с помощью разных механизмов, таких, например, как семафоры. В рамках этой модели не требуется описывать обмен данными между задачами в явном виде.

Это упрощает программирование. Вместе с тем особое внимание приходится уделять соблюдению детерминизма, таким явлениям, как «гонки за данными» и т. д.

Начиная с версии 2005 в Visual Studio входит поддержка OpenMP. OpenMP  набор директив компилятору (прагм), библиотечных функций и переменных окружения для поддержки парадигмы параллельного программирования для систем с общей памятью.

  1. Параллельные модели программирования. Модель передачи сообщений. Реализация на основе mpi.

  2. Параллельные модели программирования. Модель общей памяти. Реализация на основе OpenMp Системы (языки) параллельного программирования

 

В рамках параллельной модели программирования существуют различные подходы, ориентированные на разные архитектуры высокопроизводительных вычислительных систем и различные инструментальные средства. Перечислим некоторые из них.

 

Модель передачи сообщений

Основные особенности данного подхода:

  • Программа порождает несколько задач.

  • Каждой задаче присваивается свой уникальный идентификатор.

  • Взаимодействие осуществляется посредством отправки и приема сообщений.

  • Новые задачи могут создаваться во время выполнения параллельной программы, несколько задач могут выполняться на одном процессоре.

 

Основными инструментами программирования являются специализированные библиотеки

(MPI - Message Passing Interface, PVM - Parallel Virtual Machines).

Модель параллелизма данных

 

Основные особенности данного подхода:

  • Одна операция применяется к множеству элементов структуры данных. Программа содержит последовательность таких операций.

  • "Зернистость" вычислений мала.

  • Программист должен указать транслятору, как данные следует распределить между задачами.

При программировании на основе параллелизма данных часто используются специализированные языки или надстройки над языками . DVM Fortran, HPF (High Perfomance Fortran) и другие.

 

Модель общей памяти

В модели общей (разделяемой) памяти задачи обращаются к общей памяти, имея общее адресное пространство и выполняя операции считывания/записи. Управление доступом к памяти осуществляется с помощью разных механизмов, таких, например, как семафоры. В рамках этой модели не требуется описывать обмен данными между задачами в явном виде.

Это упрощает программирование. Вместе с тем особое внимание приходится уделять соблюдению детерминизма, таким явлениям, как «гонки за данными» и т. д.

Начиная с версии 2005 в Visual Studio входит поддержка OpenMP. OpenMP  набор директив компилятору (прагм), библиотечных функций и переменных окружения для поддержки парадигмы параллельного программирования для систем с общей памятью.

  1. Способы классификации ВС: по назначению, по типу устройств и  комплексирования, по типу ЭВМ или процессоров, по степени территориальной разобщенности, по методам управления элементами и по режиму работы

    Способы классификации ВС: по назначению, по типу устройств и комплексирования, по типу ЭВМ или процессоров, по степени территориальной разобщенности, по методам управления элементами и по режиму работы