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

Путь самураев от вычислений

В начале 90‑х годов наиболее высокопроизводительными системами считались большие машины, построенные по принципу симметричной многопроцессорной архитектуры (SMP — Symmetric Multi‑Processing). Простота и удобство в эксплуатации позволяли реализовывать на их основе сравнительно крупные проекты. Однако сдерживающим фактором увеличения производительности стал чуть ли не единственный недостаток таких систем — слабая масштабируемость. 

Далее высокопроизводительные системы строились на основе архитектуры массово‑параллельных вычислений (MPP — Massive Parallel Processing). Такое решение позволяло объединять в единую систему десятки тысяч процессоров и получать высокие результаты, но также не было лишено недостатков: значительное усложнение архитектуры и, как следствие, высокая стоимость систем, ПО и обслуживания не способствовали их широкому применению в «обычных» компаниях. 

Приверженцами архитектуры массового распараллеливания до последнего времени оставались компании Cray, SGI, IBM, Hitachi и NEC. Однако первые две теперь все свои решения производят только на базе индустриально стандартных про­цессо­ров (Cray — AMD Opteron, а SGI — Intel Xeon и Itanium). В свою очередь, IBM подавляющее большинство новых мощных вычислительных решений (за исключением, пожалуй, только системы BlueGene) создает на основе кластерной архитектуры, причем незначительную их часть — на базе своих процессоров Power и большинство — на процессорах Xeon и Opteron. 

В определенный момент надежды разработчиков высокопроизводительных систем были связаны с PVP‑архитектурой (Parallel Vector Process, параллельные векторные вычисления), но и она не прижилась из‑за высокой стоимости. 

Все изменилось в начале 2000‑х годов, когда на рынке высокопроизводительных вычислений (HPC — High Performance Computing) появились массовые коммерческие реализации кластеров, берущие за основу отработанные за несколько лет в лабораториях и исследовательских центрах идеи проекта Beowulf. Именно благодаря этим системам теперь практически любое предприятие или организация может многократно сократить сроки обработки данных, затратив при этом средства, соизмеримые с обычными расходами на информационные системы. 

HPC‑кластеры — самая многочисленная группа современных вычислительных систем, значительно более широкая, чем MPP. Кластеры обычно строятся на основе стандартных недорогих серверов с процессорами AMD или Intel по отработанной и достаточно эффективной схеме: одно‑, двух‑ или четырехпроцессорные вычислительные узлы соединяются между собой высокоскоростными каналами связи, а управляющий узел занимается постановкой задачи, сбором полученных результатов и выдачей их клиенту, приславшему запрос.

Нередко также используется внешняя дисковая система. Повышение производительности достигается путем распараллеливания расчетов на все узлы. То есть задача разбивается на множество подзадач, которые одновременно обрабатываются вычислительными узлами, а полученные результирующие данные объединяются. 

Использование кластеров позволяет значительно (в разы) снизить стоимость вычислительной системы по сравнению с традиционными суперкомпьютерами такой же производительности — как за счет невысокой цены применяемых стандартных компонентов, так и за счет минимальных расходов на обслуживание и развитие. В особенности это относится к системам, от которых не требуются рекордные показатели. Кластеры разрабатывает большое количество компаний — как известных во всем мире A‑брендов, так и локальных специализированных производителей. По данным IDC за 2007 год, лидирующие позиции здесь занимает Hewlett‑Packard. 

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

Интерфейсы и операционные системы 

Наиболее распространенным ин­терфейсом кластерного межузлового взаимодействия на сегодняшний день является Gigabit Ethernet. Несмотря на известный недостаток — довольно высокую латентность — такие преимущества, как низкая стоимость, высокая скорость, простота и доступность, позволили этому интерфейсу занять прочное лидирующее место в сегменте небольших, средних и даже сравнительно крупных кластерных систем. Возможностей Gigabit Ethernet при небольшом (до 500) количестве узлов обычно достаточно для организации межузлового взаимодействия. Дальнейший рост размеров кластера возможен как при увеличении пропускной способности каналов (тут иногда выручает 10 GbE), так и при обес­печении снижения задержек передачи данных (вот тут‑то Ethernet‑соединения начинают выступать сдерживающим фактором). Известно, что в кластерах с числом процессоров более 2000 этот интерфейс используют крайне редко, а если их число превышает 4000 — не используют вовсе. 

Традиционные области применения высокопроизводительных вычислений:
• Научные расчеты (молекулярное моделирование, геологоразведка, прогнозирование погоды, сверхпроводимость, генетика человека, квантовая хромодинамика, астрономия, управляемый термоядерный синтез, вычислительные задачи наук о мировом океане) 
• Производственное проектирование (автомобильная и авиационная промышленность, энергетика, транспортные задачи) 
• Искусственный интеллект (распознавание и синтез речи, распознавание образов)
• Мультимедиа (монтаж спецэффектов, обработка анимации, рендеринг)
• Быстроизменяющийся бизнес (анализ и прогнозирование, просчет доходности операций) 

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

За несколько последних лет Ethernet и Infiniband практически полностью вытеснили с рынка ранее широко используемые Myrinet и Quadrics, а про SCI уже вовсе никто не вспоминает. 

Резко сократилось и количество систем, объединенных проприетарными интерфейсами: заказчиков перестала устраивать их сложность и привязка к одному вендору.

Следует отметить и успех процессоров индустриально‑стандартной архитектуры: Intel Xeon, AMD Opteron и Intel Itanium — они коренным образом изменили расклад на рынке HPC. Если пять лет назад в списке Top500 более 80% занимали суперкомпьютеры в традиционном понимании — системы закрытой архитектуры на RISC‑ и СISC‑процессорах с такими же закрытыми интерконнектами, то сейчас те же 80% принадлежат системам на процессорах x86 и IA‑64 с общепринятыми Infiniband и Gigabit Ethernet. В итоге высокопроизводительные вычислительные системы перестали быть достоянием избранных и стали понятны и доступны даже небольшим компаниям.

Системы на базе Linux с каждым годом отвоевывает все большую часть кластерного рынка у UNIX, и на этом фоне успехи ОС от Microsoft не так заметны, хотя ее рыночная доля постоянно растет, в особенности в кластерах младшего и среднего уровня. 

Microsoft Windows Compute Cluster Server (WCCS) 2003 — это интегрированное расширение 64‑разрядной операционной системы Windows Server 2003 Standard Edition для х86‑процессоров. Что интересно, производительность новой версии этой ОС — Windows HPC Server 2008 (ее выход ожидается во второй половине года) — по предварительным оценкам разработчика, вырастет на 30% по сравнению с текущей версий.