Главная » Просмотр файлов » XXI Зарубин B.C. Математическое моделирование в технике

XXI Зарубин B.C. Математическое моделирование в технике (1081441), страница 59

Файл №1081441 XXI Зарубин B.C. Математическое моделирование в технике (Зарубин В.С., Крищенко А.П. - Комплекс учебников из 21 выпуска) 59 страницаXXI Зарубин B.C. Математическое моделирование в технике (1081441) страница 592018-01-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 59)

7.3) мультипроцессор, состоящий из Л параллельно работающих процессоров, выполняющих сложение каждой пары координат за в = 4 тактовых периода длительностью т, при )у ( и завершит вычисления за время г(п) = 7.4. О распараллеливании матричных вычислений 389 = е[п/м)'7, где [и/м]* — наименьшее натуральное число, равное числу и/И или большее его.

Таким образом, в этом случае при — Е 1ч время выполнения операции сложения векторов И можно сократить в Ф раз по сравнению с временем при использовании ЭВМ с последовательной архитектурой. Если 1ч" )) л, то выполнение этой операции при помощи этого мультипроцессора будет проходить существенно быстрее, чем на ЭВМ с конеейерной архитектурой. Можно добиться еще большего увеличения производительности ЭВМ, если объединить в мультипроцессор процессоры, выполняющие вычисления по конвейерной схеме*. Рассмотрим особенности применения ЭВМ различной архитектуры для перемножения квадратных матриц А и В порядка и с элементами а; и Ь; е', у' = Т, п, соответственно. Можно выделить три алгоритма выполнения этой операции.

В первом из них для фиксированных значений г, у = 1, и при начальном значении с; = О во внутреннем цикле по й = 1, и вычисляют элемент с; =с; +а1ъбай матрицы С=АВ. Этот алгоритм предусматривает вычисление скалярного произведения 1-й строки матрицы А и ~-го столбца матрицы В во внутреннем цикле, и поэтому его называют алеоритмоле енутреннеео произееденпл. Ясно, что для выполнения этого алгоритма можно использовать ЭВМ с любой архитектурой. Однако возможности его распараллеливания применительно к мультипроцессору ограничены (например, для мультипроцессора, состоящего из п параллельно работающих процессоров, можно одновременно вычислить п произведений а,~6~7, Й = 1, п, а затем полученные результаты сложить по каскадной схеме).

Перемножение квадратных матриц порядка п требует вычисления пз скалярных произведений их строк и столбцов. Поэтому для повышения производительности ЭВМ целесообразно так изменить алгоритм вычисления этого произведения, чтобы 'Смл Хокни Р., Докессхоуа К. 390 7. АЛГОРИТМИЗАЦИЯ МА ТЕМАТИЧЕСКИХ МОДЕЛЕЙ дать работу одновременно большему числу процессоров мультипроцессора. Если цикл по номерам г' = 1, и строк искомой матрицы С сделать внутренним, цикл по у' =1, и — внешним, а цикл по к =1, и — средним, то и параллельно работающих процессоров смогут вычислять скалярные произведения одновременно для всех элементов у-го столбца этой матрицы.

Такой вариант распараллеливания называют алеоритимом среднеео произведения. Отметим, что можно было сделать внутренним цикл по номерам у' = 1, и столбцов матрицы С, а внешним — цикл по номерам г' = 1, и строк. Но тогда к элементам бь матрицы В доступ в памяти происходил бы не с единичным шаеом выборки, поскольку в смежных ячейках памяти хранятся элементы столбца матрицы (см. 7.3).

Поэтому в алгоритме среднего произведения предпочтительнее внешним делать цикл по номерам у' = 1., и столбцов искомой матрицы. Если число Я процессоров в мультипроцессоре меньше порядка перемножаемых матриц, то аналогично ситуации, рассмотренной в примере 7.4, матрицу В можно разбить на блоки по М или менее столбцов, используя правило умножения блочных матриц [П1]. Наконец, алгоритм внешнеео произведения, в котором внешним является цикл по к = 1, и, предусматривает использование мультипроцессора, состоящего из п~ параллельно работающих процессоров.

Каждый из этих процессоров для фиксированного сочетания значений 1 = 1, и и у = 1, и вычисляет последовательно по Й = 1., и слагаемые а;ьбМ соответствующего скалярного произведения и суммирует их для получения „своего" элемента с; матрицы С = АВ. Если мультипроцессор имеет газ ( п~ процессоров, то в этом случае целесообразно матрицы А и В разбить на квадратные блоки порядка М или менее и, применив к таким блокам алгоритм внешнего произведения, в соответствии с правилом умножения блочных матриц сложить полученные результаты и записать их в память по столбцам искомой матрицы С.

391 7.5. Операции е разреженными матрицами Представляет определенный интерес случай, когда мульти- процессор имеет 1у'~ ) п~ процессоров. Тогда, конечно, можно использовать лишь п~ процессоров в сочетании с алгоритмом внешнего произведения.

Но если количество параллельно работающих процессоров равно нз, возможно применение еще одного варианта распараллеливания алгоритма перемножения квадратных матриц порядка п. Дело в том, что при этом необходимо выполнить пз операций умножения, вычисляя и' скалярных произведений строк и столбцов, каждое из которых требует выполнения п операций умножения. Поэтому каждому из пз процессоров можно поручить выполнить лишь одну операцию умножения, а затем просуммировать и слагаемых каждого из п~ скалярных произведений по каскадной схеме. Отметим, что большинство вычислительных методов линейной алгебры, содержащих матричные операции, приводят к алгоритмам, реализацию которых наиболее просто осуществить на ЭВМ с последовательной или конвейерной архитектурой.

К ним, например, можно отнести метод Гаусса исключения неизвестных и метод прогонки [П1]. Но и для таких методов можно построить алгоритмы с распараллеливанием вычислений, эффективно реализуемые на ЭВМ с матричной архитектурой". 7.5. Операции с разреженными матрицами Преобразование многих математических моделей (ММ) технических объектов приводит к матрицам с большим количеством нулевых элементов. Такие матрицы принято называть разреженными (или слабозаполненнмми). Строгое определение разреженной матрицы отсутствует. Один из критериев разреженности связан с ограничением числа ненулевых элементов в строке от 2 до 10. Другой критерий устанавливает для квадратных матриц порядка и число ненулевых элементов, равное п1+', где у Е (0,1).

Так, для матриц, 'Сы.; Валлх Е.; Галуа Дж., Вон Лоук Ч:, Хокни Р., Джееехоу~ К. 392 7. АЛГОРИТМИЗАЦИЯ МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ полученных преобразованием ММ электрических систем, обычно у = 0,2. Однако на практике матрицу считают разреженной, если имеет смысл извлекать выгоду из того, что многие ее элементы равны нулю*. Поэтому свойство разреженности матрицы тесно связывают со способами ее экономного хранения в памяти ЭВМ и с алгоритмами, позволяющими при вычислениях с ней повысить производительность ЭВМ. Разреженная матрица является множеством ненулевых элементов, нерегулярно расположенных по строкам и столбцам.

Поэтому ее ненулевые элементы не удается хранить в памяти ЭВМ столь простым способом, как элементы обычной матрицы. Если ограничиться хранением значений ненулевых элементов разреженной матрицы, то придется хранить и так называемую индексную информацию, указывающую номера строки и столбца каждого такого элемента. Этот способ часто не является самым рациональным. Более рациональны способы хранения разреженной матрицы, связанные с запоминанием определенной доли нулевых элементов.

Способ, оставляющий при хранении меньшее число нулевых элементов, обычно более сложен, а алгоритм обработки матрицы в такой записи труднее программировать. Так как операции с матрицами можно свести к операциям скалярного умножения векторов, соответствующих столбцам и строкам матриц, и покоординатного сложения векторов (см. 7.2), то применительно к разреженным матрицам достаточно рассмотреть особенности хранения, сложения и умножения векторов с большим количеством нулевых координат.

Такие векторы принято называть раэреженньиаи. Ясно, что это частный случай разреженной матрицы, имеющей только один столбец или одну строку. Один из вариантов хранения разреженного вектора а размера п в памяти ЭВМ требует двух массивов длиной п„соответствующей числу ненулевых координат этого вектора. В массив 393 7.е. Операции с раарежеииыми матрицами АВ в любой последовательности записывают значения ненулевых координат ц;, а соответствующие им номера (индексы г) хранят в массиве АХ.

В этом случае число па е М необходимо хранить отдельно. В другом варианте хранения массив АВ остается прежним, а в массиве АМ длиной па+1 в последней позиции записывают нуль в качестве признака окончания списка индексов. Этот вариант хранения называют компактным неупорядоченным. Рассмотрим на конкретном примере операцию сложения двух разреженных векторов а и Ь размера п. Пусть информация об этих векторах записана в массивах АМ = (10, 3, 7, 4) и АВ = (0,2, 0,3, 0,4, — 0,7) длиной и, = 4 и массивах ВЖ = = (5,4,10) и АВ= (0,6,0,7, 0,5) длиной па = 3 соответственно. Используя эту информацию, можно было бы последовательно просматривать массивы АХ и ВХ и в конце каждого этапа просмотра складывать соответствующие координаты векторов. Так, чтобы найти первую координату с1 = а1+ Ь1 вектора с = а+Ь,необходимо, просмотрев эти массивы, убедиться,что ни в одном из них нет числа 1, т.е.

и а1 = О, и Ь1 = О, и лишь после этого вычислить с1 = О. Затем аналогичным образом установить, что се = О. При третьем просмотре удастся обнаружить, что в массиве АИ есть число 3 и ему в массиве АВ соответствует аз = 0,3, но в массиве ВМ нет числа 3 и поэтому Ьз = О, так что в итоге сз = аз + Ьз = 0,3. Следовательно, при вычислении каждой из п координат вектора с приходится просматривать массивы АМ и ВЖ. С учетом выполнения операций сложения общее число элементарных операций составит примерно п(па+ па), что при достаточно большом значении п делает такой алгоритм весьма неэффективным'.

Более эффективным является алгоритм, в котором выделены так называемые индексный и вычислительный этапы и они выполняются последовательно. На индексном этапе объединяют массивы АЛ и ВМ в одном массиве 1С длиной и и 'См.: Писсаиеции С. 394 7. АЛГОРИТМИЗАЦИЯ МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ одновременно формируют массив СМ индексов ненулевых координат с, вектора с. Эти координаты предстоит найти на вычислительном этапе алгоритма, но предварительно подробнее рассмотрим процедуру формирования массивов 1С и СЛ. Перед объединением массивов АФ и ВМ в массив 1С длиной п, называемый массивом переключателей, засылают нули. Затем из двух массивов АФ и ВФ выбирают более длинный (при п, = пь выбор произволен) и в результате его просмотра заменяют в массиве 1С нули на условленное число-переключатель (например, на число 1) в тех позициях, номера которых соответствуют числам в выбранном массиве.

Характеристики

Тип файла
DJVU-файл
Размер
4,18 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Зарубин В.С., Крищенко А.П
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6447
Авторов
на СтудИзбе
306
Средний доход
с одного платного файла
Обучение Подробнее