Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЗ_курс2.docx
Скачиваний:
17
Добавлен:
07.02.2016
Размер:
511.77 Кб
Скачать

2. Коммуникации разделяемой памяти в mpj Экспресс

2.1 Связанные работы

В последнее десятилетие появились многие системы обмена сообщениями Java. Это показывает, интерес HPC сообщества для использования и разработки на Java крупномасштабных приложений.

Рисунок 2.1 - Структура MPJ экспресс

В основном есть три подхода для построения таких библиотек ;

1 использовать чистый Java;

2 полагаться на Java Native Interface ( JNI );

3 или использовать более высокую API обмена сообщениями, как Remote Method Invocation (RMI).

MpiJavа предоставляет полнофункциональный и эффективный объектно-ориентированный Java интерфейс к MPI. Уникальной особенностью этой библиотеки обмена сообщениями является то, что она может работать с любой из родных библиотек C MPI и таким образом имеет косвенную выгоду от совместно используемых устройств памяти в этих собственных библиотеках. MPJ/Ibis является реализацией спецификации MPJ API на вершине Ibis. Устройства связи, используемые MPJ / Ibis не поточно-ориентированные. MPJ / Ibis имеет связи устройства для java.io пакета, Java NIO пакета, и Myrinet пакета. Это программное обеспечение в настоящее время не обеспечивает устройство связи разделяемой памяти. Вместе с этим, ни одна из существующих системм обмена сообщениями Java не реализует общего коммуникационного устройства памяти . mpiJava уникален в этом контексте , потому что он может использовать общую устройство связи памяти родного библиотеки C MPI. С другой стороны, популярные библиотеки C MPI в том числе открытого MPI и MPICH2 обеспечивают высокую производительность устройства связи общейщая памяти на различных платформах . Открытая MPI является реализация качество продукциис открытым исходным кодом как MPI -1 и MPI -2. Открыть MPI является слиянием LAM / MPI, LA- MPI, и FT- MPI. Он полностью поддерживает одновременное и многопоточное приложение. Открытый MPI включает в себя признаки потокобезопасности и параллелизма, высокой производительностью на всех платформах портативный и обслуживании, на основе компонентов дизайна и документирования API. [3,c 634]

Рисунок 2.2 - Существующий Intra-узлы коммуникационного дизайна

MPICH2 является еще одной реализацией MPI. MPICH2 предназначен для реализации MPI на SMP - кластерах и массовых параллельных процессорах. Библиотека MPICH2 предоставляет разнообразные разделяемые библиотеки коммуникации памяти, в том числе ch3: ГИМ, CH3: SSM и CH3: sshm. Кроме того, MPICH2 имеет коммуникационную подсистему под названием Nemesis. Уникальным аспектом является использование безблокировочных очередей в этой подсистеме, что повышает масштабируемость и увеличиваетсякак количество процессоров или ядер.

2.2 Общие устройства памяти связи для mpj Экспресс

В настоящее время программное обеспечение MPJ Экспресс не обеспечивает разделяемое устройство связи памяти. Пользователи программного обеспечения полагаются на Java NIO и Myrinet устройства для процессора при общения внутри узла. Этот вид связи, как правило, включает в себя петлю назад от сетевой карты - это изображено на рисунке 2. В идеале связь между процессорами или ядрами в рамках одного узла должна быть сделана через шину памяти вместо сетевой карты . Это изображено на рисунке 3 и составляет основу двух реализаций, описанных в данном разделе. Оба общих коммуникационных устройства памяти реализауют слой XDEV устройства, как показано на рисунке1 . Слой устройства XDEV только определяет блокирующие и неблокирующий методы точка - точка связи. Расширенные MPI функции, включая функции коллективного общения, производных типов, и виртуальные топологии реализуются на более высоких уровнях программного обеспечения MPJ Express. В этом разделе мы сначала рассмотрим темы на основе устройство связи в общей памяти. Это сопровождается обсуждением реализации библиотеки SysV IPC в XDEV слое.

Рисунок 2.3 - Оптимизированная конструкция связи внутри узла

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]