Мэйнфреймы, которые мы потеряли
Производительность
Мэйнфреймы умерли. Да здравствуют мэйн... серверы!

Признаюсь, я приступал к написанию этой статьи с особым волнением. Во-первых, насчет перспектив использования мэйнфреймов IBM, в частности в России, высказывались самые полярные мнения. Во-вторых, в нашей стране остались многочисленные специалисты, еще "вчера" работавшие с ЕС ЭВМ или мэйнфреймами IBM. Наконец, свыше 20 лет проработав с этими компьютерами, автор, что называется, на своей шкуре ощущал плюсы и минусы их применения.

Статья посвящена архитектуре IBM ES/9000. Эти компьютеры, являющиеся результатом более чем 30-летней эволюции System/360, вовсе не собираются переходить в разряд музейных экспонатов, как это пытаются представить некоторые слишком горячие головы из стана сторонников открытых систем и архитектуры клиент/сервер.

Процесс разукрупнения (downsizing) сосуществует теперь с процессом укрупнения (upsizing), и наконец-то стали искать золотую середину (right-sizing).

Мэйнфреймы, которые мы потеряли

Массовое производство ЕС ЭВМ завершилось, как известно, на уровне, примерно соответствуюшем IBM303X c 24-разрядной адресацией, поскольку последние компьютеры ЕС1066, ЕС1068 были аналогами IBM3033, а ЕС1130 - шагом по направлению к IBM 43XX. Весь последующий прогресс, достигнутый IBM в этой области, Россию миновал, по крайней мере в массовых масштабах. А ведь это - системы с

31-разрядной адресацией архитектуры XA (поставки IBM начались в 1983 г.); монтируемые в стойку IBM 9370; имеющие команды для работы с векторами IBM3090; появление в 1988 г. архитектуры Enterprise System Architecture/370 (ESA/370), в которой благодаря введению т.н. регистра доступа появился и новый вид адресации виртуальной памяти - пространства данных. Наконец, в 1990 г. были анонсированы компьютеры ES/9000 (System/390), с новой архитектурой ESA/390, в которой появилась, в частности, такая замечательная вещь, как волоконно-оптические каналы ESCON.

Системы ES/9000 делятся на 3 класса: монтируемые в стойку (rack-mounted) младшие модели - серия 9221; охлаждаемые воздухом средние модели - серия 9121; старшие модели с водяным охлаждением - серия 9021. Средние и старшие модели используют конструктив на основе рам, которые монтируются в шкаф. Для конфигурирования и выполнения других сервисных функций в составе ES/9000 имеется сервисный процессор (Processor Controller), обычно на базе IBM PS/2. Средние и старшие модели имеют также 1 или 2 устройства IBM 9027, отвечающих за обеспечение электропитания и циркуляцию хладагента.

Оперативная память (ОП, или Central Storage, CS в терминологии IBM) в системах ES/9000 использует схемы с автоматической коррекцией одинарных ошибок и обнаружением кратных ошибок на уровне 4-байтного слова. Для обеспечения целостности информации все страницы ОП защищены 7-битным ключом защиты памяти, так что любая программа, желающая иметь доступ к этой странице, должна "предъявить" соответствующий ключ. Обычные неавторизованные прикладные программы используют ключ 8, а защита их друг от друга обеспечивается путем расположения их в разных адресных пространствах, имеющих свои таблицы страниц. Операционная система (ОС) и подсистемы используют ключи защиты 0-7. Некоторые подсистемы, например CICS, иногда работают с ключом 8. В этом случае может применяться новая особенность ESA/390 - защита памяти подсистемы.

В дополнение к обычной ОП в ESA/390 определена также ES - расширенная память (РП), впервые появившаяся в IBM3090. Как и ОП, РП располагается в процессорном устройстве. Она дешевле и медленней, чем ОП. Специальный тип адресных пространств (т.н. гиперпространства) в ОС MVS/ESA основывается на применении РП.

В компьютерах ES/9000 применяется виртуальная адресация памяти. Преобразование виртуального адреса в реальный - это сложный процесс, в котором используются таблицы сегментов и таблицы страниц, а также управляющий регистр базы, содержащий указатель на адресное пространство, или регистр доступа, указывающий на пространство данных. Для ускорения этого преобразования применяется буфер TLB. В случае, если при обращении к данному виртуальному адресу выясняется, что соответствующая строка таблицы страниц указывает на отсутствие страницы в ОП, генерируется прерывание. Подкачка этой страницы в ОП из страничного набора данных на диске является частью процесса листания (paging), включающего также противоположное вытеснение страниц ОП в страничные наборы данных на дисках. РП может служить в процессе листания в качестве буфера между ОП и дисками.

