В числе альтернативных SMP-технологий можно назвать архитектуры NUMA (Non-Uniform Memory Access), системы с массивной параллельной обработкой и кластеризацию.

SMP-серверы позволяют относительно просто и недорого задействовать совокупную мощность нескольких процессоров. Пользователь может начать с небольшого их числа и постепенно масштабировать систему, просто добавляя новые процессоры.

На SMP-системах может работать одновременно по нескольку приложений; все процессоры при этом используют единый пул памяти. При добавлении процессоров не требуется модификации ни базы данных, ни приложений.

Самое слабое звено такой системы - это шина памяти. По мере увеличения числа процессоров возрастает нагрузка на нее. Со временем это приводит к резкому снижению пропускной способности системы.

"Это можно сравнить с автострадой. Пока число машин на дороге не превышает определенного порога, все нормально. Но случись стихийный наплыв автомобилей в одном месте, как сразу же образуется пробка", - объясняет Кен Рудин, президент консультационного агентства по хранилищам данных Emergent.

Одним из способов устранения описанного недостатка является кластеризация систем с целью повышения их общей производительности и работоспособности.

Например, связав друг с другом два 16-процессорных SMP-сервера, или "узла", можно получить кластерную 32-процессорную систему, отличающуюся очень высокой производительностью. Кроме того, она будет стоить меньше, чем простая 32-процессорная система.

Благодаря кластеризации максимальное число процессоров в системе может быть значительно больше, чем в обычных SMP-серверах. DEC уже много лет выпускает VMS-кластеры, в которые можно связывать десятки узлов, любой из которых может быть SMP-сервером.

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

Таким образом, производительность растет при кластеризации нелинейно, а пропускная способность каналов, соединяющих узлы, зачастую оказывается слишком низкой, чтобы сохранить общий прирост. Для преодоления этого недостатка компании Digital Equipment и Tandem предлагают специализированные технологии - Memory Channel Interconnect и ServerNet соответственно.

По мнению обозревателей, в большинстве случаев кластеризация используется все-таки не для повышения производительности, а из-за своей высокой работоспособности. При наличии двух и более связанных узлов, в случае если в одном из них происходит сбой, нагрузка автоматически переносится на другие, что гарантирует высокую работоспособность аппаратного и программного обеспечения.

NUMA - это нечто вроде гибрида SMP и кластеризации. Все процессоры сервера объединяются в небольшие группы. Например, 16-процессорный сервер можно превратиться в кластер из четырех узлов по четыре процессора.

Этот метод позволяет устанавливать в одну систему большее число процессоров, чем при SMP. Например, серверы NUMA компании Sequent способны поддерживать до 252 процессоров Intel.

Как и в случае с SMP, при увеличении числа процессоров нет необходимости проводить модификацию приложений.

NUMA не допускает перегрузки шины памяти, подразделяя ее на несколько малых шин. Процессоры каждого узла общаются друг с другом посредством этих шин. Узлы же связаны между собой с помощью технологий высокоскоростного соединения компонентов.

"Преимущество NUMA в том, что она не заставляет переходить на новую модель программирования. Приложения для SMP будут работать на NUMA без изменений", - говорит Кевин Либерт, директор по маркетингу NCR.

Проблема в том, что NUMA еще не столь развита, как SMP. Успех NUMA зависит от того, насколько быстро каждый из узлов системы будет передавать данные другим узлам.

По мнению обозревателей, добиться производительности, близкой к линейной, скорее всего можно при помощи систем с массивной параллельной обработкой (MPP). Они стоят гораздо дороже (минимальная цена некоторых - 500 тыс. долл.; для сравнения, начальная стоимость Sequent NUMA-Q 2000 - 240 тыс. долл.) и являются более сложными в управлении, чем другие архитектуры. Зато MPP предоставляет возможность практически неограниченного увеличения числа процессоров в системе.

Проблема перегрузки шины и каналов соединения компонентов решается в MPP методом "грубой силы" - с помощью технологии сверхбыстрой коммутации.

В MPP-систему можно установить сотни, если не тысячи процессоров. Каждый из них имеет свой пул памяти и собственную шину. Любой процессор способен выполнять собственную задачу и общаться с другими посредством специализированных каналов связи и коммутаторов.

Однако для работы на MPP-системах приложения и базы данных нуждаются в сильной модификации.


Основные поставщики

