ВУЗ:
Составители:
Рубрика:
- 63 -
На практике процедура умножения матриц является всего лишь частью
разрабатываемой проблемно-ориентированной системы; при этом исходные
матрицы [A] и [B] вычисляются на предварительных стадиях расчета и не-
обязательно присутствуют в полном виде в ОП главного процесса; програм-
мист должен разработать интерфейсные процедуры, позволяющие заполнять
исходные матрицы непосредственно в ОП вычислительных узлов (и соответ
-
ственно получать значения коэффициентов матрицы-произведения).
Необходимое оборудование – вычислительный кластер под управлением
UNIX-совместимой ОС, предустановленная поддержка MPI, рабочая консоль
программиста для управления прохождением пользовательских задач.
Порядок проведения работы – студент подготавливает исходные тексты
MPI-программ, компилирует их в исполнимое приложение, запускает на
счет, проводит анализ полученных данных по заданию преподавателя.
Индивидуальные задания для студентов:
• Определить (ограниченный возможностями компилятора или размером
ОП) максимальный размер матрицы [A] при умножении на вектор-
столбец [B] для данного вычислительного комплекса (последовательный
и параллельный варианты при числе процессоров N=2,3,4,5…).
• Выявить зависимость быстродействия (величина, обратная времени вы-
полнения алгоритма) программы
MM_MPI_2
от числа процессоров
N=3,4,5… (производительность программы при числе процессоров 2 при-
нять единичной).
Дополнительные задания (самостоятельная работа студентов):
• Модифицировать программу
MM_MPI_2
таким образом, чтобы матрицы
[A], [B] и [C] не присутствовали в ОП каждого процесса, а только на глав-
ном.
• Реализовать программу умножения матриц с выполнением каждым про-
цессором:
А) Умножений элементов
a
ik
×
b
kj
с целью получения частичной суммы
c
ij
и последующим суммирование частичных сумм главным процессом
для получения
c
ij
(программа
MM_MPI_0.C
).
Б) Умножений строки матрицы [A] на столбец [B] с последующим сум-
мированием на каждом процессоре для получения конечного значения
c
ij
(программа
MM_MPI_1.C
).
Какая особенность алгоритма выполнения действий на процессорах потре-
буется в этом случае? Сравнить быстродействие этих программ с
MM_MPI_2.C
при различном числе процессоров.
- 63 - На практике процедура умножения матриц является всего лишь частью разрабатываемой проблемно-ориентированной системы; при этом исходные матрицы [A] и [B] вычисляются на предварительных стадиях расчета и не- обязательно присутствуют в полном виде в ОП главного процесса; програм- мист должен разработать интерфейсные процедуры, позволяющие заполнять исходные матрицы непосредственно в ОП вычислительных узлов (и соответ- ственно получать значения коэффициентов матрицы-произведения). Необходимое оборудование – вычислительный кластер под управлением UNIX-совместимой ОС, предустановленная поддержка MPI, рабочая консоль программиста для управления прохождением пользовательских задач. Порядок проведения работы – студент подготавливает исходные тексты MPI-программ, компилирует их в исполнимое приложение, запускает на счет, проводит анализ полученных данных по заданию преподавателя. Индивидуальные задания для студентов: • Определить (ограниченный возможностями компилятора или размером ОП) максимальный размер матрицы [A] при умножении на вектор- столбец [B] для данного вычислительного комплекса (последовательный и параллельный варианты при числе процессоров N=2,3,4,5…). • Выявить зависимость быстродействия (величина, обратная времени вы- полнения алгоритма) программы MM_MPI_2 от числа процессоров N=3,4,5… (производительность программы при числе процессоров 2 при- нять единичной). Дополнительные задания (самостоятельная работа студентов): • Модифицировать программу MM_MPI_2 таким образом, чтобы матрицы [A], [B] и [C] не присутствовали в ОП каждого процесса, а только на глав- ном. • Реализовать программу умножения матриц с выполнением каждым про- цессором: А) Умножений элементов aik × bkj с целью получения частичной суммы cij и последующим суммирование частичных сумм главным процессом для получения cij (программа MM_MPI_0.C). Б) Умножений строки матрицы [A] на столбец [B] с последующим сум- мированием на каждом процессоре для получения конечного значения cij (программа MM_MPI_1.C). Какая особенность алгоритма выполнения действий на процессорах потре- буется в этом случае? Сравнить быстродействие этих программ с MM_MPI_2.C при различном числе процессоров.
Страницы
- « первая
- ‹ предыдущая
- …
- 61
- 62
- 63
- 64
- 65
- …
- следующая ›
- последняя »