Суперкомпьютеры всегда представлялись особенным классом вычислительной техники. Поскольку строят такие машины для решения задач необычных, то и бюджеты имеют необычные, а это, в свою очередь, давало ощущение бесконечных возможностей: казалось, проблема всегда только в деньгах и, влей ещё десяток–другой миллионов, производительность можно наращивать бесконечно. Случившееся в последние месяцы и годы и выраженное свежим списком 500 самых мощных числогрызов планеты — известным вам TOP500.org — даёт, однако, повод утверждать, что «бесконечность» кончилась. Суперкомпьютеры первыми из современных компьютерных систем ткнулись в физический предел возможностей полупроводниковой электроники — и для них прежде всего необходимо теперь отыскать выход из тупика. Новую технологию компьютинга.
Формальной зацепкой для такого далекоидущего утверждения стала странная закономерность, подмеченная составителями вышеназванного списка. Топ-500 обновляется дважды в год, и в верхних позициях его последней версии, опубликованной на прошлой неделе, изменений почти не произошло (в десятку «лучших» добавился всего один новый участник, да суммарная производительность всех пяти сотен машин немного выросла, с 0,223 до 0,250 эксафлопс). Зато случилась качественная общая перемена: «центр тяжести» списка сместился в верхнюю его часть, или, говоря проще, основная вычислительная мощь теперь сконцентрирована в сравнительно небольшом (исторически — рекордно малом) количестве самых быстрых машин. Выглядит это так: половина кумулятивной мощи Топ-450 обеспечивается всего лишь 17 первыми компьютерами списка. Тренд этот обозначился не вчера, однако за последние шесть лет оформился настолько, что над ним необходимо задуматься.
Единого несомненного объяснения нет. Одно из самых убедительных — финансовое: за последние годы суперкомпьютеры стали сильно дороже (примерно вчетверо, в сравнении, скажем, с числогрызами середины «нулевых»), а потому доступны теперь лишь относительно немногим государственным агентствам и крупным компаниям. Вдобавок конструкторы и покупатели новых не слишком мощных машин не стремятся засветиться в рейтинге, чтобы не портить себе имидж. Так и получается, что чем дальше, тем ярче проявляется тренд: сильные становятся сильней, слабые нелинейно быстро отстают.
Важный вывод: суперкомпьютеры не перестали быть нужными, они лишь стали менее доступными. Но как же неумирающий закон Мура? Разве он не должен компенсировать рост цен более плотной компоновкой и, соответственно, повышением производительности? Вот тут-то и всплывает главное подозрение. Похоже, мы вышли на финишную прямую, где закон Мура хоть ещё и работает, но воспользоваться им уже слишком дорого для большинства игроков.
Результат учёные формулируют так: за неимением прорывных технологий, которые одним скачком обеспечили бы недостижимую ранее скорость вычислений, суперкомпьютерная индустрия вынуждена двигаться по экстенсивному пути — тупо наращивая численность процессоров на своих машинах. И даже хуже того: поскольку такой путь не способен удовлетворить аппетиты пользователей (а числогрызы традиционно не только инструмент для обработки данных, но ещё и способ утвердить корпоративный и национальный авторитет), конструкторы сделали ставку на графические акселераторы, которые, скажем так, пригодны для решения не всяких задач. Численность суперкомпьютеров, активно использующих GPU, выросла за последние пять лет на порядок!
И тут очень кстати вспомнить про готовящуюся замену знаменитого теста Linpack, который с самого начала публикации Топ-500 (двадцать лет назад) служит главным мерилом производительности суперкомпьютерных систем. Заменить его предлагается на недавно разработанный тест HPCG (High Performance Conjugate Gradient). Причина: Linpack — написанный на «Фортране» аж в 1979 году — отражает истинную производительность измеряемых систем неудовлетворительно и расхождение растёт.
Вообще, внятно объяснить отличие Linpack от HPCG не может даже их общий соавтор Джек Донгарра. Но, сильно упрощая, разницу можно свести к следующему: Linpack оценивает главным образом способность суперкомпьютера к чистым вычислениям (что хорошо делают GPU-акселераторы), тогда как HPCG учитывает ещё и важную при решении практических научных и технических задач производительность внутренних коммуникаций (то есть частое нерегулярное обращение к памяти, например).