Шаг 3.
Параллельные алгоритмы.
Современные направления развития параллельных вычислительных систем

    На этом шаге мы перечислим основные направления развития параллельных вычислительных систем.

    В настоящее время началось широкое использование двуядерных микропроцессоров Pentium D, Xeon, Itanium 2, Opteron и IBM POWER5. В ближайшей перспективе ожидается появление процессоров и с большим количеством ядер. Представители компании Intel уже объявили о предстоящем начале выпуска в ближайшее время 6-ядерных процессоров Clovertown. Фирма IBM в 2007 году начала выпуск процессора Cell с 9 ядрами, каждое из которых выполняет одновременно по два потока. Кластер, построенный на этих процессорах, был продемонстрирован на выставке CeBIT в марте 2006 года в Ганновере.

    Отметим, что все ядра - как некоторых уже выпускаемых процессоров, например Pentium D и IBM POWER5, так и перспективных процессоров Cell - могут выполнять одновременно по два параллельных потока. Таким образом, даже персональный компьютер с одним процессором Pentium D позволяет выполнять одновременно до 4 процессов. То есть обычный персональный компьютер с одним из таких процессоров является параллельной вычислительной системой с общей памятью (SMP-системой). Поэтому освоение эффективного инструментария для программирования на таких системах является очень актуальной и важной задачей подготовки и переподготовки специалистов в области программирования.

    В связи с развитием параллельных возможностей современных микропроцессоров в настоящее время можно выделить три основных направления в развитии параллельных вычислительных систем.

    Во-первых, это многоядерность, когда несколько ядер находятся в корпусе одного процессора.

    Во-вторых, это технологии с явным параллелизмом команд (EPIC - Explicitly Parallel Instruction Computing). Архитектура всех современных 64-разрядных процессоров Intel построена на использовании технологии EPIC. Параллелизм сегодня стал главным ресурсом наращивания вычислительной мощности компьютеров. Существенным препятствием к параллельному выполнению программ являются так называемые точки ветвления, в которых решается вопрос, по какому из нескольких возможных путей пойдет выполнение программы после этой точки. Чем более совершенным является механизм предсказания ветвлений, тем лучше может быть распараллелена программа. При наличии избыточных вычислительных ресурсов можно начать выполнять сразу два возможных направления работы программы, не дожидаясь, пока ее основная ветвь дойдет до точки ветвления. После того как программа достигнет точки ветвления, можно уже окончательно выбрать результаты, полученные по одной из возможных ветвей. Сущность EPIC заключается в том, что блок предсказаний ветвлений выносится из аппаратной логики процессора в компилятор. Анализируя программу, компилятор сам определяет параллельные участки и дает процессору явные инструкции по их выполнению - отсюда и следует название архитектуры EPIC. Модернизация компилятора гибче и проще, чем модификация аппаратной части параллельной вычислительной системы. Например, можно установить новую версию компилятора и посмотреть, как это отразится на скорости работы прикладных программ, создаваемых с помощью этого компилятора. При этом следует иметь в виду, что изменить устройство процессора в уже работающей вычислительной системе невозможно. Установленный процессор можно только заменить на новый, подходящий для данной системы процессор, если таковой имеется в наличии. Поэтому архитектура EPIC позволяет более эффективно модифицировать работающие вычислительные системы за счет установки более совершенных версий компилятора.

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

    Главная задача в развитии вышеперечисленных направлений - существенное повышение производительности вычислительных систем. Без развития параллельных технологий решить задачу повышения производительности вычислительных систем в настоящее время не представляется возможным, поскольку современные технологии микроэлектроники подошли к технологическому барьеру, препятствующему дальнейшему существенному увеличению тактовой частоты работы процессора и изготовлению процессоров по технологиям, существенно меньшим 15 нанометров.

    На следующем шаге мы рассмотрим классификацию вычислительных систем.




Предыдущий шаг Содержание Следующий шаг