Опубликован: 17.08.2014 | Уровень: для всех | Доступ: свободно | ВУЗ: Санкт-Петербургский государственный университет
Лекция 3:

Обработка и хранение информации

Суперкомпьютеры и кластеры

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

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

Чаще всего авторство термина приписывается Д. Мишелю и С. Фернбачу, в конце 60-х годов XX века, работавшим в Ливерморской национальной лаборатории и компании Control Data Corporation. Тем не менее, известен факт, что ещё в 1920 году в газете New York World рассказывалось о "супервычислениях" (Super Computing), выполняемых при помощи уникального мощного табулятора IBM, собранного по заказу Колумбийского университета.

Термин "суперкомпьютер" вошёл в общеупотребительный лексикон благодаря распространённости компьютерных систем американца Сеймура Крея - Control Data 6600, Control Data 7600, Cray-1, Cray-2, Cray-3 и Cray-4. ( рис. 3.20). С. Крей разрабатывал вычислительные машины, которые, по сути, становились основными вычислительными средствами правительственных, промышленных и академических научно-технических проектов США с середины 60-х годов до 1996 года.

"Cray-2" - самый быстрый компьютер 90-х годов ХХ века

Рис. 3.20. "Cray-2" - самый быстрый компьютер 90-х годов ХХ века

Не случайно в то время одним из популярных определений суперкомпьютера было следующее: "любой компьютер, который создал Сеймур Крей". Сам Крей никогда не называл свои детища суперкомпьютерами, предпочитая использовать вместо этого обычное название "компьютер".


На сегодняшний день суперкомпьютеры являются уникальными системами, создаваемыми "традиционными" лидерами компьютерного рынка, такими как IBM, Hewlett-Packard, NEC и другими, которые приобрели множество ранних компаний, вместе с их опытом и технологиями. Компания Cray Inc. по прежнему занимает достойное место в ряду производителей суперкомпьютерной техники.

Большинство суперкомпьютеров 70-х годов ХХ века оснащались векторными процессорами. К началу и середине 80-х небольшое число (от 4 до 16) параллельно работающих векторных процессоров практически стало стандартным суперкомпьютерным решением. Типичный векторный компьютер включает в себя скалярный процессор целочисленной арифметики, функциональные блоки сложения и умножения чисел с плавающей точкой, векторный процессор и общую память. Это компьютеры, построенные по технологии < разделяемая память - один поток управления - много потоков данных > (<Shared Memory - Single Instruction - Multi Data>).

Конец 80-х и начало 90-х годов охарактеризовались сменой магистрального направления развития суперкомпьютеров от векторно-конвейерной обработки данных к большому и сверхбольшому числу параллельно соединённых скалярных процессоров.

Массивно-параллельные системы стали объединять в себе сотни и даже тысячи отдельных процессорных элементов, причём ими могли служить не только специально разработанные, но и общеизвестные и доступные в свободной продаже процессоры. Большинство массивно-параллельных компьютеров создавалось на основе мощных процессоров с архитектурой RISC (Reduced Instruction Set Computer), наподобие Power PC, или PA-RISC. Использование серийных микропроцессоров позволило не только гибко менять мощность установки в зависимости от потребностей и возможностей, но и значительно удешевить производство. Примерами суперкомпьютеров этого класса могут служить Intel Paragon, IBM SP, Сray T3D/T3E и ряд других.

