Паралельные вычисления в Matlab

  • 08 сент. 2010 г.
  • 4158 Слова
Белорусский государственный университет
Механико-математический факультет
Кафедра численных методов и программирования

Курсовая работа

Параллельные вычисления в MATLAB

Выполнила Кульгавая Елена Александровна,
студентка 3 курса 2 группы, специальность
Web-программирование и Internet-технологииНаучный руководитель
Профессор Волков Василий Михайлович

Минск, 2010

Содержание

1. Введение ……………………………………………………………………… 3

Параллельные вычисления ……………………………………………... 3

Математическая основа параллельных вычислений…………………..4

2. Основная часть……………………………………………………………….. 5

1. Среда MATLAB…………………………………………………………..5

Для чего нужен параллельный MATLAB……………………………….5

Почему именно MATLAB………………………………………………..7

2. Parallel Computing Toolbox……………………………………………….8

Главные свойства…………………………………………………………8

3. Разработка параллельных приложений в MATLAB…………………..10

Параллельный цикл……………………………………………………...10

Пример параллельного цикла for……………………………………….114. Цикл parfor……………………………………………………………….13

Когда использовать parfor……………………………………………....13

Создание цикла parfor …………………………………………………..13

Различия между циклами for и parfor…………………………………..14

5. Параллельные вычисления с pmode……………………………………16

Принцип работы…………………………………………………………16

Запуск pmode ……………………………………………………………16

6. Списокфункций параллельного MATLAB……………………………19

7. Примеры программирования параллельных задач……………………20

Вычисление определенного интеграла………………………………...20

Последовательное и параллельное перемножение……………………21

3. Заключение…………………………………………………………………...24

4. Глоссарий……………………………………………………………………. 25

5. Список литературы…………………………………………………………..26

6.Приложение…………………………………………………………………..27

Введение

Параллельные вычисления

Многие задачи требуют вычислений с большим количеством операций, которые занимают значительные ресурсы даже на современной технике, более того, можно с уверенностью считать, что каких бы скоростей ни достигла вычислительная техника, всегда найдутся задачи, на решение которых потребовалось бы значительное время. Многие из таких сложных задач требуют, чтобы результатбыл получен за как можно меньшее время, или даже строго ограниченное. Так, современные проблемы "большого вызова" возможностям современной науки и техники: моделирование климата, генная инженерия, проектирование интегральных схем, анализ загрязнения окружающей среды, создание лекарственных препаратов и др., - требуют для своего анализа ЭВМ с производительностью более 1000 миллиардов операций сплавающей запятой в сек. (1 террафлопс). С другой стороны представляет большую техническую проблему уменьшение времени исполнения каждой операции в микропроцессоре. Очевидным способом увеличить скорость вычислений было бы применение не одного вычислительного устройства, а нескольких, работающих совместно над решением одной задачи. Такой подход носит название параллельных вычислений. Несмотря на кажущуюсяпростоту решения, оно является подчас весьма нетривиальной задачей по проектированию вычислительной техники и разработке алгоритмов. Первая проблема кроется в том, что для того, чтобы задачу можно было решить с помощью параллельных вычислений, алгоритм её решения должен допускать распараллеливание, мало того, далеко не каждая задача может быть решена параллельным алгоритмом. Другой же, не менее важнойпроблемой является построение системы, на которой бы возможна была реализация параллельных вычислений.
Параллельные вычисления могут ускорить оптимизационный процесс, при условии, что вычисления требуют намного больше времени, чем отправка, получение и обработка данных. Однако, эффективное планирование операций и контроль системы –...