Архитектура центральных процессоров (ЦП) ES/9000. ЦП включает набор функциональных исполнительных устройств (ИУ), число которых зависит от модели. Наиболее сложные команды выполняются микропрограммно с использованием управляющей памяти. Она содержит микрокоды (Licensed Internal Code, LIC). Общий объем микрокодов превосходит емкость управляющей памяти, поэтому некоторые команды LIC располагаются в зарезервированной области ОП и по мере необходимости происходит своеобразный свопинг - обмен данными с ОП.

Регистровый файл содержит регистры общего назначения, регистры с плавающей запятой и управляющие регистры. Однако по нынешним "RISC'овским" временам набор регистров, хранящих целые числа и числа с плавающей запятой, следует признать, скорее, бедным. Системные часы с "тиком", равным машинному такту, управляет работой всех блоков ЦП. Некоторую работу эти блоки могут выполнять одновременно. Например, одно ИУ может выполнять команду, в кэш первого уровня будет записываться результат предыдущей команды и одновременно из кэша будет выбираться другая команда. Таким образом обеспечивается конвейеризация.

Модели с воздушным охлаждением могут иметь до 4 процессоров. Процессоры серии 9121, по сравнению с 9221, имеют не только более высокое быстродействие за счет уменьшенного времени цикла и параллельной работы нескольких ИУ, но могут также включать возможность работы с векторами - Vector Feature (VF), по одной на процессор. В процессорах 320-х ("320-based") моделей используется кэш размером от 32 до 128 Кбайт. В появившихся в 1993 г. 511-х моделях емкость кэша увеличилась до 256 Кбайт. Эти модели могут иметь ОП размером от 32 Мбайт до 8 Гбайт. Как и в серии 9221, в серии 9121 часть ОП может быть сконфигурирована как РП.

Стандартной возможностью ESA/390 является т.н. системный менеджер процессорных ресурсов (PR/SM). Он обеспечивает возможность логического разделения ES/9000 на несколько компьютеров (логических разделов, LPAR), каждый из которых может работать со своей ОС. Кроме возможности организации 7 логических разделов PR/SM ряд моделей серии 9121 могут быть физически разделены на две независимые части. На любой половине можно, например, отключить электропитание, а другая продолжит работу. В таких моделях может быть 14 разделов PR/SM.

Архитектура этих систем представлена на рисунке 2. Здесь изображена архитектура старших моделей с водяным охлаждением. В компьютерах серии 9121, нет физически выделенной РП - она являются частью ОП (и соответственно отсутствуют блоки РП и ICE), а в остальном архитектура этих серий практически совпадает. Принципиально новый, по сравнению с серией 9221 блок SCE отвечает за арбитраж доступа кэшей первого уровня различных ЦП в ОП. ССЕ управляет потоком информации между канальными элементами СЕ и ОП. В свою очередь, каждый CE содержит несколько каналов. Всего компьютеры серии 9121 могут содержать до 128 каналов.

Модели с водяным охлаждением ("520-е"), а с 1993 г. - и 711-е, имеют до 10 Гбайт процессорной (оперативная + расширенная) памяти, причем расширенная память выделена физически. Новый блок ICE отвечает за управление потоками информации между расширенной памятью, SCE и ССЕ. Модели серии 9021 могут иметь до 256 каналов и до 10 ЦП. Самые старшие модели серии 982 (8 ЦП) и 9X2 (10 ЦП) - потребляют электроэнергии до 129 и 144 KVA/час, соответственно.

По сравнению с 520-ми моделями, в 711-х моделях производительность возрасла за счет увеличения кэша второго уровня в 2 раза (до 4 Мбайт), уменьшения времени цикла, увеличения числа ИУ и введения возможности внеочередного (out-of-sequence) выполнения команд. Последнюю не следует путать с out-of-order в современных RISC-микропроцессорах. В ES/9000 она означает, что если один ЦП занят выполнением сложной команды, то другой процессор может выполнить следующую команду той же программы.

Следует также обратить внимание, что если ЦП ES/9000 имеют относительно большой кэш первого уровня, то кэш второго уровня объемом 4 Мбайт является общим для всех процессоров "физической половины". Системы с водяным охлаждением могут иметь до 10 разделов PR/SM (до 20 - при возможности физического разделения).

В этой статье мы не рассматриваем младшие модели ES/9000. Поэтому перейдем к обсуждению системы ввода/вывода.

