Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Большие задачи и параллельные вычисления


Введение

 

Прошло немногим более 60 лет с момента появления первых электронных вычислительных систем. За это время сфера их применения охватила практически все области человеческой деятельности. Сегодня невозможно представить себе эффективную организацию работы без применения вычислительных систем в таких областях, как планирование и управление производством, проектирование и разработка сложных технических устройств, издательская деятельность, образование – словом, во всех областях, где возникает необходимость в обработке больших объемов информации. Однако наиболее важным по-прежнему остается использование их в том направлении, для которого они собственно и создавались, а именно, для решения больших задач, требующих выполнения громадных объемов вычислений. Такие задачи возникли в середине прошлого века в связи с развитием атомной энергетики, авиастроения, ракетно-космических технологий и ряда других областей науки и техники.

 

 

Что же такое параллельные вычислительные системы?

 

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

В настоящее время даже мощные персональные компьютеры соответствуют этому определению, так как имеют в своем составе многоядерные (двух-, четырех-, шестиядерные – по состоянию на начало 2011 г.) процессоры. Однако, в более «узком» смысле под параллельными вычислительныи системами подразумевают системы, состоящие из значительно большего числа ядер (тысячи, десятки, сотни тысяч и более).

 

 

Если создают большие параллельные вычислительные системы, значит они для чего-то нужны. Это что-то — большие задачи, которые постоянно возникают в са­мых различных сферах деятельности. Практическая потребность или просто любознательность всегда ставили перед человеком трудные вопросы, на ко­торые нужно было получать ответы. Строится высотное задание в опасной зоне. Выдержит ли оно сильные ветровые нагрузки и колебания почвы? Проектируется новый тип самолета. Как он будет вести себя при различных режимах полета? Уже сейчас зафиксировано потепление климата на нашей планете и отмечены негативные последствия этого явления. А каким будет климат через сто и более лет?

Подобного рода вопросы сотнями и тысячами возникают в каждой области. Уже давно разработаны общие принципы поиска ответов. Первое, что пыта­ются сделать, — это построить математическую модель, адекватно отражаю­щую изучаемое явление или объект. Как правило, математическая модель представляет собой некоторую совокупность дифференциальных, интеграль­ных, алгебраических или каких-то других соотношений, определенных в об­ласти, так или иначе связанной с предметом исследований. Решения этих со­отношений и должны давать ответы на поставленные вопросы.



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

Если математическая модель построена, то следующее, что надо сделать, — это разработать алгоритм решения задачи, описывающей модель. Довольно часто в его основе лежит принцип дискретизации изучаемого объекта и, ес­ли необходимо, окружающей его среды. Исследуемый объект и среда разбиваются на отдельные элементы и на эти элементы переносятся связи, дик­туемые математической моделью. В результате получаются системы уравне­ний с очень большим числом неизвестных. В простейших случаях число не­известных пропорционально числу элементов. Для сложных моделей оно на несколько десятичных порядков больше. Вообще говоря, чем мельче выби­рать элементы разбиения, тем точнее получается результат. В большинстве задач уровень разбиения определяется только возможностью вычислительной системы решить возникающую систему уравнений за разумное время. Но в некото­рых задачах, таких как изучение структуры белковых соединений, расшиф­ровка геномов живых организмов, разбиение по самой сути может доходить до уровня отдельных атомов. И тогда вычислительные проблемы становятся исключительно сложными даже для самых мощных вычислительных систем, в том числе, параллельной структуры.

Во все времена были задачи, решение которых находилось на грани воз­можностей существовавших средств. Вплоть до середины двадцатого столе­тия единственным вычислительным средством был человек, вооруженный в лучшем случае арифмометром или электрической счетной машиной. Ре­шение наиболее крупных задач требовало привлечения до сотни и более расчетчиков. Так как вычисления они проводили одновременно, то по су­ществу такой коллектив своими действиями моделировал работу многопро­цессорной вычислительной системы. Роль отдельного процессора в этой системе выполнял отдельный человек. При подобной организации вычисле­ний никак не могло появиться большое число крупных задач. Их просто некому было считать. Поэтому еще 50—60 лет назад весьма распространен­ным являлось мнение, что несколько мощных вычислительных систем смогут решить все практически необходимые задачи.

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

Большие задачи и вычислительные системы представляют две взаимосвязанные сферы деятельности, два конца одной веревки. Если был один конец — большие задачи, значит, должен был появиться и другой — большие и сверхбольшие (по характеристикам) вычислительные системы. Потребность в решении больших задач заставляет создавать более совершенные вычислительные системы. В свою очередь, более совершенные вычислительные системы позволяют улучшать математические модели и ставить еще большие задачи. В конце концов, обыкновенные вычислительные системы превратились в параллельные. Задачи от этого параллельными не стали, но начали развиваться алгоритмы с параллельной структурой вычислений. В результате опять появилась возможность увели­чить размеры решаемых задач. На очереди стоят оптические и кван­товые вычислительные системы. Конца этому процессу не видно.

 

 

<== предыдущая лекция | следующая лекция ==>
Что такое параллельные вычислительные системы и зачем они нужны | Большие задачи и большие вычислительные системы

Дата добавления: 2014-01-04; Просмотров: 839; Нарушение авторских прав?


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



ПОИСК ПО САЙТУ:


Рекомендуемые страницы:

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