Покорение пета-вершин
Как показывают исследования, в среднем вычислительная мощь настольных ПК отстает от уровня производительности суперкомпьютеров на 13 лет.
Иными словами, по уровню производительности сегодняшние профессиональные ПК практически полностью соответствуют суперкомпьютерам 13-летней давности. Именно поэтому исследование рынка высокопроизводительных вычислений - хороший способ оценить направление развития массовых компьютеров будущего. Не так давно суперкомпьютеры преодолели планку производительности в один терафлопс (триллион операций с плавающей запятой в секунду - floating-point operations per second), уже не за горами достижение ими производительности уровня петафлопс (квадриллион флопс, или 1015 операций с плавающей запятой в секунду), тогда как тера-вычисления станут уделом среднестатистического пользователя ПК…
Американский профессор и писатель Стив Чен попытался представить, какой уровень производительности будет достаточным для решения различных задач в будущем. По его мнению, для задач аэродинамики хватит производительности в несколько петафлопс, для задач молекулярной динамики потребуется уже 20 петафлопс, для вычислительной космологии - фантастическая производительность на уровне 10 экзафлопс (один экзафлопс равен квинтиллиону, или 1018 флопс), а для задач вычислительной химии потребуются еще более мощные процессоры. По мнению Стива Павловски, старшего заслуженного инженера-исследователя Intel, главного директора по технологиям и генерального менеджера по архитектуре и планированию подразделения Digital Enterprise Group корпорации Intel, компьютеры с производительностью, равной секстиллиону (число, изображаемое единицей с 21 нулем!) операций с плавающей запятой в секунду, появятся к 2029 году.
Стив Павловски считает, что проблемы и достижения сегодняшних суперкомпьютеров станут проблемами и достижениями завтрашних настольных ПК. Растет рынок высокопроизводительных вычислений - его объем уже достиг 10 млрд долл., и в некоторых секторах ежегодный рост продаж превышает 30%; растет и количество проданных во всем мире профессиональных высокопроизводительных компьютеров на базе процессоров Intel.
Всего 60 лет назад ламповый компьютер ENIAC, считавшийся технологической вершиной в области высокопроизводительных вычислений, имел всего 20 ячеек оперативной памяти. В середине 60-х годов появился суперкомпьютер CDC 6600, производительность которого достигла 9 мегафлопс. И только в 1997 году суперкомпьютер ASCII Red, содержавший 9298 процессоров Intel® Pentium® Pro, вышел на уровень производительности, равный терафлопс. Сегодня система на базе 464 четырехъядерных процессоров Intel® Xeon® серии 5300, занимающая гораздо меньший объем, обладает в 6 раз большей пиковой производительностью.
Когда же будет достигнута производительность уровня петафлопс – т.е. тысячи терафлопс - или, как образно говорит Стив Павловски, будет преодолен «звуковой барьер» пета-производительности? И когда пета-вычисления станут базовыми для рядовых компьютерных систем?
Согласно оценкам, первые пета-суперкомпьютеры появятся уже в 2008-2009 гг. – для того, чтобы это определить, достаточно взять параметры производительности самых высокоскоростных компьютеров в мире, опубликованные на сайте www.top500.org, и экстраполировать их в соответствии с наблюдаемыми тенденциями роста. Однако для того, чтобы создать пета-компьютеры для массового рынка, предстоит решить немало серьезных проблем. С этой целью корпорация Intel вместе с партнерами ведет исследования по следующим направлениям:
• производительность;
• пропускная способность памяти;
• межкомпонентные соединения;
• управление электропитанием;
• надежность.
По мнению Стива Павловски, для достижения уровня пета-вычислений с помощью современных технологий повышения производительности полупроводниковых микросхем потребуется создание процессора со 100 тыс. вычислительных ядер. Для практической реализации таких систем придется существенно повысить плотность размещения ядер на кристалле. Сегодня ведутся активные споры по поводу архитектуры будущих компьютеров, что лучше: множество небольших ядер, оптимизированных для ускорения параллельных вычислений, или несколько более крупных ядер, предназначенных для ускорения последовательных вычислений? Склоняясь к первому пути развития, исследователи понимают, что ставят перед собой трудоемкую задачу перевода софтверной индустрии на рельсы параллельного программирования...
Следующая область исследований Intel - организация соединений вычислительных ядер между собой. Соединения с помощью общей шины занимают меньше места, обладают высокой пропускной способностью и хорошо масштабируются, но неэффективны по энергопотреблению. Второй вариант – «кольцевое» соединение ядер для передачи сигналов. Недостаток такой схемы - низкий уровень масштабируемости при увеличении числа ядер. Третий вариант - матричная архитектура, когда каждое ядро связывается с каждым через цепочку соседних ядер.
Стоить вспомнить, что на осеннем Форуме Intel для разработчиков (IDF) в Сан-Франциско был представлен прототип процессора с 80 ядрами, который потенциально сможет обеспечить производительность уровня терафлопс для настольных компьютеров. По словам главного директора корпорации Intel по технологиям Джастина Раттнера, ориентировочная дата выхода подобного процессора на рынок - 2010 год или даже ранее. В основе прототипа процессора лежит архитектура x86 и такие разработки Intel, как система высокопроизводительных вычислений на микросхеме (HPC-on-chip), новая структура соединений элементов памяти, новые энергосберегающие технологии и т.д.
В 2006 году корпорация Intel объявила глобальную программу исследований, названную Tera-Scale Computing и объединяющую более 80 различных исследовательских проектов во всем мире, усилия которых распределены по трем основным направлениям: улучшение технологий проектирования и изготовления кремниевых кристаллов, оптимизация платформ и новые подходы к программированию. В своем выступлении на IDF Джастин Раттнер отметил, что необходимые шаги по направлению к «тера-эре» будут сделаны в течение ближайшего десятилетия. Например, большое внимание в современных исследованиях уделяется тому, как оптимизировать работу кэш-памяти, сделать ее конфигурируемой в зависимости от решаемых задач и разработать параллелизм обращения множества ядер к общей памяти. Корпорация Intel также планирует интегрировать в свои кристаллы цифровой самонастраивающийся беспроводной приемопередатчик широкого диапазона, не за горами появление прикладных устройств, основанных на принципах интегрированной кремниевой фотоники.
«Высокая скорость передачи данных между вычислительными ядрами и памятью – существенная проблема, - подчеркивает Павловски. - Память должна обладать крайне высокой пропускной способностью. При этом если увеличивать тактовую частоту канала памяти, то достаточно скоро мы столкнемся с физическими ограничениями, которые налагают медные проводники». Один из возможных путей преодоления этих ограничений - увеличение числа каналов памяти, но при этом увеличиваются размеры процессора и его себестоимость. «Нам придется искать более экзотические технологии передачи данных, - считает Павловски. - По нашим расчетам, для работы пета-процессоров потребуется память с пропускной способностью около 500 Гб/с».
Следующий важнейший аспект работы пета-компьютеров - это быстродействие системы ввода/вывода. Ученые корпорации Intel сейчас работают над тем, чтобы обеспечить скорость передачи данных до сотен ГБ/с.
И все же самыми серьезными проблемами создания пета-устройств являются энергоснабжение и надежность. Мощность энергопотребления современного крупного центра обработки данных (ЦОД) составляет в среднем 9-10 мегаватт. Мощность, потребляемая компьютером со 100 000 ядер, может составить около 20 мегаватт. К этому надо прибавить мощность, необходимую для охлаждения пета-компьютеров. При нынешней стоимости электроэнергии расходы на энергоснабжение одной только пета-системы превысят 14,6 млн долл. в год. Именно поэтому вопрос эффективного использования электроэнергии крайне важен, что диктует применение энергосберегающих технологий на всех уровнях - от транзисторов до ЦОД:
• На уровне транзистора - технологии напряженного кремния, технологии для снижения токов утечки и т.п.
• На уровне процессора - распределение нагрузки на основе многопоточности.
• На уровне системы - высокоточное управление энергопотреблением в зависимости от загрузки системы.
• На уровне ЦОД - использование усовершенствованных систем жидкостного и воздушного охлаждения, а также вертикальная интеграция теплоотводящих решений.
Мало того, исследователи прогнозируют возникновение совершенно неожиданных проблем, связанных с... космическими лучами. Ведь в пета-процессорах с высокой интеграцией вычислительных элементов будут использоваться столь малые транзисторы, которые окажутся подвержены влиянию энергичных частиц, составляющих космические лучи и способных вызвать случайный сбой данных при попадании в транзистор. По мере повышения плотности размещения транзисторов на кристалле количество таких случайных сбоев будет быстро расти. «Если число ядер на кристалле достигнет 100 000, такие сбои могут стать неуправляемыми, - считает Павловски. - Они будут оказывать все большее влияние на работу системы, и с ними нужно будет бороться. Мы уже начали исследования в этом направлении». Перспективные технологии обеспечения надежности включают использование контроля четности и кодов корректировки ошибок, а также применение избыточных ядер для проверки результатов вычислений основных ядер системы.