Каналы ES/9000 представляют собой интеллектуальные блоки с собственными микропроцессорами. Работа канала определяется списком командных слов канала (CCW), который располагается в ОП. Фактически список CCW представляет собой программу, которая в конечном итоге управляет работой внешних устройств (ВУ). Канал начинает ее выполнение по команде ЦП, работая независимо от него и информируя ЦП по окончании работ. Канал передает данные между контроллерами ВУ (устройствами управления, УУ) и ОП через SCE и ICE (для старших моделей). Такая организация ввода/вывода приводит к высокой производительности и является одним из важных преимуществ мэйнфреймов.

В ES/9000 каналы бывают двух видов: параллельные и ESCON. Параллельные каналы, впервые появившиеся еще в S/360, используют для соединения с УУ электропроводящие кабели. Параллельные каналы работают в одном из двух режимов - байт-мультиплексном, когда мультиплексируется передача отдельных байтов или небольших групп до 64 байт (применяется для медленных ВУ; скорость передачи 40 Кбайт/с - 1 Мбайт/с), и блок-мультиплексном, когда мультиплексируются большие блоки данных (скорость передачи 1,5-4,5 Мбайт/с). На одном канале может быть несколько УУ, удаленных на расстояние до 122 м, а при использовании волоконнооптического удлинителя - до 3 км.

Появившиеся в S/390 волоконнооптические ESCON (Enterprise System Connection) каналы используют последовательную передачу и также бывают двух типов: основные (basic) ESCON-каналы и ESCON XDF (eXtended Distance Feature). Первые обеспечивают скорость передачи до 10 Мбайт/с при удалении УУ от канала до 3 км. ESCON XDF позволяют поднять скорость передачи до 17 Мбайт/с при максимальном удалении УУ до 20 км.

Кроме собственно УУ, к ESCON-каналам могут подсоединяться до 2 т.н. ESCON Directors, а уже к ним подключаются УУ с удалением до 20 км, так что максимальное расстояние от канала до УУ возрастает до 60 км. Правда, УУ имеют собственные ограничения на расстояния до каналов - до 15 км для дисковых УУ, до 23 км - для ленточных, до 45 км - для процессоров телеобработки данных. У ESCON Director есть и другая замечательная особенность: к нему может подсоединяться много УУ, а он, в свою очередь, может подсоединяться к нескольким каналам, каждый из которых тем самым получает доступ ко всем данным УУ. Это позволяет повысить надежность работы (скажем, при выходе из строя канала) и суммарную пропускную способность путем эффективного распределения нагрузки между каналами. Например, один канал может послать в УУ запрос на передачу данных и затем оказаться занятым другой работой; тогда передача данных из УУ будет осуществляться другим каналом. Кстати, возможность подсоединения УУ к нескольким параллельным каналам уже давно известна в мире мэйнфреймов IBM.

Для подсоединения УУ, не поддерживающих работу с ESCON, IBM предлагает специальный конвертор ESCON. Это обеспечивает плавную миграцию от более старых ВУ. А всего к одному каналу ESCON, так же, как и к параллельному каналу, может быть подсоединено до 256 ВУ.

Архитектурные особенности S/390. Архитектура ESA/390 имеет еще целый ряд интересных особенностей, из которых мы упомянем всего три. Аппаратное сжатие данных стандартно поддерживается в 511-х и 711-х моделях. Оно позволяет уменьшить как объемы хранимой информации, например, на МД, так и объемы передаваемых данных. Эта особенность используется в базовом программном обеспечении IBM - DB2, IMS, VTAM и DFSMS/MVS.

Аппаратная поддержка шифрования (Integrated Cryptographic Feature) может быть инсталлирована на одном (или двух - для физически разделяемых систем) из ЦП. Она обеспечивает поддержку шифрования в соответствии со стандартом DES, причем шифрование может происходить как для телекоммуникационных целей, так и при хранении информации на МД. Эта возможность является взаимно исключающей с VF.

Наконец, в ESA/390 есть средства поддержки построения ориентированных на параллельную работу с СУБД кластерных конфигураций на базе ES/9000 (Sysplex).

Производительность

Следствие сложной архитектуры и сложной технологии изготовления ES/9000 - высокие цены этих компьютеров. Взамен пользователь рассчитывает получить высокую производительность. В Таблице 1 приведены оценки производительности на тестах LINPACK для многопроцессорных моделей ES/9000 с использованием VF. Эти данные показывают, что на длинных векторах мэйнфреймы еще выглядят "конкурентоспособно", хотя и уступают SMP-серверам DEC AlphaServer 8400. Но уже на средних векторах (N=100) результаты мэйнфреймов заметно хуже, чем у ряда серверов RISC-архитекутры, например у SGI POWER CHALLENGE.

Таблица 1.
Оценки производительности (MFLOPS) на тестах LINPACK.

