Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БЖД / Дипломный проект Калинин Е.А. 10.05.11 (финал).doc
Скачиваний:
78
Добавлен:
19.03.2015
Размер:
2.33 Mб
Скачать

1.4.2 ТехнологияOpenMp

OpenMP (Open Multi-Processing) — открытый стандарт для распараллеливания программ на языках Си, Си++ и Фортран. Описывает совокупность директив компилятора, библиотечных процедур и переменных окружения, которые предназначены для программирования многопоточных приложений на многопроцессорных системах с общей памятью.

OpenMP реализует параллельные вычисления с помощью многопоточности, в которой «главный» (master) поток создает набор подчиненных (slave) потоков и задача распределяется между ними. Предполагается, что потоки выполняются параллельно на машине с несколькими процессорами (количество процессоров не обязательно должно быть больше или равно количеству потоков).

1.4.3 Технология: shmem.

Shmem (Shared Memory – разделяемая память) – как и MPI, представляет собой библиотеку функций, вызываемых из ветви параллельной программы. Эта технология гораздо меньше известна и распространена, чем MPI. Тем не менее, она в течение многих лет служила низкоуровневой базой систем параллельного программирования. В частности, реализация MPI для этих машин построена на базе shmem. Впоследствии была выполнена реализация shmem для кластерной сети. Эту технологию можно считать такой же «классической» среди технологий односторонних обменов, как MPI – среди технологий двусторонних обменов. В отличие от MPI, shmem принципиально рассчитана на полностью гомогенные многопроцессорные вычислители. Предполагается не только общность системы команд и, тем самым, машинного представления чисел во всех узлах вычислителя, но и одинаковая на всех узлах операционная система, а также один и тот же исполняемый файл ветви параллельной программы во всех процессах. Программа, использующая shmem, может быть написана на Фортране или Си.

1.5 Постановка задачи.

Анализ литературы позволяет сделать вывод об актуальности темы «Разработка тестового программного обеспечения коммутационной среды PCI-Express суперкомпьютера ЭКС-Е».

Таким образом, можно сформулировать задачу данного проекта.

Постановка задачи:

  1. Разработать алгоритм программы тестирования;

  2. Разработать программное обеспечение для кластера;

  3. Провести экспериментальные исследования, подтверждающие работоспособность разработанных средств ПО и соответствие их требованиям технического задания.

Глава 2. Разработка Алгоритма тестирования

Алгори́тм, от имени учёного аль-Хорезми — точный набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за конечное время. В старой трактовке вместо слова «порядок» использовалось слово «последовательность», но по мере развития параллельности в работе компьютеров слово «последовательность» стали заменять более общим словом «порядок». Это связано с тем, что работа каких-то инструкций алгоритма может быть зависима от других инструкций или результатов их работы. Таким образом, некоторые инструкции должны выполняться строго после завершения работы инструкций, от которых они зависят. Независимые инструкции или инструкции, ставшие независимыми из-за завершения работы инструкций, от которых они зависят, могут выполняться в произвольном порядке, параллельно или одновременно, если это позволяют используемые процессор и операционная система.

Особую роль выполняют прикладные алгоритмы, предназначенные для решения определённых прикладных задач. Алгоритм считается правильным, если он отвечает требованиям задачи (например, даёт физически правдоподобный результат). Алгоритм (программа) содержит ошибки, если для некоторых исходных данных он даёт неправильные результаты, сбои, отказы или не даёт никаких результатов вообще.

Виды Алгоритмов

Рекурсивные алгоритмы (алгоритмы, вызывающие сами себя до тех пор, пока не будет достигнуто некоторое условие возвращения)

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

Соседние файлы в папке БЖД