Новые серверы семейства RS/6000 корпорации IBM
IBM — колосс, который может позволить себе то, что не дозволено «простым смертным». Могучие финансовые ресурсы и блестящий инженерный состав позволяют ей решать любые мыслимые задачи и выдерживать любые удары. Время от времени IBM исхитряется успешно ликвидировать даже длительное отставание. Так, IBM, долгое время отстававшая в гонке мощных многопроцессорных SMP-систем, заняла и на этом сегменте рынка подобающее ей место после выпуска серверов S70.
В сентябре IBM отличилась небывало массированным «выбросом» на рынок новых компьютеров. Были представлены, в частности, монтируемые в стойку серверы B50 (кодовое название — «Пицца») — недорогие серверы, ориентированные на провайдеров Internet; 24-процессорные SMP-серверы S80; SMP-серверы для научно-технических приложений T70 (они могут служить узлами массивно-параллельных суперкомпьютеров IBM SP2). Интересно, что кодовое название новой дисковой подсистемы фирмы IBM, также монтируемой в стойку, в переводе на русский язык означает «устрицы». Но, похоже, кроме стремления к деликатесам IBM отличает отменный аппетит, и даже не волчий: ее новейшая дисковая подсистема носит название Shark — «Акула».
В этой статье речь пойдет о претендентах на лидерство в мире SMP-серверов — IBM S80.
Лидер серии S
Новые серверы S80 являются старшими моделями в серии S — линейке SMP-серверов, включающей также S70 и S70 Advanced. Характеризуя S80 совсем кратко, в первую очередь следует отметить две определяющие особенности: коммутатор с рекордной пропускной способностью около 43 Гбайт/с и новые 64-разрядные микропроцессоры PowerPC RS64 III, изготовленные по медной технологии.
Новые серверы S80 являются старшими моделями в серии S — линейке SMP-серверов |
RS64 III — суперскалярные микропроцессоры, предназначенные для коммерческой рабочей нагрузки. В самом грубом приближении это означает большую заботу о целочисленной производительности, чем о расчетах с плавающей запятой. Для RS64 II/340 МГц показатели SPECint95/ fp95 составляют 16,0/21,2. Сравнивая их с данными для Power3, применяемого в T70 (14,0/28,6 при частоте 220 МГц), нетрудно сделать вывод, что для коммерческих задач 450-мегагерцевые RS64 III/450 выглядят предпочтительнее.
Однако не только и не столько оценки SPECint95 можно считать определяющими для RS64 III. К тому же, по моему мнению, для RS64 III они вряд ли окажутся рекордными. Для сравнения, SPECint95 для AMD Athlon/650 МГц составляет 29,4, для HP PA-8500/440 МГц — 34,0, а для Sun UltraSPARC II/400 МГц — 18,3.
Гораздо более важной характеристикой следует считать ориентацию на работу с множеством страниц памяти и низкие задержки, что крайне важно для сложных коммерческих приложений. В этом случае тесты SPECint95 вряд ли достаточно адекватны. Высокая пропускная способность магистралей («путей данных») — отличительная черта многих процессоров семейства Power. В сочетании с большим кэшем и низкими задержками это дает основания говорить об эффективности RS64 III для коммерческих приложений.
Кэш-память первого уровня в RS64 III (по 128 Кбайт для команд и данных) увеличена вдвое по сравнению с RS64 II. Если не считать кэша одноуровневого строения в HP PA-8500, это больше, чем у любого из конкурентов. Кэш второго уровня с интегрированным контроллером подключен через выделенную шину шириной 32 байт, работающую на половинной частоте процессора, но передающей данные дважды за такт, что дает пропускную способность 14,4 Гбайт/с. Для сравнения, в Athlon ширина шины кэша второго уровня, также работающего на половинной частоте процессоре, составляет всего 8 байт. Кэш второго уровня имеет емкость 8 Мбайт (насколько мне известно, на сегодняшний день это максимум) и является четырехканальным частично-ассоциативным.
В микропроцессоре пять функциональных исполнительных устройств: загрузки регистров/записи в память, переходов, одно устройство с плавающей запятой и два целочисленных устройства. Соотношение числа устройств двух последних типов также характеризует направленность микропроцессора на коммерческие задачи.
Многие внутренние пути данных в RS64 III также имеют ширину 32 байт, в частности интерфейс к блоку диспетчеризации. RS64 III имеет буфер диспетчеризации емкостью 16 команд и буфер переходов в два раза меньшей емкости. Поддерживаемая микропроцессором скорость декодирования и выполнения — до четырех команд за такт.
Для достижения высокого уровня надежности и целостности данных все аппаратные «матрицы» RS64 III либо имеют избыточность и защиту кодами ECC, либо контролируются по четности и имеют возможность повторения операции при сбое. Последняя особенность — уникальна, я могу вспомнить лишь аналогичные свойства процессоров мэйнфреймов IBM и ЕС ЭВМ, позволяющие компьютерам работать, несмотря на сбои.
Процессоры в S80 располагаются на процессорных платах (по шесть процессоров на плату, до четырех плат — всего до 24 процессоров на систему). На каждой плате имеется по две системные шины с частотой 150 МГц шириной 128 бит для данных плюс 64 бит для адреса. Адресная и управляющая информация, как и данные, защищена по четности. Следует отметить, что это на сегодняшний день не самое высокое достижение: в Pentium III и Athlon системная шина защищается кодами ECC.
Системная шина поддерживает расщепление транзакций и конвейеризирована. Это позволяет начать обработку новых запросов, не дожидаясь завершения предыдущих.
Системные шины подсоединены к 14-портовому коммутатору MCC (Memory Connection Complex), в котором, кроме восьми процессорных портов (по два порта на процессорную плату), имеются два порта к плате ввода/вывода, содержащей два концентратора ввода/вывода, и четыре порта к оперативной памяти. Первые 10 портов МСС (процессорные и ввода/вывода) при ширине 16 байт работают на частоте 150 МГц, что дает пропускную способность 2,4 Гбайт/с на шину (24 Гбайт/с суммарно). Порты памяти имеют ширину 64 байт и частоту 75 МГц, так что их суммарная пропускная способность равна 19,2 Гбайт/с. Итого на весь коммутатор получается 43,2 Гбайт/с.
Оперативная память построена по технологии SDRAM (микросхемы на 64 или 128 Мбит) с использованием кодов ЕСС и может размещаться на платах числом до 16, добавляемых порциями по четыре, с суммарной емкостью от 2 до 64 Гбайт на весь сервер. Каждая четверка плат имеет свой порт к МСС.
Надежные ящики
Подсистема ввода/вывода общается с остальной частью S80 через концентраторы RIO (Remote I/O). Каждый из двух имеющихся концентраторов реализован в виде одной микросхемы и поддерживает по четыре шины RIO, работающие в дуплексном режиме с пропускной способностью 250 Мбайт/с в одном направлении.
Шины RIO — это высокоскоростные соединения типа «точка-точка» с низкими задержками, обладающие кольцевой топологией. Интересно, что они реализованы в виде кабелей, что для современных серверов достаточно редкое явление; обычно кабели используются только для внешних устройств с интерфейсами SCSI, Fibre Channel и т. п. Единственный приходящий мне на ум современный аналог — кабели CrayLink в серверах SGI Origin.
Цель применения кабелей RIO в S80 состоит в организации гибкой связи с PCI-шинами ввода/вывода и давно известными в RS/6000, в частности в S70, ящиками (drawer) ввода/вывода, которые в S80 расположены в отдельном шкафу.
Здесь уместно сказать несколько слов о конструктивном исполнении S80. В основном шкафу (стойке) размещен СEC (Central Electronic Complex), содержащий коммутатор, процессорные платы и платы оперативной памяти, которые упаковываются в другой известный конструктив IBM — так называемые книги. Книга представляет собой, по образному выражению инженеров корпорации, «сандвич» — два металлических листа и плата посередине. Такая конструкция обеспечивает повышенную надежность и эффективную циркуляцию воздуха.
Обычные шины ввода/вывода вместе c внешними устройствами располагаются во второй, 19-дюймовой стойке, в ящиках ввода/вывода. Таких стоек может быть несколько. В первой из них всегда помещается базовый SCSI-ящик, а всего к CEC можно подключить до четырех ящиков ввода/вывода. В ящике имеются избыточные блоки питания и вентиляторы с возможностью горячей замены. Конструктив обеспечивает эффективное охлаждение устройств.
В базовом ящике ввода/вывода предусмотрены адаптеры UltraSCSI; поддерживаются стандартные устройства и порты; кроме того, он содержит 12 отсеков для жестких дисков с возможностью горячей замены. Работой и отображением на дисплейной панели состояния аппаратуры ящика управляет служебный процессор.
Важнейшим компонентом любого ящика ввода/вывода является блок I/O Planar. Этот блок содержит микросхемы-конвертеры от шин RIO к локальным шинам мостов ввода/вывода. Конвертер имеет RIO-порты IN и OUT, что обеспечивает избыточное кольцевое соединение. Шины мостов ввода/вывода имеют пропускную способность по 528 Мбайт/с при тактовой частоте 66 МГц. На этих шинах данные и 64-разрядные адреса мультиплексируются. Управление, адреса и данные контролируются по четности. Шины работают в конвейерном режиме, что позволяет запускать на выполнение новую транзакцию, не дожидаясь завершения предыдущей.
Каждая такая микросхема в свою очередь управляет четырьмя мостовыми PCI-микросхемами. Одна из них поддерживает работу двух 64-разрядных PCI-слотов, а три других управляют (каждая) тремя 32-разрядными и одним 64-разрядным PCI-слотом. Все 14 PCI-слотов соответствуют 33-мегагерцевым PCI-шинам с пропускной способностью 266/133 Мбайт/с для 64/32-разрядных шин соответственно.
Серверы-рекордсмены
Если серверы S70 с числом процессоров до 12 все-таки можно было отнести и к среднему классу, то S80 — это уже выход в «тяжелую весовую категорию по классу SMP». Хотя число процессоров и соответственно чисто «процессорная мощность» S80 далеки от рекордных, исключительная нацеленность на масштабные коммерческие приложения в архитектуре как микропроцессора RS64 III, так и самого сервера S80 обеспечили ему преимущество перед конкурентами.
Так, IBM сообщила о рекордных показателях 12-процессорного S80 на тестах SPECweb96 (40 161 единиц), что крайне важно для задач электронной коммерции. По утверждению IBM, при работе в качестве NFS-сервера S80 на 25-30% опережает лучшие показатели, достигнутые Sun. Сразу два рекорда поставила IBM на 24-процессорном S80: по производительности приложений SAP R/3 (на 15% быстрее 64-процессорного Sun Ultra Enterprise 10000) и Baan ERP (на 62% быстрее Sun).
Кроме того, 24-процессорный сервер S80 достиг производительности 135816 tpmC против 115395 tpmC для Ultra Enterprise 10000. Это лучший результат среди SMP-серверов. Sun в конце сентября сообщила о достижении отметки 135461 tpmC, правда, уже для кластера Enterprise 6500 c 96 процессорами UltraSPARC II/400 МГц. IBM считает, что S80 опережает Enterprise 10000 в первую очередь из-за достаточно высоких задержек, характерных для этого сервера.
Можно с уверенностью сказать, что S80 — это надежное высокопроизводительное средство решения сложных задач коммерческого характера, во многом опережающее предложения конкурентов. Хотя IBM, отталкиваясь от характерных областей применения S80, и не называет их суперкомпьютерами, такое отнесение было бы справедливо.
Михаил Кузьминский — старший научный сотрудник Центра компьютерного обеспечения химических исследований РАН. С ним можно связаться по телефону (095) 135-6388.