Компьютер
n CPU
N=100
N=100
Пиковое значение
IBM ES/9000
модель 982
(время цикла 7.1 нс)
8
2278
4507
4
1277
2254
2
767
1127
2
86
422
563
DEC AlphaServer 8400
(350 МГц)
8
2853
5600
4
1678
2800
2
938
1400
1
164
510
700

Очевидно, что основная сфера применения мэйнфреймов сегодня - это коммерческие приложения, где важны целочисленная производительность и скорость обработки транзакций. IBM предпочитает не обсуждать производительность своих компьютеров ES/9000 в терминах современных тестов, применяющихся для рабочих станций и серверов. Ясно, что сила мэйнфреймов в высокой производительности ввода/вывода и поддержке гигантских конфигураций внешних устройств (до 256 каналов по 256 устройств!), а также, вероятно, в высокой пропускной способности ОП. Дело не только в высокой суммарной пропускной способности каналов, т.к., например, в серверах Ultra Enterprise 6000 фирмы Sun аналогичный показатель даже выше. Вопрос в том, достигает ли системная шина SMP-серверов той производительности в обеспечении потоков данных между процессорами, оперативной памятью и подсистемой ввода/вывода, которую имеют сташие модели ES/9000. Здесь надо отметить, что суммарная пропускная способность шин ввода/вывода в сервере Ultra Enterprise 6000, с одной из самых быстродействующих на сегодня системных шин (пиковая производительность около 2.7 Гбайт/с), формально выше, чем у системной шины.

Как бы то ни было, мэйнфреймы продолжают удерживать лидирующие позиции в области обработки данных очень большой емкости, при работе со сверхбольшими СУБД и т.п.

Мэйнфреймы умерли. Да здравствуют мэйн... серверы!

Главный вопрос современности - не о власти, а о том, где целесообразно использовать мэйнфреймы. В российских условиях это обычно означает: "что делать с нашей ЕС ЭВМ" или "продолжать ли использовать нашу IBM mainframe".

Приобретение младших моделей ES/9000 прежде всего целесообразно в том случае, если мэйнфреймы использовались и ранее, и поэтому имеются работающие приложения, обученный персонал и т.д. Модели ES/9000 среднего диапазона разумно приобретать тогда, когда младшие модели ES/9000 уже используются, и желательно иметь возможность увеличения производительности и емкости памяти, а также если требуется одновременно обеспечивать работу приложений вычислительного характера. Старшие модели ES/9000 целесообразно использовать для поддержания очень больших коммерческих приложений с большим (свыше тысячи) числом пользователей, при построении больших телекоммуникационных систем и при наличии хорошо векторизуемых численных приложений. Кстати, IBM обеспечивает исключительно широкие возможности модернизации с переходом от одних моделей к другим. Причины стабильности положения мэйнфреймов связаны, как правило, с более низкой стоимостью централизованной обработки, сложностью перехода к архитектуре клиент/сервер, необходимостью сохранения существующих приложений и др.

А фирма IBM уверенно идет по пути сближения своих мэйнфреймов с идеологией открытых систем и архитектурой клиент/сервер. Появилась, например, ОС MVS/ESA Open Edition, в которой поддерживаются стандарты POSIX. Фактически IBM предлагает теперь системы ES/9000 в качестве мощных серверов локальной сети. Более того, фирма, похоже, предпочитает теперь называть свои компьютеры серверами, а не мэйнфреймами. В чем же различие между термином "мэйнфрейм" и (супер)сервером? "По определению", мэйнфреймы ориентированы на работу с терминалами, не имеющими собственных вычислительных мощностей, в то время как к серверам через локальную сеть подсоединяются обычно ПК или рабочие станции. С другой стороны, последние таким же образом подсоединяются и к мэйнфреймам.

Компьютеры ES/9000 в России инсталлированы в весьма ограниченном числе мест, среди которых Центральная геофизическая Экспедиция, Сбербанк, завод "ЗИЛ", ГВЦ МПС и др. Тем не менее есть еще немало мест, где работают старые мэйнфреймы IBM и ЕС ЭВМ. Как мы уже говорили, такие организации могли бы быть потенциальными заказчиками ES/9000 (очень крупные центры обработки данных, требующие старших моделей S/390, для России сегодня не типичны). Естественно, высокие цены ES/9000 делают сегодня подобные покупки маловероятными.

В последнее время появилась и более дешевая альтернатива "классическим" ES/9000, причем в рамках той же архитектуры. Это компьютеры IBM 9672, построенные с использованием CMOS-технологии, и платы P/390, которые могут вставляться в ПК или рабочую станцию.