Проектирование коммуникаций и вычислений

Содержание

Слайд 2

Цель лекции:

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

Цель лекции: с типами коммуникаций, используемых в параллельном программировании, рекомендациями по проектированию
а также планированием вычислений.

Слайд 3

Содержание лекции:

проектирование коммуникаций и вычислений, основные типы коммуникаций и способы их организации

Содержание лекции: проектирование коммуникаций и вычислений, основные типы коммуникаций и способы их организации

Слайд 4

Коммуникации делятся на следующие типы:

локальные коммуникации, когда каждая подзадача связана с

Коммуникации делятся на следующие типы: локальные коммуникации, когда каждая подзадача связана с
небольшим набором других подзадач;
глобальные коммуникации, когда каждая подзадача связана с большим числом других подзадач

Слайд 5

Коммуникации делятся на следующие типы:

структурированные коммуникации, когда каждая подзадача и связанные

Коммуникации делятся на следующие типы: структурированные коммуникации, когда каждая подзадача и связанные
с ней другие подзадачи образуют регулярную структуру;
неструктурированные коммуникации, когда подзадачи связаны произвольным графом;

Слайд 6

Коммуникации делятся на следующие типы:

статические коммуникации, когда схема коммуникаций не меняется с

Коммуникации делятся на следующие типы: статические коммуникации, когда схема коммуникаций не меняется
течением времени;
динамические коммуникации, когда схема коммуникаций изменяется в процессе выполнения программы;

Слайд 7

Коммуникации делятся на следующие типы:

синхронные коммуникации, когда отправитель и получатель данных координируют

Коммуникации делятся на следующие типы: синхронные коммуникации, когда отправитель и получатель данных
обмен;
асинхронные коммуникации, когда обмен данными не координируется.

Слайд 8

Обмен сообщениями может быть реализован по-разному:

с помощью потоков;
с помощью межпроцессорных коммуникаций

Обмен сообщениями может быть реализован по-разному: с помощью потоков; с помощью межпроцессорных
(IPC- Inter-Process Communication);
TCP-сокетов и других.

Слайд 9

Один из самых распространенных способов программирования коммуникаций является использование библиотек PVM (Parallel

Один из самых распространенных способов программирования коммуникаций является использование библиотек PVM (Parallel
Virtual Machine) и MPI (Message Passing Interface), реализующих обмен сообщениями.

Слайд 10

Существуют другие способы организации коммуникаций:

RPC (Remote Procedure Control);
CORBA (Common Object Request

Существуют другие способы организации коммуникаций: RPC (Remote Procedure Control); CORBA (Common Object
Broker Architecture);
DCOM (Distributed Component Object Model).

Слайд 11

Способ RPC позволяет одному процессу вызывать процедуру из другого процесса, передавать ей

Способ RPC позволяет одному процессу вызывать процедуру из другого процесса, передавать ей
параметры; если будет необходимость, то получать результаты выполнения

Слайд 12

Способ CORBA определяет протокол взаимодействия между процессами, независимый от языка
программирования и операционной

Способ CORBA определяет протокол взаимодействия между процессами, независимый от языка программирования и
системы. Для описания интерфейсов используется известный язык IDL (Interface Definition Language).

Слайд 13

Укрупнение :

После декомпозиции и проектирования коммуникаций будет получен алгоритм, который не ориентирован

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

Слайд 14

Существуют другие способы организации коммуникаций:

RPC (Remote Procedure Control);
CORBA (Common Object Request

Существуют другие способы организации коммуникаций: RPC (Remote Procedure Control); CORBA (Common Object
Broker Architecture);
DCOM (Distributed Component Object Model).

Слайд 15

Основными требованиями к укрупнению подзадач являются следующие:

снижение затрат на коммуникацию;
при укрупнении

Основными требованиями к укрупнению подзадач являются следующие: снижение затрат на коммуникацию; при
возможно дублирование вычисления или данные, но это не должно к потере производительности и масштабируемости программы;

Слайд 16

Основными требованиями к укрупнению подзадач являются следующие:

трудоемкость результирующих задач должны быть примерно

Основными требованиями к укрупнению подзадач являются следующие: трудоемкость результирующих задач должны быть
одинаковой;
должна сохраниться масштабируемость;

Слайд 17

Основными требованиями к укрупнению подзадач являются следующие:

должна сохраниться возможность параллельного выполнения;
стоимость

Основными требованиями к укрупнению подзадач являются следующие: должна сохраниться возможность параллельного выполнения;
и трудоемкость разработки должны снижаться.

Слайд 18

Планирование вычислений.

Здесь должны быть определены процессоры, на которых будут обрабатываться подзадачи.

Планирование вычислений. Здесь должны быть определены процессоры, на которых будут обрабатываться подзадачи.

Основным критерием эффективности в этой разработке является минимум времени выполнения программы.

Слайд 19

Планирование вычислений.

Ставится условие сбалансированной работы процессоров. Для этого существуют различные алгоритмы,

Планирование вычислений. Ставится условие сбалансированной работы процессоров. Для этого существуют различные алгоритмы,
применяемые в методах декомпозиции данных.

Слайд 20

Планирование вычислений.

Все эти методы предназначены для укрупнения мелкозернистых задач, чтобы в

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

Слайд 21

Программные средства высокопроизводительных вычислений.

средства анализа и выявления параллелизма;
трансляторы;
операционные системы;.

Программные средства высокопроизводительных вычислений. средства анализа и выявления параллелизма; трансляторы; операционные системы;.

Слайд 22

Программные средства высокопроизводительных вычислений.

средства отладки;
средства оценки производительности программы и ее

Программные средства высокопроизводительных вычислений. средства отладки; средства оценки производительности программы и ее отдельных частей.
отдельных частей.
Имя файла: Проектирование-коммуникаций-и-вычислений.pptx
Количество просмотров: 44
Количество скачиваний: 0