SMP
Кластеры
NUMA
MPP
  • Digital
  • Siemens
  • Pyramid
  • NCR
  • IBM
  • Hewlett-Packard
  • Sun Microsystems
  • Digital
  • Pyramid
  • HP
  • Sequent
  • Sun
  • IBM
  • Sequent
  • Data General
  • Pyramid
  • NCR
  • IBM
  • Tandem
  • АППАРАТНОЕ ОБЕСПЕЧЕНИЕ ХРАНИЛИЩА ДАННЫХ

    ТЕХНОЛОГИЯ
    ДОСТОИНСТВА
    НЕДОСТАТКИ
    SMP
    Рост производительности хранилища данных можно обеспечить увеличением числа ЦП. Не требуется изменения архитектуры приложений.
    Многопроцессорная обработка должна быть учтена в архитектуре операционной системы. Шина памяти при большом числе ЦП становится узким местом, что ведет к падению производительности.
    КЛАСТЕРИЗАЦИЯ
    Добавление каждого нового узла, работающего с разделяемой базой данных, ведет к росту производительности. Средства выхода из сбоев обеспечивают высокий уровень готовности системы.
    Добавление каждого нового узла увеличивает сложность администрирования системы. Архитектура базы данных должна допускать совместное использование различными узлами кластера.
    NUMA
    Рост производительности хранилища данных можно обеспечить благодаря многопроцессорности. Изменение архитектуры приложений не обязательно (приложения с многопоточной архитектурой обладают лучшей масштабируемостью).
    Архитектура операционной системы должна быть специально рассчитана на NUMA. Недостаточная степень отлаженности в коммерческих применениях.
    MPP
    Огромный рост производительности обеспечивается очень большим количеством вычислительных узлов. Единообразное построение системы.
    Операционная система, утилиты, инструментарий и приложения должны быть специально рассчитаны на MPP. Очень дорого.

    Системы NUMA на пути к пользователю

    Производители мощных серверов начали выпуск систем, использующих технологию NUMA. Потенциальные потребители высоко оценивают перспективы, которые сулит использование таких систем, однако вместе с тем высказывают опасения, что при работе с ними могут возникнуть сложности с поддержкой приложений, надежностью и производительностью.

    Компания Sequent Computer Systems возлагает большие надежды на версию West Coast архитектуры NUMA-Q. Как полагают в компании, данная архитектура может сыграть роль альтернативы мэйнфрейму и полностью вытеснить машины с массовым параллелизмом (massively parallel processing - MPP).

    Считается, что большой вклад в разработку недавно появившейся технологии NUMA внесли как компания Sequent, так и ее конкурент - Data General. Появление этой технологии обеспечит масштабируемость не только на уровнях традиционных серверов c симметричной многопроцессорной архитектурой (symmetric multiprocessing, SMP), но и вне этих уровней.

    Компании Sun Microsystems, Hewlett-Packard и Digital используют технологию NUMA для построения крупных SMP-серверов. При этом еще до появления систем на рынке компании надеются устранить задержки, возникающие при организации переменного доступа к памяти.

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

    Представители компании Sequent заверили, что архитектура NUMA позволит работать со всеми приложениями, причем в них не придется вносить никаких изменений; что же касается операционных систем, то для того, чтобы они могли работать с системой или кластером, использующими NUMA, придется соответствующим образом переписать их. Технология NUMA будет поддерживаться всеми основными производителями бизнес-ПО, в том числе компаниями Oracle, Informix, SAP, Baan и PeopleSoft, хотя пока только продукты Oracle приспособлены к работе с архитектурой NUMA компании Sequent.

    Кластеры NUMA отличаются от систем МРР тем, что они работают с единственным экземпляром записи операционной системы и приложений. Это, возможно, позволит снизить расходы на лицензирование серверных приложений, но в то же время приводит к тому, что в продукте возникает единственная точка сбоя.

    К августу компания Sequent обещает решить эту проблему путем организации возможностей жесткого разделения.

    Как сообщили представители Sequent, компания планирует организовать в своей операционной системе Dynix/ptx поддержку 64-разрядной адресации и файлов размером вплоть до 1 Тбайт. Эта поддержка будет организована в 1999 году, когда, по всей вероятности, появится архитектура, использующая 64-разрядный процессор компании Intel.

    - Джуди Демокер,
    InfoWorld, США