Архитектуру NUMA в бешеном темпе развивают Sequent, Pyramid, Convex и Data General. Компания Sun Microsytems опубликовала отчет об исследованиях на эту тему, интерес проявляют Silicon Graphics и Compaq.
Цель состоит в том, чтобы добиться реального масштабирования SMP-систем за пределом традиционного ограничения в 16 или 32 процессора, которое свойственно всем современным системам. Благодаря архитектуре NUMA число процессоров в SMP-системе можно довести до 128, 256 или даже более, сохранив разумное соотношение цена/производительность. Если этот подход действительно будет реализован, удастся построить SMP-серверы, которые унаследуют роль мэйнфреймов IBM.
Но конструирование NUMA-сервера - это куда более сложная задача, чем установка нескольких процессоров в один корпус. Процессоры должны взаимодействовать между собой, и время ожидания, или задержки, характерные для межсоединения процессоров, должны быть меньше, чем задержки в кластерах; в противном случае архитектура потеряет свою привлекательность.
"Механизм межсоединения должен расширять основную память, а не быть частью подсистемы ввода/вывода", - утверждает Стив Уоллах, старший вице-президент по технологии компании Convex.
Межсоединение связывает вместе все процессоры и память. С его помощью все ресурсы памяти можно объединить в общий пул, даже если они относятся к разным уровням, например, кэш-память центральных процессоров, вторичные кэши и основная память. Распределенные кэши и наличие различных форм памяти порождает различие во времени доступа ЦП к данным. Однако архитектура NUMA должна создавать для прикладной программы иллюзию, что та работает с общим пулом памяти. Для SMP, напротив, в отличие от параллельных систем не свойственна такая простота программирования.
Если этот недостаток преодолеть, SMP станет масштабируемой, универсальной архитектурой с многообещающим будущим. По мере того, как производители все больше вовлекаются в разработку NUMA-архитектур, разгораются страсти вокруг того, как наилучшим образом организовать межсоединение центральных процессоров, какие задержки приемлемы, насколько велик по сравнению с основной памятью должен быть кэш и сколь прозрачной архитектура должна быть для программиста.
Когда центральный процессор не может извлечь данные из локального кэша, он должен найти их еще где-либо в системе. Это должно занять не более чем втрое или вчетверо больше времени, чем при локальной выборке. В противном случае NUMA-архитектура начинает проигрывать архитектурам с разделяемой или даже с распределенной памятью, основанной на передаче сообщений; такое мнение высказывает Джон Мэши, руководитель исследований в области перспективных систем компании Silicon Graphics.
По мере того, как производители конкретизируют свои планы относительно NUMA-архитектур, становится более отчетливой разница между задержками при обращении к локальным и удаленным данным.
Задержки второго рода будут определяться эффективностью межсоединения центральных процессоров сервера. Это одно из наименее поддающихся оценке свойств архитектуры процессора; общего мнения относительно того, как его организовать наиболее эффективным образом. Простая шина, по всей видимости, не подойдет, поскольку ее пропускная способность разделяется всеми процессорами.
Sequent гордится своим межсоединением IQ Link, которое будет представлено в составе NUMA-архитектуры в следующем году. IQ Link использует галлий-арсенидные "информационные помпы" и специальные кэши, которые позволяют извлекать данные со скоростью 1 Гбайт/с; полезно сравнить этот показатель со скоростью передачи данных в сервере Sequent Symmetry старшего класса, который выпускается сегодня: она равняется 240 Мбайт/с.
Convex в своем имеющем NUMA-архитектуру Exemplar 1200 использует матричный переключатель (crossbar switch), который позволяет образовать прямой канал данных между любыми двумя процессорами. Pyramid планирует использовать межсоединение Mesh в своем NUMA-сервере, который должен быть представлен в марте. Сейчас Mesh уже используется в параллельном компьютере Pyramid Reliant. По словам Мэши, еще один из возможных подходов к организации более интеллектуального взаимодействия состоит в использовании специальных процессоров маршрутизации.
Интеллектуальность межсоединения - ключевое требование к NUMA. Будет ли межсоединение масштабироваться по мере добавления процессоров? Сможет ли производитель гарантировать, что время задержки не будет расти?
NUMA-серверы уже вскоре обеспечат менее дорогую удельную вычислительную мощность - но только в том случае, если будущие архитектуры окажутся достойными своих ранних обещаний.
Чарльз Бабкок - технический редактор Computerworld,
его адрес в Internet - babcock@cw.com.