Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Распараллеливание расчетов




Методы повышения производительности традиционных ЭВМ

В Кембридже в 1949 году компьютер EDSAC мог выполнить 100 арифметических операций в секунду. Время такта составляло 2 микросекунды. У одного из узлов современной суперЭВМ Hewlett-Packard V2600 время одного такта составляет 1,8 наносекунды. При этом пиковая производительность примерно 77 миллиардов арифметических операций. Получается, что при выигрыше в быстродействии в 1000 раз, увеличение производительности составило 700 000 000 раз. За счет чего? Ответ прост – за счет использования новых архитектур. Основной является параллельная обработка данных.

Но все не так просто. А какой тип процессоров выбрать, какую память надо взять? И это далеко не полный список вопросов. Чтобы разобраться во всем многообразии возможных решений рассмотрим возможные методы такого ускорения.

Самое простое предположение, что Р процессоров выполнят задачу в Р раз быстрее, чем один, срабатывает только в идеальном случае. Обычно, дела обстоят не так уж хорошо, что иллюстрирует закон Амдала:

, (2.1)

где S – ускорение работы программы на P процессорах; f – доля непараллель­ного кода в программе.

Эту формулу можно применять как для моделей с общей памятью, так и для модели передачи сообщений. Но для разных моделей понятие величина f представляет разные показатели. Для модели общей памяти эту долю образуют операторы, которые выполняются только в главной нити программы. В модели передачи сообщений непараллельная часть – это часть операторов, которые дублируются всеми процессорами. Напрямую, просто взглянув на код программы, оценить величину f практически невозможно. Это позволяет сделать только просчет на различном числе процессоров. Для наглядности можно привести следующую таблицу:

Таблица 2.1.

Ускорение работы программы в зависимости от
доли непараллельного кода [3]

Число процессоров Доля последовательных вычислений %
         
Ускорение работы программы
  1.60 2.28 3.07 3.48 3.77
  1.78 2.91 4.71 5.93 7.02
  1.88 3.36 6.40 9.14 12.31
  1.94 3.66 7.80 12.55 19.75
  1.99 3.97 9.83 19.28 45.63

 

Как видно из таблицы, если доля последовательного кода составляет 2%, то более чем в 50 раз ускорить процесс нельзя. Но, чтобы получить такое ускорение, запускать программу на 1024 (и более) процессорах ни к чему. Приемлемым может оказаться выполнение задачи и на 32 процессорах. Закон Амдала всего лишь устанавливает максимальное число процессоров, на которых будет выполняться программа с заданной эффективностью, при указанной доле непараллельного кода. Причем, в этой формуле не учитываются потери производительности при обмене информацией между процессорами. Поэтому, в реальности ситуация будет еще хуже.

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




Поделиться с друзьями:


Дата добавления: 2014-12-07; Просмотров: 563; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.