Intel Symmetric Multiprocessing
1993 год можно смело считать датой рождения SMP-систем на базе процессоров Intel. Именно тогда корпорация опубликовала спецификацию Multiprocessor Specification (MPS), в которой описала будущее мультипроцессорных систем на базе своих процессоров. Необходимо сказать, что главной особенностью этой спецификации стало стремление создать стандартный интерфейс для мультипроцессорной платформы, который бы позволил не только получить решения более производительные, чем однопроцессорные, но и сохранить 100-процентную совместимость с ними. Другая особенность SMP по Intel — система перестает быть симметричной при процессе загрузки и выключения. В эти моменты один из процессоров назначается процессором загрузки (BootStrap Processor), тогда как остальные – процессорами приложений (Application Processors). В итоге BootStrap Processor несет ответственность за инициализацию системы и загрузку ОС, после чего переименовывается в Application Processor и активирует остальных «собратьев».
Проблема обеспечения корректной работы с аппаратными прерываниями в среде систем Intel решается с помощью усовершенствованных программируемых контроллеров прерываний (Advanced Programmable Interrupt Controller — APIC), которые встраиваются в каждый элемент системы, предусматривающий генерирование сигнала прерывания. Кроме внешних устройств сигналы прерывания используются процессорами для межпроцессорных коммуникаций (InterProcessor Interrupts — IPI). Все контроллеры APIC объединяются выделенной шиной межпроцессорных коммуникаций Interrupt Controller Communications bus (ICC bus). И следует понимать, что вовсе не процессоры являются «сердцем» SMP-системы. Куда более важную роль в организации правильной и эффективной работы системы играет набор системной логики. Самыми распространенными на сегодня решениями, способными обеспечить дуальную конфигурацию для процессоров Intel, являются два чипсета – Intel E7500/7501 и ServerWorks GC-LE.
Оба чипсета состоят из трех микросхем — два стандартных южных и северных моста, а третья микросхема организует доступ к шине PCI-X.
Чипсеты не поддерживают горячую замену PCI-устройств (PCI Hot Plug). Оба набора логики могут работать только с регистровой памятью с коррекцией ошибок DDR200 максимальным объемом 16 Гбайт. Имеется технология Chipkill — защита от отказов отдельных микросхем и многоразрядных сбоев в модулях памяти, а также возможность выделения модулей памяти в так называемый резервный массив. Чипсеты способны поддерживать только двухпроцессорные конфигурации и не имеют поддержки шины AGP, то есть представляют собой классическое серверное решение.
Набор логики Intel E7500/7501 состоит из трех микросхем. В данном случае можно говорить о классической хабовой архитектуре чипсета, позволяющей присоединять к Memory Controller Hub (MCH) до трех 64-бит PCI/PCI-X-контроллеров P64H2 с поддержкой двух независимых 64-бит PCI-X-интерфейсов и по два стандартных PCI-контроллера (с поддержкой горячей замены). В сумме плата на чипсете Intel E7500 может иметь до шести 64-битных PCI-X-интерфейсов, работающих в режимах 133/100/66 МГц. Однако на практике число микросхем P64H2 не превышает двух — пока поддержка большого количества PCI-X не актуальна.
Интересен и тот факт, что чипсет Intel E7500 «полностью» синхронный. Мало того что память и процессор работают на одной частоте (100 МГц Quad Pumped Bus и 200 МГц PC1600 DDR SDRAM), так и пропускная способность вокруг MCH тоже составляет 3,2 Гбайт/с относительно контроллера ввода-вывода (ICH3-S). Контроллер памяти используется двухканальный — 2х1,6 Гбайт/с и 3х1,066 Гбайт/с — при установке одновременно трех PCI-X-контроллеров P64H2. Функционирование стандартной шины PCI 32-бит 33 МГц и контроллера ATA/100, USB 1.1, AC’97, а также Fast Ethernet обеспечивается микросхемой южного моста ICH3-S.
Чипсет ServerWorks GC-LE имеет ряд отличительных особенностей. Его структура также трехчиповая. Говоря об отличиях обоих наборов логики, следует отметить хотя бы то, что чипсет производства ServerWorks способен обеспечивать работу лишь двух чипов-контроллеров PCI-X (против трех у Intel E7500) — это дает возможность организации четырех интерфейсов PCI-X.
Кроме того, пропускная способность у каждого чипа CIOB-X2 составляет по 3,2 Гбайт/с, то есть вдвое больше, нежели у контроллера Intel при максимальной комплектации. Стандартная шина PCI 32-бит 33 МГц обслуживается, как и в случае с Intel E7500, южным мостом — CSB5. А вот поддержки AC’97 и Fast Ethernet в нем нет. И в самом деле, присутствие звукового кодека в сервере излишне. Различаются чипсеты и списком поддерживаемых процессоров: для Intel E7500 это Xeon и Xeon MP, а для ServerWorks GC-LE — Xeon и Pentium 4.
Своеобразным симбиозом лучших характеристик серверного набора Intel E7500/7501 и набора для рабочих станций Е7205 стал чипсет Intel E7505. От первого он унаследовал современный ICH4 с поддержкой AGP 3.0/8х, а от второго — канал Hub Interface 2.0 1 Гбайт/с, к которому подключается контроллер PCI-X. Максимальный объем поддерживаемой памяти 16 Гбайт и поддержка мультипроцессорных конфигураций с чипами Xeon делает чипсет весьма привлекательным для продвинутых решений среднего класса.