Теория и практика параллельных вычислений

         

Контрольные вопросы


  1. Назовите основные способы распределения элементов матрицы между процессорами вычислительной системы.
  2. В чем состоит постановка задачи умножения матрицы на вектор?
  3. Какова вычислительная сложность последовательного алгоритма умножения матрицы на вектор?
  4. Почему при разработке параллельных алгоритмов умножения матрицы на вектор допустимо дублировать вектор-операнд на все процессоры?
  5. Какие подходы могут быть предложены для разработки параллельных алгоритмов умножения матрицы на вектор?
  6. Представьте общие схемы рассмотренных параллельных алгоритмов умножения матрицы на вектор.
  7. Проведите анализ и получите показатели эффективности для одного из рассмотренных алгоритмов.
  8. Какой из представленных алгоритмов умножения матрицы на вектор обладает лучшими показателями ускорения и эффективности?
  9. Может ли использование циклической схемы разделения данных повлиять на время работы каждого из представленных алгоритмов?
  10. Какие информационные взаимодействия выполняются для алгоритмов при ленточной схеме разделения данных? В чем различие необходимых операций передачи данных при разделении матрицы по строкам и столбцам?
  11. Какие информационные взаимодействия выполняются для блочного алгоритма умножения матрицы на вектор?
  12. Какая топология коммуникационной сети является целесообразной для каждого из рассмотренных алгоритмов?
  13. Дайте общую характеристику программной реализации алгоритма умножения матрицы на вектор при разделении данных по строкам. В чем могут состоять различия в программной реализации других рассмотренных алгоритмов?
  14. Какие функции библиотеки MPI оказались необходимыми при программной реализации алгоритмов?



Содержание раздела