В ноябре 2002 года фирма Cray Inc. анонсировала решение Cray X1 с характеристиками 52,4 Тфлопс и 65,5 Тб ОЗУ (флопс - термин от английского словосочетания Floating Point, означающего вычисления с плавающей точкой). Его стартовая цена начинается с 2,5 млн. долларов. Этим комплексом сразу заинтересовался испанский метеорологический центр. В это же время был опубликован список Top 500 (http://www.top500.org), в который входят вычислительные системы, официально показавшие максимальную производительность. Его возглавила "Компьютерная модель Земли" (Earth Simulator) с результатом 35,86 Тфлопс (5120 процессоров), созданная одноименным японским центром и NEC. На втором - четвертом местах со значительным отставанием расположились решения ASCI (7,7; 7,7 и 7,2 Тфлопс). Они эксплуатируются Лос-Аламосской лабораторией ядерных исследований, а созданы Hewlett-Packard (первые два насчитывают по 4096 процессоров) и IBM (8192 процессора).

Петафлопсный рубеж (тысяча триллионов операций с плавающей запятой в секунду) компания Cray Inc. обещала преодолеть к концу первого десятилетия ХХ века. Схожие сроки посулили японцы - и они сдержали свое слово! В списке Тор-500, версия ноября 2011 года, на первой позиции стоял японский суперкомпьютер "K-computer" компании Fujitsu. Суперкомпьютер установлен в RIKEN Advanced Institute for Computational Science (AICS). Компьютерная система содержит 548352 вычислительных ядра, объединенных в 68544 процессора. И наконец, на рис. 3.21 представлен чемпион списка Тор-500 2013 года.

Китайский суперкомпьютер Tianhe-2, июнь 2013 г.

Рис. 3.21. Китайский суперкомпьютер Tianhe-2, июнь 2013 г.

Однако уникальные решения с рекордными характеристиками обычно недешевы, поэтому и стоимость подобных систем никак не может быть сравнима со стоимостью систем, находящихся в массовом производстве и широко используемых в бизнесе. Прогресс в области сетевых технологий сделал свое дело: появились не слишком дорогие, но эффективные решения, основанные на коммуникационных технологиях. Это и предопределило появление кластерных вычислительных систем, фактически являющихся одним из направлений развития компьютеров с массовым параллелизмом (Massively Parallel Processing - MPP).

Вычислительный кластер - это совокупность компьютеров, объединенных в рамках некоторой сети для решения крупной вычислительной задачи. В качестве узлов обычно используются доступные однопроцессорные компьютеры, двух- или четырехпроцессорные SMP-серверы (Symmetric Multi Processor). Каждый узел работает под управлением своей копии операционной системы, в качестве которой чаще всего используются стандартные операционные системы: Linux, NT, Solaris и т. п. Рассматривая крайние точки зрения, кластером можно считать как пару персональных компьютеров, связанных локальной 10-мегабитной сетью Ethernet, так и обширную вычислительную систему, создаваемую в рамках крупного проекта. Такой проект объединяет тысячи рабочих станций на базе процессоров Alpha, связанных вы-сокоскоростной сетью Myrinet, которая используется для поддержки параллельных приложений, а также сетями Gigabit Ethernet и Fast Ethernet для управляющих и служебных целей.

Состав и мощность узлов может меняться даже в рамках одного кластера, давая возможность создавать обширные гетерогенные (неоднородные) системы с задаваемой мощностью. Выбор конкретной коммуникационной среды определяется многими факторами: особенностями класса решаемых задач, доступным финансированием, необходимостью последующего расширения кластера и т. п. Возможно включение в конфигурацию специализированных компьютеров, например, файл-сервера, и, как правило, предоставлена возможность удаленного доступа на кластер через Internet.

На современном рынке представлено не так много поставщиков готовых крупных кластерных решений. Это связано, прежде всего, с доступностью комплектующих, легкостью построения самих систем, значительной ориентацией на свободно распространяемое про-граммное обеспечение, а также с уникальностью задач, решаемых с помощью кластерных технологий. В связи с этим многие корпоративные и университетские ИТ-команды оказались способными самостоятельно формировать свои кластерные сети. Среди наиболее известных поставщиков кластеров стоит отметить SGI, VALinux и Scali Computer.

Летом 2000-го года Корнелльский университет (США) основал Консорциум по кластерным технологиям (ACCC - Advanced Cluster Computing Consortium), основная цель которого - координация работ в области кластерных технологий и помощь в осуществлении разработок в данной области. Ведущими компаниями, обеспечивающими инфраструктуру консорциума, стали ведущие производители компьютерного оборудования и программного обеспечения Dell, Intel и Microsoft. Среди других членов можно назвать Аргоннскую национальную лабораторию, Нью-Йоркский, Корнелльский и Колумбийский университеты, компании Compaq, Giganet, IBM, Kuck & Associates и другие.

Аналогично, в России в 2010 году при активном участии члена-корреспондента РАН Вл. В. Воеводина был организован Суперкомпьютерный консорциум университетов России. Цель создания Консорциума - использование научного потенциала Высшей школы России для развития и активного внедрения суперкомпьютерных технологий в образовании, науке, экономике, государственной и социальной жизни. Учредителями Консорциума стали крупные российские университеты, президентом - ректор МГУ, академик, вице-президент РАН В. А. Садовничий.

Из интересных российских проектов следует отметить решение, реализованное в Санкт-Петербургском университете на базе технологии Fast Ethernet (http://www.ptc.spbu.ru): собранные кластеры могут использоваться и как полноценные независимые учебные классы, и как единая вычислительная установка, решающая крупную исследовательскую проблему. В Самарском научном центре пошли по пути создания неоднородного вычислительного кластера, в составе которого работают компьютеры на базе процессоров Alpha и Pentium III. В Санкт-Петербургском техническом университете собрана вычислительная установка на основе процессоров Alpha и сети Myrinet без использования локальных дисков на вычислительных узлах. В Уфимском государственном авиационном техническом университете проектируется кластер на базе двенадцати Alpha-станций, сети Fast Ethernet и ОС Linux.

Технологии суперкомпьютерных и кластерных вычислений первоначально "выросли", в основном, из научных потребностей - для решения фундаментальных и прикладных задач физики, механики, астрономии, метеорологии, биологии, сопротивления материалов и т. д., где требовались огромные вычислительные мощности ( рис. 3.22).

Научные задачи и масштаб ExaScale

увеличить изображение
Рис. 3.22. Научные задачи и масштаб ExaScale

В каких рыночных нишах будет востребована подобная производительность? Прежде всего, это проектирование сложных управляемых систем (самолетов, ракет, космических станций), создание синтетических лекарств с заданными свойствами, генная инженерия, предсказание погоды и природных катаклизмов, повышение эффективности и надежности атомных электростанций, прогнозирование макроэкономических эффектов и многое другое.

Компьютеры следующего поколения

Размеры вычислительных устройств постоянно уменьшаются. Когда-то предполагалось, что более мощные машины будут требовать больше места для периферийных устройств, памяти и т. д. Это предположение оказалось неверным. В 1965 году Гордон Мур сформулировал действующее и сейчас правило, названное законом Мура, согласно которому производительность вычислительных систем удваивается каждые восемнадцать месяцев [31]. Г. Мур вывел свой эмпирический закон, построив зависимость числа транзисторов в интегральной микросхеме от времени ( рис. 3.23). Как следствие из этого закона можно вывести темпы миниатюризации отдельного транзистора.

Копия записки с формулировкой закона Г.Мура

Рис. 3.23. Копия записки с формулировкой закона Г.Мура

Ежегодное уменьшение на 10-30 % элементарных вычислительных модулей приведет в ближайшие годы к практическому использованию устройств с элементарными модулями размером примерно в 100-200 ангстрем (10-20 нм, или 0,01-0.02 мк). Другими словами, быстрое развитие цифровых электронных технологий приводит к тому, что размер элементарного вычислительного устройства приближается к размеру молекулы или даже атома.

На таком уровне законы классической физики перестают работать и начинают действовать квантовые законы, которые для многих важных динамических задач еще не описаны теоретически. Для описания работы таких устройств не применимы классические объекты и методы информатики. В частности, в силу квантового принципа неопределенности Гейзенберга, в таких микроскопических системах нет аналога понятию "bit". Вместо двоичных цифр новые устройства будут оперировать с "волновыми функциями" ("квантовыми битами" - q-bit). В некотором смысле информатика в своем развитии в недалеком будущем должна будет перейти от "арифметики" к "функциональному анализу". С одной стороны, это обуславливает переосмысление и замену основных классических (не квантовых) алгоритмов, а с другой стороны, дает возможность вплотную подступиться к решению проблем "искусственного интеллекта".

В научно-исследовательских лабораториях крупнейших университетов и транснациональных ИТ-компаний рассматриваются несколько возможных основных направлений создания элементной базы нового поколения вычислительных устройств [32]:

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

Многие из рассмотренных направлений имеют существенные недостатки, которые в некоторых случаях приводят к принципиальной невозможности создания конкурентоспособного вычислительного устройства. Характерным примером является проект корпорации IBM, которая в 1999 году только на первый этап разработки молекулярной элементной базы нового поколения выделила 17 млрд. долларов на 5 лет. В результате был создан макет, оперирующий с 5 или 7 квантовыми битами, и весом около 7 тонн, способный решать только примитивные задачи типа разложения числа 15 на два множителя 5 и 3.

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