Одновременно с сенсационным представлением китайских суперкомпьютеров Tianhe-1, Nebulae и самого быстродействующего на конец 2010 года суперкомпьютера Tianhe-1A появились сведения о широкомасштабных разработках в Китае собственной микроэлектронной элементной базы. Отдельные ее образцы уже были применены в Tianhe-1A: это 64-тредовый микропроцессор FT-1000, а также коммуникационные СБИС сети Arch – NIC и NRC. В более мощных образцах суперкомпьютеров производительностью 10-100 PFLOPS планируется применение новых СБИС собственной разработки, в частности многоядерных суперскалярных микропроцессоров с мощными блоками обработки коротких векторов семейств Godson 3 и Godson 4; мультитредовых микропроцессоров нового поколения FT-1500 и FT-2000 с количеством аппаратно поддерживаемых тредов 128 и более.
В середине 2011 года лидером Тоp500 стал японский К computer, показавший пиковую производительность 8,773 PFLOPS и реальную 8,162 PFLOPS (93% пиковой), что в 3,18 раза превосходит Tianhe-1A и в 4,64 раза больше реальной производительности Cray Jaguar. В японском суперкомпьютере используются восьмиядерные процессоры SPARC VIII fx собственной разработки и шестимерная коммуникационная сеть Tofu на коммуникационных СБИС также собственного производства.
Появление новых китайских и японских суперкомпьютеров, причем на собственной элементной базе, – результаты проводимой этими странами мощной государственной поддержки отрасли суперкомпьютеров, четкой организации работ по пятилетним планам в рамках единых федеральных программ, координирующих деятельность разных ведомств. В 1991 году такая организация была в законодательном порядке впервые введена в США, а в 2004 и 2007 годах корректировалась. Вслед за Китаем и Японией, организовавшими свои ИТ-отрасли по похожей схеме, аналогичная законодательная база готовится сейчас в Южной Корее и обсуждается в Европе. Активная работа ведется и в других странах Тихоокеанско-Аазиатского региона, особенно выделяются Сингапур и Гонконг, а результаты проводимых в этих странах фундаментальных исследований и разработок в области микроэлектроники, оптики, материаловедения и нанотехнологий находят незамедлительное применение в Китае и Японии.
Тенденции суперкомпьютерной отрасли
Предстоящее десятилетие в отрасли суперкомпьютеров будет характеризоваться появлением новых технологий, отличающихся от современных. В зарубежных работах эти технологии даже принято называть экстремальными, в связи с требованием обеспечения большей на три порядка энергоэффективности, большей пиковой и реальной производительности, принципиально новых решений обеспечения отказоустойчивости и защиты от информационных атак, на порядок большей продуктивности применения суперкомпьютеров. Эти технологии должны повлиять на изделия всех сегментов рынка суперкомпьютеров, от персональных суперкомпьютеров до суперкомпьютеров стратегического назначения. Наиболее заметно проявление возможностей технологий в суперкомпьютерах высшего диапазона производительности, особенно тех, которые становятся известными широким массам через рейтинговые списки. По этим проявлениям и можно судить о мировых тенденциях.
До недавнего времени единственным широко известным рейтингом был Top500, отражающий возможности решения задач с хорошей пространственно-временной локализацией обращений к памяти (Сache Friendly, CF), что позволяет эффективно использовать быструю кэш-память. В конце 2010 года добавился список Graph500, отражающий возможности решения задач с интенсивным доступом к данным (Data Intensive System, DIS) с плохой пространственно-временной локализацией обращений к памяти. Современный уровень развития технологий позволяет создать суперкомпьютер с производительностью на задачах CF-класса, равной 10 PFLOPS, и в большинстве разработок этой целью и ограничиваются. В наиболее серьезных проектах цели сложнее. Например, суперкомпьютер IBM Blue Waters на задачах CF-класса должен был бы развить 10 PFLOPS, а на задачах DIS-класса – 1 PFLOPS.
Движение к экзафлопсу во всех развитых странах идет по двум направлениям: эволюционному – за счет развития уже имеющихся технологий и инновационному, базирующемуся на использовании вновь создаваемых технологий. Ответить определенно, какой путь окажется правильным, пока никто не берется. Китайские и японские исследования по микропроцессорам ближе к эволюционному направлению, а по коммуникационным СБИС они имеют более инновационный характер, ориентированы на создание иерархически организованных суперкомпьютеров того же типа, что и предлагаемый в IBM Blue Waters.
Китай
Отправная точка «китайского пути» к петафлопсным системам – суперкомпьютер Tianhe-1A, разработанный в Национальном университете оборонных технологий: пиковая производительность – 4,7 PFLOPS; реальная – 2,5 PFLOPS (70% этой производительности дают графические ускорители); энергопотребление – 4 MВт; 14 336 шестиядерных 12-тредовых процессоров общего назначения Xeon X5670 (Westmere); 7168 графических сопроцессоров nVidia Tesla M2050 (Fermi); 2048 мультитредовых процессоров FT-1000 (китайский усовершенствованный вариант Sun Niagara T2); сеть Arch с топологией «толстое дерево» и выделенными иерархическими уровнями сильной связности (рис. 1), в которой применяются микросхемы китайского производства – сетевой адаптер и 16-портовый маршрутизатор NRC, изготовленные по технологии 90 нм.
Рис. 1. Иерархическая сеть Arch с топологией «толстое дерево» (свернутая сеть Клоса) |
Tianhe-1A имеет вычислительные и сервисные узлы. Вычислительный узел – два Xeon 5670 и один графический Tesla M2050, память. Сервисный узел — два мультитредовых процессора FT-1000, память. Один конструктивный модуль содержит два вычислительных или четыре сервисных узла. Восемь модулей (каждый модуль – 16 вычислительных узлов или 32 сервисных) образуют фрейм, девятая плата фрейма – коммуникационная плата с восемью маршрутизаторами NRC, которые обеспечивают сильную связность узлов фрейма, а также с узлами других фреймов в стойке. В стойке размещаются четыре фрейма, соединения внутри стойки электрические. Эти же маршрутизаторы NRC обеспечивают через мосты и оптические линки связь с верхним уровнем коммутации – одиннадцатью 384-портовыми коммутаторами, которые также построены на маршрутизаторах NRC. Линки NIC и NRС двусторонние, с пропускной способностью 8 Гбайт/с в одну сторону, а интерфейс NIC с процессором имеет дуплексную пропускную способность 8 Гбайт/с.
Tianhe-1A имеет 112 стоек с вычислительными узлами и восемь стоек с сервисными узлами. Общий объем оперативной памяти — 262 Tбайт, а дисковой памяти – 2 Пбайт.
Важная особенность Tianhe-1A – сеть Arch, позволяющая за счет своей большой связности и иерархичности приблизиться к перспективным суперкомпьютерам с общей памятью, поддерживающей одностороннее взаимодействие процессов.
Еще одна особенность Tianhe-1A – применение огромного количества мультитредовых процессоров FT-1000, обеспечивающих вычислительную часть на суперскалярных и графических микропроцессорах вычислительными заданиями и данными. Эти процессоры применяются в системе динамического распараллеливания программ в процессе счета, что будет важно в перспективе, поскольку экзафлопсные системы должны одновременно выполнять более 109 параллельных процессов, но сегодня опыта такого распараллеливания пока нет ни у кого.
Другой китайский суперкомпьютер Dawning 6000 разрабатывается в Институте информационных технологий Академии наук Китая и содержит вычислительную и сервисную части. Вычислительная часть будет состоять из 1000 1U-гиперузлов, каждый из которых включает восемь процессоров Godson 3B китайского производства и один процессор AMD Opteron для выполнения задач управления. Сервисная часть строится на зарубежных универсальных и графических процессорах. Именно сервисная часть этого суперкомпьютера в виде системы Nebulae была представлена в списке Top500 летом 2010 года.
Процессоры серии Godson 3 – наиболее интересное явление на современном рынке микропроцессоров, они будут применяться в последующих версиях стратегических суперкомпьютеров Tianhe, а также в других изделиях вплоть до персональных суперкомпьютеров. Идеологию архитектуры микропроцессоров серии Godson 3 и их последующего развития в Godson 4 иллюстрирует рис. 2. Общая идея разработки – сделать многоузловой, многоядерный и энергоэффективный процессор, на базе которого можно было бы создать многосокетные платы для мощных серверов и суперкомпьютеров высшего диапазона производительности.
Рис. 2. Процессор семейства Godson-3 ( 16-узлов) |
Базовые решения – выбор 16-сокетной платы, а микропроцессор в сокете должен в конечном итоге содержать 2D-решетку из 16 тайлов (узлов). В каждом тайле (рис. 2): четыре суперскалярных процессорных ядра P0, P1, P2 и P3; блоки разделяемого кэша L2 – S0, S1, S2 и S3 объемом 1 Mбайт каждый; коммутатор соединения процессоров с кэшем L2 и соседними тайлами во внутрикристальной сети (коммутатор x1); коммутатор для подключения к контроллеру памяти (коммутатор x2). Внутрипроцессорная сеть между тайлами 128-разрядная, двойная (передача данных процессоров и памяти), работает на частоте процессора. Обеспечивается кэш-когерентность – все блоки кэша L2 тайлов процессора могут рассматриваться как единый кэш L2.
Первый процессор семейства Godson 3A имел четыре суперскалярных ядра GS464 (один узел) и появился в 2008 году, а через год последовал восьмиядерный процессор Godson 3B, в котором по отношению к предыдущему ядру была значительно усилена обработка коротких векторов. Оба микропроцессора созданы по технологии 65 нм, имеют тактовую частоту 1-1,2 ГГц, а также 400 млн и 600 млн транзисторов соответственно. Есть еще две важные особенности – в этих изделиях введено дополнительно более 200 команд для эффективной аппаратно-программной эмуляции архитектуры x86, а обработка коротких векторов потребовала введения еще более 300 команд, так что теперь их можно считать процессорами с MIPS-архитектурой весьма условно.
При введении векторной обработки в ядре GS464V были выполнены следующие модификации: два 64-разрядных устройства ядра GS464 выполнения операций над числами с плавающей запятой заменены на два 256-разрядных векторных устройства (Vector Processing Unit, VPU); вместо 32-регистрового файла 64-разрядных чисел с плавающей запятой был введен 128-регистровый файл 256-разрядных чисел c четырьмя портами записи и восемью портами считывания; введен специальный блок подкачки-выгрузки векторов для кэша L1, кэша L2 и памяти (с перестановкой элементов векторов «на лету»); введена 24-входовая очередь векторных команд, из которой на VPU могут выдаваться до двух команд, причем не в порядке их следования в программе. Одна команда может выполнять четыре операции сложения-умножения над числами двойной точности или восемь таких операций над числами одинарной точности, также выполняются целочисленные операции над операндами разной разрядности.
Два устройства VPU могут работать как одно 512-разрядное устройство XPU (eXtended Processing Unit), которое структурно состоит из восьми 64-разрядных арифметико-логических устройств (ALU), соединенных коммуникационной сетью с выхода ALU на вход, причем система команд XPU – это не только множество арифметико-логических операций, но и операции наиболее типичных для приложений перестановок данных, а также операции совмещенных вычислений и перестановок. Еще одна особенность – на входе каждого ALU имеется регистровый файл, представляющий собой 1024 64-разрядных регистра с четырьмя портами записи и четырьмя портами чтения для хранения промежуточных результатов.
Следующий процессор Godson-3C представляет собой 16-ядерный процессор с ядрами GS464V, его выпуск намечен на 2011 год. Далее запланированы: Godson 4A (2012-2013 годы) – 64-ядерный процессор серии T (teng zhou – «тяжелый микропроцессор»); Godson 4B (2014-2015 годы) – 128-ядерный процессор. Принципиально, что Godson 3C, как 3A и 3B, имеет каналы быстрого межкристального взаимодействия HyperTransport, что позволяет строить многосокетные платы с кэш-когерентностью и разделяемой общей памятью.
Процессор Godson 3B уже должен появиться на китайском рынке; его пиковая производительность 128 GFLOPS, он имеет два встроенных контроллера памяти DDR3, два контроллера HyperTransport, построен на технологии 65 нм, имеет тактовую частоту 1 ГГц и потребляет 40 Вт.
Процессор Godson 3C с тактовой частотой 1,5 ГГц и потребляемой мощностью 15 Вт будет иметь пиковую производительность 384 GFLOPS, четыре встроенных контроллера DDR3, четыре контроллера HyperTransport, создается по технологии 28 нм. При претендующей на мировое лидерстве абсолютной пиковой производительности в 384 GFLOPS процессор Godson 3C обладает энергетической эффективностью более 35 GFLOPS/W, близкой к целевой эффективности в 50 GFLOPS/Вт по американской программе UHPC.
Дальнейшие этапы китайского петафлопсного пути к экзафлопсым системам таковы:
- 10 PF (2012, модификация Tianhe-1A). Согласно постановлению правительства КНР, на первом этапе стратегического плана развития HPC-China (2012 год) поставлена задача разработать суперкомпьютерную систему с производительностью 10 PFLOPS (модификация Tianhe-1A), содержащую около 10 тыс. новых серверов-лезвий TC3700, в которых установлены 40 тыс. Tesla GPU, 60 тыс. восьмиядерных Godson 3B, а также серверных плат с 20 тыс. мультитредовых процессоров FT-1000/1500.
- 30 PF (2014, Tianhe-2). За 2011-2014 годы Национальному университету оборонных технологий поручено разработать новую суперкомпьютерную систему Tianhe-2 с производительностью 30 PFLOPS, предположительно на базе Godson 3C или Godson 4A, мультитредовых процессорах FT-1500 и новой версии коммуникационной сети Arch. Эта разработка противопоставляется американскому суперкомпьютеру IBM Sequoia на 17-ядерных (по четыре треда в ядре) процессорах Power и пятимерной сети типа тор. Ставится задача превзойти американский суперкомпьютер в полтора раза.
- 100 PF (2016). До 2016 года правительством Китая поставлена задача четырем ведущим ведомствам разработать и ввести в эксплуатацию вычислительный комплекс с производительностью 100 PFLOPS.
Япония
Позиции японских производителей суперкомпьютеров после 1997 года стали сильно ослабевать – появились мощные микропроцессоры массового производства и кластерные технологии разработки суперкомпьютеров скалярного типа, а японские суперкомпьютеры были в основном векторными, имели уникальные характеристики для стратегических приложений, но для широкого рынка оказались менее привлекательными, поскольку были более дорогими и менее универсальными.
В середине 2000-х был принят федеральный проект создания суперкомпьютеров следующего поколения Next Generation Supercomputer Project (NGSP) на 2006-2012 годы. В рамках этого проекта предполагалось создание суперкомпьютера стратегического класса со скалярно-векторной архитектурой и пиковой производительностью 10 PFLOPS, а производительностью на реальных приложениях около 1 PFLOPS. Первая очередь этого суперкомпьютера – К computer, который летом 2011 года занял высшую позицию в Top500. По проекту NGSP также ставилась задача создания недалеко от Токио, в городе Кобе, мощнейшего межведомственного суперкомпьютерного центра, который должен стать основным элементом сети суперкомпьютерных центров Японии. На базе этих ресурсов была поставлена задача создания института по разработке прикладного программного обеспечения и выполнения исследований в нанотехнологии, науке о жизни, разработке лекарств, инженерных расчетах, аэрокосмических исследованиях, предсказаниях природных катастроф, ядерной энергетике, изменении климата и окружающей среды. Объем финансирования NGSP – 1,2 млрд долл., с 2010-го по 2025 год проект будет постоянно поддерживаться правительством. При этом значительное внимание будет уделено росту именно реальной, а не пиковой производительности. Экзафлопсный уровень предполагают достичь в 2017 году, ставя при этом цель добиться уровня потребления энергии в такой системе 10 МВт.
Окончательный вариант К computer должен содержать 80 тыс. суперскалярных процессоров Fujitsu (640 тыс. процессорных ядер), память 1 Пбайт, коммуникационную шестимерную сеть Tofu (топология решетка/тор), пропускная способность одного линка сети – 5 Гбайт/с, бисекционная пропускная способность коммуникационной сети – 30 Tбайт/с. По первоначальным планам, К computer должен был включать и векторную часть компании NEC, которая, однако, вышла из проекта уже в процессе его выполнения. Известно, что ведется университетская проработка вместо этой части ускорительного устройства в виде реконфигурируемого поля вычислительных элементов.
Вычислительный узел К computer содержит восьмиядерный процессор SPARC VIII fx и маршрутизатор сети Tofu, модули оперативной памяти общим объемом 16?Гбайт. Четыре вычислительных узла размещаются на одной плате, применяется водяное охлаждение. Такая плата отличается от коммерческих многосокетных плат с процессорами Intel и AMD тем, что на ней нет прямых каналов связи СБИС типа HyperTransport, которые еще и обеспечивают кэш-когерентность. Между тем маршрутизаторы сети Tofu эффективно поддерживают механизм RDMA (операции PUT/GET c памятью удаленного узла), так что работа с общей памятью из вычислительных узлов реализуема за счет программных средств.
SPARC VIII fx – это восьмое поколение семейства, начавшееся выпуском первого процессора SPARC в 1996-1997 годах. Процессор разработан компанией Fujitsu c учетом возможности его применения в суперкомпьютерах петафлопсного уровня производительности. SPARC VIII fx содержит восемь процессорных ядер, разделяющих общий кэш L2 объемом 5 Mбайт, встроенные контроллеры памяти. Пиковая производительность – 128 GFLOPS, пропускная способность памяти – 64 Гбайт/с, потребляемая мощность – 58 Вт.
Система команд основана на архитектуре SPARC-V9, расширена по стандарту JPS, а также собственным расширением Fujitsu HPC-ACE. В процессорном ядре за такт выполняется до восьми операций (до четырех команд умножения-сложения), имеется пять целочисленных функциональных устройств и четыре функциональных устройства для выполнения операций над числами с плавающей запятой (из них два 64-разрядных устройства SIMD выполнения операций над короткими векторами).
Рис. 3. Узлы и макроузлы К computer |
Сеть Tofu (рис. 3) – иерархическая, с сильными связями на нижнем уровне иерархии. Три измерения (а, b и с) – это пространство внутри макроузла (узловой группы), в которой 12 вычислительных узлов связаны сетью «гиперкуб». Каждый узел макроузла имеет соединения в сети 3D-тор, а макроузел в целом – координаты (x, y и z). На рис. 3 показаны три таких макроузла с координатами в сети 3D-тор – (0, 0, 0), (1, 0, 0) и (2, 0, 0). Таким образом, можно считать, что один макроузел, на самом деле входит в 12 сетей с топологией 3D-тор.
Объем передаваемого в сети пакета – от 32 до 2048 байт. Интерфейс с микропроцессором узла обеспечивает пропускную способность по 20 Гбайт/с в обе стороны. При этом суммарная пропускная способность 10 линков (четыре линка в измерениях a, b и с, шесть линков в измерениях x, y и z) маршрутизатора составляет 50 Гбайт/с в одну и другую сторону.
Для достижения большей загрузки линков в маршрутизаторе имеются четыре блока Communication Engine, которые одновременно управляют передачей разных сообщений маршрутизатора. Внутренний коммутатор имеет 14 портов. В маршрутизаторе реализованы коллективные операции «барьер» и «редукция». Сеть позволяет передавать пакеты с высокой конвейеризацией и адаптированным выбором маршрута в соответствии с загрузкой сети, обеспечивая отказоустойчивость не только на уровне передачи по линку, но и с возможностью отключения аварийных узлов, их горячей замены, перенастройки маршрутов.
Маршрутизатор сети Tofu реализован по технологии 65 нм, работает на частотах 312,5/625 MГц.
Средства программирования К computer пока традиционные – языки Си и Фортран, библиотека MPI и OpenMP. Наиболее подходящая модель параллельной программы – одновременное использование MPI и тредов внутри процессоров MPI. Пока о средствах класса PGAS (Partitioned Global Access Space – «разделенное глобальное адресное пространство») разработчиками не заявлялось, но, судя по возможностям аппаратуры, они должны появиться.
Экзафлопсные перспективы
Пока Китай и Япония находятся в начале пути к экзафлопсным системам, однако темпы проведения исследований, особенно в области оптических соединений на кремнии (что важно для создания внутрикристальных сетей), оптических сетей с уплотнением передачи данных на разных длинах волн (WDM), трехмерной сборки кристаллов и трехмерных CБИС, свидетельствуют о нацеленности этих стран на успех.
В целом для Европы и России обострение конкуренции в области суперкомпьютерных технологий между странами Тихоокеанско-Азиатского региона и США должно снизить барьеры доступности к соответствующим продуктам.
Виктор Горбунов (vitech@rdi-kvant.ru) – заместитель директора НИИ «Квант»; Павел Забеднов (zabednov@vneshtechnika.ru) – директор ВО «Внештехника»; Андрей Моляков (andrei_molyakov@mail.ru) – сотрудник компании «ВТ-Консалтинг» (Москва).