дизайн
дизайн
Новости → Параллельные вычисления на примере бабуинов
05.09.2012

Параллельные вычисления на примере бабуинов

Интерес к параллельному программированию и параллельным вычислительным системам постоянно растет. Причина проста – существуют физические ограничения на рост тактовой частоты процессоров и вычислительную мощность каждого их ядра, а сложность решаемых задач и соответственно время их выполнения продолжают активно возрастать. Поэтому параллельные вычисления стали доминирующей парадигмой в архитектуре компьютеров, выражающейся в основном в форме многоядерных процессоров. В ходе Летней школы Microsoft Research по параллельным вычислениям, стартовавшей 23 августа в Санкт-Петербурге, Бертран Мейер (Bertrand Meyer), создатель объектно-ориентированного языка программирования Eiffel, профессор Швейцарского федерального института технологий в Цюрихе (ETH Zurich) и Санкт-Петербургского НИУ ИТМО, представил весьма интересный график роста числа транзисторов процессоров, их тактовой частоты, потребляемой мощности и приведенной производительности. По закону Мура количество транзисторов, размещаемых на кристалле интегральной схемы, удваивается примерно каждые 24 месяца. На графике, представленном г-ном Мейером, тем не менее видно, что, несмотря на рост числа транзисторов на единицу площади, рост тактовой частоты процессоров сначала замедлился (это стало заметно уже в середине прошлого десятилетия), а сейчас и вовсе практически остановился. Потребляемая процессорами мощность и показатель ILP (Instruction Level Parallelism), полученный в результате деления производительности процессора на его тактовую частоту, тоже вышли на плато и стремятся к асимптоте. Интересно, что еще в 2007 году Гордон Мур заявил, что закон, носящий его имя, очевидно, скоро перестанет действовать из-за атомарной природы вещества и ограничения скорости света. Однако рост скорости вычислений в настоящее время в значительной степени достигается за счет распараллеливания процесса решения вычислительных задач между ядрами процессоров. Идея параллельного программирования не нова, тем не менее несмотря на сложности в написании параллельных программ, требующих больших затрат ручного труда, Бертран Майер озаглавил свой доклад «Параллельное программирование – это просто», еще раз показав, как важно излагать даже объективно сложные вещи в доступном слушателям ключе. В частности, сущность синхронизации параллельных вычислений с помощью семафоров он описал на примере… бабуинов. «В Южной Африке в национальном парке Крюгера есть глубокий каньон, – сказал г-н Мейер, – берега которого соединяет одна веревка. Бабуин может легко пересечь каньон, но если два бабуина пойдут навстречу друг другу, они начнут драться, и оба упадут в пропасть. При этом веревка может выдержать одновременно только трех бабуинов – если бабуинов больше, она порвется. Но обезьяны умеют пользоваться семафорами! Чтобы все бабуины безопасно переходили каньон, используются следующие правила. 1) Если бабуин начал переходить по веревке, он гарантированно не встретит другого бабуина, который бы двигался ему навстречу. 2) Не должно быть больше трех бабуинов на веревке одновременно, причем выходят они с веревочной переправы в том же порядке, в котором заходили. 3) Запрещен непрерывный поток бабуинов в одном направлении (те, что остались на другом берегу, не должны голодать). Для этого применяется следующее правило: если бабуин подошел к веревке с левой стороны раньше, чем тот, что пришел справа, первым начнет переходить именно левый бабуин, и наоборот. То есть кто первым пришел, того и веревочка». Неудивительно, что слушатели «Летней школы» внимали выступлению Бертрана Мейера с живым интересом. Аудиторию слушателей 4-й «Летней школы параллельных вычислений Microsoft Research» в Санкт-Петербурге составили 67 студентов и аспирантов из России, Белоруссии, Украины и Казахстана. Все они прошли жесткий отбор – порядка девяти человек на место (число претендентов превысило 600 человек). Кстати, в своем выступлении Дмитрий Иванников, директор департамента по работе с государственными и общественными организациями Microsoft в России, отметил, что со стремительным ростом числа вычислительных устройств в мире число людей, которые могут создавать «начинку» для них, почти не увеличивается, в том числе и в России. «Если бы сейчас число студентов IT-специальностей выросло в четыре-пять раз, только тогда спрос и предложение на специалистов пришли бы в равновесие». «Я сталкивался с тем, что на нашем рынке специалисты – ключевые и имеющие узкую компетенцию – иногда стоят в разы дороже, чем в Западной Европе», – отметил Дмитрий Иванников. По его словам, кадровый голод не обходит стороной и грандов IT-отрасли. «Скажем, объявление о том, что компании Microsoft нужен архитектор по SharePoint, может провисеть полгода, – сказал он, – и ни одного резюме не придет. А если объявить, что требуется специалист по PR, в первый же день поступит уж точно, не менее 500 резюме», – подытожил свое выступление г-н Иванников. Сейчас, по словам Дмитрия, в России в компании Microsoft работает примерно тысяча человек, а уже в следующем году понадобится порядка 100-150 новых сотрудников. Обращаясь к участникам «Летней школы» Дмитрий Иванников дал им такой совет: «Хорошо подумайте, чем вам будет интересно заниматься в области программирования и готовьте себе бренд в этой области. Активно участвуйте в работе форумов, еще активно накапливайте реальный опыт выполнения проектов, который важнее различных титулов. Следите внимательно и за мероприятиями, которые проводит Microsoft, в числе которых чемпионат по программированию Microsoft Imagine Cup, причем в следующем году финал этого состязания пройдет в Санкт-Петербурге».

Яндекс цитирования Valid XHTML 1.0 Transitional