Серверы К200 и К2000
MPP-системы К10000/К20000
Конфигурации К20000
Поддержка стандартов

В 1995 году корпорация Tandem Computers объявила о выпуске новых усовершенствованных моделей отказоустойчивых серверов Himalaya. По сравнению с предыдущими моделями К120, К1000, К10000 новые модели (К200, К2000, К20000 соответственно) имеют повышенную производительность и улучшенное соотношение стоимость/производительность. Эти модели являются вторым поколением систем Himalaya, в котором используются 64-разрядные микропроцессоры R4400 от MIPS/SGI. С этими микропроцессорами читатель мог познакомиться в предыдущем выпуске нашей рубрики.

Серверы Himalaya (как и компьютеры Integrity с архитектурой ServerNet, также выпускаемые этой фирмой, - см. CW-R #10, 1995) - одни из самых заметных вершин на рынке отказоустойчивых систем, в том числе с точки зрения их архитектуры. Однако за лидерами не просто наблюдают - их стремятся обогнать. Поэтому и интересно посмотреть, насколько прочны "основания вершин", другими словами. Тема эта актуальна еще и потому, что эти системы уже начали появляться и в российских организациях (см., например, вышеупомянутую публикацию).

Серверы К200 и К2000

Младшими моделями серверов Himalaya являются К200. Как и в моделях среднего класса К2000, в них используются микропроцессоры R4400 с тактовой частотой 125 МГц, имеющие внешний кэш емкостью 1 Мбайт. В компьютерах Himalaya, как в большинстве отказоустойчивых серверов фирмы Tandem, применяется дублирование микропроцессоров: любой процессор в паре выполняет одни и те же коды, и результаты постоянно сравниваются. Если появляется расхождение, обработка немедленно прекращается, предотвращая повреждение данных. Операционная система NonStop Kernel при этом автоматически перераспределяет нагрузку на другие логические процессоры (пары физических процессоров).

Системы Himalaya К200 могут иметь до 512 Мбайт оперативной памяти и от 2 до 4 процессоров. Для повышения надежности системы используются две межпроцессорные шины, а память защищена кодами ECC, позволяющими корректировать одиночные ошибки и обнаруживать двойные. Кстати, и подсистемы электропитания К200 также устойчивы к сбоям. Все эти особенности обеспечивают высокую надежность К200 и характерны и для всех прочих моделей серверов Himalaya. Все серверы Himalaya обеспечивают возможности горячей замены большинства компонент аппаратуры без остановки работы системы.

С серверами К200 поставляются многофункциональные контроллеры ввода/вывода, по два на процессорный шкаф (самих процессорных шкафов также может быть до двух). К контроллерам подсоединяются дисковые и ленточные устройства. К200 может иметь дисковую память объемом до 184 Гбайт.

Системы среднего класса, К2000, представляют собой масштабируемые параллельные серверы. Процессоры К2000 комплектуются памятью объемом 128 или 256 Мбайт на процессор и продублированными межпроцессорными шинами. Всего в системе может быть до 16 процессоров. Как и в К200, процессорный шкаф К2000 стандартно содержит 2 многофункциональных контроллера. Однако для наращивания производительности ввода/вывода и увеличения возможности конфигурации внешних устройств в К2000 имеется по одному каналу ввода/вывода на процессор и допускается подсоединение одного многофункционального шкафа ввода/вывода к каждому процессорному шкафу. Такой шкаф ввода/вывода, в свою очередь, имеет 8 контроллеров ввода/вывода. В соответствии с этим серверы К2000 могут быть оснащены дисковой памятью емкостью до 3232 Гбайт.

Для повышения эффективности организации ввода/вывода серверы К2000, как и К200, используют каналы ввода/вывода с прямым доступом к памяти (DMA), тем самым снижая нагрузку на процессоры.

MPP-системы К10000/К20000

Если считать серверы К200 и К2000 "вершинами" Himalaya, то самая высокая из них, несомненно, К20000. Компьютеры К20000 являются системами с массовым параллелизмом, которые могут содержать от 2 до 4080 процессоров. С точки зрения архитектуры, серверы К20000 очень близки к своим предшественникам К10000, и отличаются от них в основном заменой процессоров R4400/150 МГц на 200-мегагерцевые. Обе эти версии микропроцессоров комплектуются внешней кэш-памятью объемом 4 Мбайт, что очень важно для эффективной работы с большими коммерческими приложениями, отличающимися плохой локализацией обращений к памяти. Именно на такие приложения и ориентированы эти MPP-системы. При обсуждении некоторых деталей архитектуры мы будем говорить о серверах К10000, поскольку для них существует более подробная техническая информация.

Архитектура К10000/К20000 называется TorusNet. Прежде всего, следует остановиться на процессорах К10000. В терминологии Tandem понятие "процессор" не тождественно понятию "микропроцессор". Процессор К10000, как и в мэйнфреймах, - это сложная структура, физически представляющая собой печатную плату. Он состоит из пяти подсистем: подсистемы центрального процессора, подсистемы памяти, подсистемы межпроцессорных коммуникаций (IPC), и MDP - процессора диагностики и поддержки.

Подсистема ЦП включает два микропроцессора, главный и контрольный, которые синхронно выполняют одни и те же программные коды, а результаты их работы сверяются и при несовпадении фиксируется сбой. В последнем случае причина ошибки анализируется подсистемой MDP. Интерфейс микропроцессоров с основной шиной осуществляется специальным чипом PIC. Подсистема памяти в процессоре К10000 может включать 64, 128 или 256 Мбайт (в К20000 стандартные комплектации имеют минимум 128 Мбайт) и состоит из двух банков DRAM, которые управляются чипом MIC, отвечающим также за интерфейс с основной шиной.

Подсистема IPC служит для связи процессоров между собой. В серверах К10000 имеются две одинаковые высокоскоростные шины, Dynabus X и Dynabus Y, образующие надежную (благодаря дублированию) информационную магистраль для взаимодействия процессоров между собой. Две микросхемы IPC, по одной на каждую из шин, обеспечивают режим DMA при передаче данных между процессорами.

Подсистема IOS может обеспечивать 2 или 4 канала ввода/вывода. Каждый такой канал поддерживается своей микросхемой IOS, которая делает возможной передачу данных в подсистему памяти в режиме DMA. Подсистема MDP обеспечивает сервисные функции поддержки и диагностики процессора К10000. Для этих целей используются 2 специальные шины, DMBx и DMBy. Подсистема MDP отвечает за инициализацию процессоров и сбор информации об ошибках.

Масштабирование серверов К10000/ К20000 обеспечивает иерархическая масштабируемая сеть TorusNet. Минимальной структурной единицей в ней являются ячейки. Ячейка состоит из процессора, включающего принадлежащую ему память, каналы ввода/вывода и коммуникационную подсистему IPC. От 2 до 4 ячеек объединяются в секцию. Внутри секции ячейки связаны между собой при помощи шин Dynabus X и Dynabus Y. А секции уже могут соединяться между собой посредством двумерной структуры волоконно-оптических соединений TorusNet H и TorusNet V, образуя узлы и домен.

Буквы H и V в обозначениях этих соединений являются первыми буквами от английских слов "горизонтальный" и "вертикальный", соответственно. Собственно каналы TorusNet H и TorusNet V и образуют двумерную сеть. В "горизонтальном" направлении каналы TorusNet H образуют соединение типа замкнутого кольца, которое может содержать до 4 секций и называется узлом. В "вертикальном" направлении - другой размерности сети TorusNet - каналы могут связать между собой (также по топологии замкнутого кольца) до 14 узлов. Образующаяся структурная единица называется доменом. Таким образом, в домен входит до 224 ячеек.

В такой топологии каждая секция имеет 4 соединения: два - с TorusNet V, и два других - c TorusNet H. При передаче данных внутри узла они транспортируются по TorusNet H, а вне узла - сначала по TorusNet V, а затем уж - по TorusNet H. У TorusNet имеется еще третья размерность, которая называется TorusNet D, которая позволяет связывать между собой домены, образуя МРР-системы с числом процессоров до 4080. Для этого используется сеть обмена данными Expand, которая уже применялась в более ранних системах фирмы Tandem.

Конфигурации К20000

Как и в серверах К10000, процессор К20000 имеет стандартно 2 канала ввода/вывода, к которым можно добавить еще 2 таких же канала. В результате суммарная агрегатная скорость ввода/вывода по всем 4 каналам составляет 20 Мбайт/с. Полностью сконфигурированный 16-процессорный сервер К20000 имеет 64 канала ввода/вывода, а каждый канал поддерживает до 32 контроллеров ввода/вывода.

Процессорный шкаф К20000 содержит 2 процессора и имеет возможности подключения до 4 многофункциональных шкафов ввода/вывода, каждый из которых, в свою очередь, содержит 8 слотов ввода/вывода. Многофункциональные шкафы ввода/вывода могут применяться в серверах, используемых на уровне офиса. Если же требуется работа с приложениями на уровне большой корпорации, то вместо многофункциональных шкафов ввода/вывода Tandem предлагает также так называемые многоканальные шкафы ввода/вывода, содержащие по 32 слота. Таких шкафов может быть подсоединено столько же, сколько и многофункциональных.

Поддержка стандартов

Серверы NonStop Himalaya обеспечивают работу с целым рядом открытых сетевых стандартов: TCP/IP, NETBIOS, SNA, OSI и др. В прошлом году Tandem сделала важный шаг к повышению эффективности работы с большим потоком транзакций и параллельной обработке информации в системах поддержки принятия решений. Ее дочерняя компания UB Networks (бывший ее глава Роел Пипер недавно стал президентом всей Tandem Computers ) разработала шлюз GeoRim Ethernet/ATM, интегрирующий ATM и серверы К20000. Этот шлюз преобразует данные, полученные от каналов ATM, в стандарт Ethernet, а К20000 распределяет пакеты Ethernet по различным процессорам. Таким образом достигается увеличение возможностей телекоммуникационного доступа к большим базам данных для сотен тысяч пользователей.

Важнейшим компонентом, необходимым для успеха на рынке, является программное обеспечение. Общеизвестно, что NonStop Kernel отличается высоким качеством поддержания отказоустойчивости. В этой ОС может работать широкий спектр различных коммерческих приложений. Поддержка ряда реляционных СУБД, в первую очередь Oracle, а также систем обработки транзакций (в том числе Parallel CICS и NonStop TUXEDO), и ориентация на открытую технологию клиент-сервер сближает компьютерное окружение серверов Himalaya с современными стандартами открытых систем, хотя, конечно же, NonStop Kernel - это не UNIX ... Поэтому и усилий для поддержания новых стандартов видимо приходится прикладывать больше. Уместно упомянуть и о совсем новой разработке Tandem для компьютеров Himalaya - программном продукте D40, включающем, в частности, гораздо более эффективные компиляторы.

Еще одним важным условием для поддержания лидирующего положения серверов Himalaya, на взгляд автора, является быстрое внедрение новинок микропроцессорной технологии. Прогресс в КМОП-технологии RISC-процессоров, сопровождающийся постоянным улучшением показателя стоимость/производительность, приводит к быстрой замене парка серверов. Микропроцессоры компании MIPS относятся к одним из самых динамично развивающихся, и от своевременности внедрения новых чипов в серверы Tandem, процессоры которых имеют достаточно сложную архитектуру, во многом зависит успех на рынке. В определенной степени это характерно и для других компонентов, например для дисковых подсистем.


Михаил Кузьминский - зав. отделом Института органической химии РАН. С ним можно связаться по телефону: (095) 135-6388.

ТАБЛИЦА1 - КОНФИГУРАЦИИ СЕРВЕРОВ HIMALAYA

Характеристика
K200
K2000
K20000 TorusNet
узел
домен
многодоменный
Тактовая частота процессора
125
125
200
200
200
Макс. число процессоров
4
16
16
224
4080
Кэш L2, Мбайт
1
1
4
4
4
Макс. память, Гбайт
0,5
4
4
57
1044
Макс. число каналов ввода/вывода
4
16
64
896
16320
Макс. объем дисковой памяти, Тбайт
0,184
3,232
65
918
16711