Многопроцессорные компьютеры
В мощных серверах используются многопроцессорные компьютеры, т.е. компьютеры, в которых установлено несколько процессоров. Каждый процессор в компьютере может быть, в свою очередь, многоядерным процессором.
Для функционирования многопроцессорной системы необходимо выполнение следующих условий:
· материнская плата должна поддерживать несколько процессоров, т. е. иметь дополнительные разъемы для установки процессоров и соответствующий набор микросхем;
· процессор должен поддерживать работу в многопроцессорной системе;
· операционная система должна поддерживать работу с несколькими процессорами (такими операционными системами являются серверные версии Windows и Unix).
Мультипроцессирование является наиболее эффективным, когда оно используется многозадачными операционными системами и прикладными программами, созданными с помощью специальных средств, которые позволяют выполнять параллельную обработку данных.
В процессе одновременной работы нескольких процессоров операционная система распределяет различные задачи между процессорами. Существуют два режима работы многопроцессорных систем – асимметричный и симметричный.
В режиме асимметричной обработки один процессор выполняет только задачи операционной системы, а другой – прикладные программы.
В режиме симметричной обработки – SMP (Symmetric Multi-Processing) задачи операционной системы и пользовательские приложения могут выполняться любым процессором в зависимости от его загрузки. Этот режим является более производительным и поэтому он используется в большинстве многопроцессорных систем.
По способу соединения процессоров друг с другом различают тесносвязанные процессоры и слабосвязанные процессоры.
Тесносвязанные процессоры (tightly-coupled multiprocessors) подключаются к общей системной шине через общую кэш-память на материнской плате. Примерами таких процессоров являются некоторые модели семейства Intel Xeon и процессоры AMD Opteron. Многоядерные процессоры можно считать одним из типов тесносвязанных процессоров.
Слабосвязанные процессоры (loosely-coupled multiprocessors), также называемые кластерами, являются обычными или многоядерными процессорами, которые связаны между собой с помощью высокоскоростных каналов связи (обычно для этих целей используется высокоскоростная компьютерная сеть – Ethernet со скоростью обмена 1 Гбит/с).
Преимуществами тесносвязанных многопроцессорных систем по сравнению со слабосвязанными являются:
· небольшой размер (вся система размещается в одном системном блоке, в то время как слабосвязанные системы могут состоять из нескольких компьютеров);
· высокая производительность за счет использования более высокоскоростных каналов, чем в слабосвязанных системах;
· небольшое энергопотребление.
В то же время тесносвязанные многопроцессорные системы имеют следующие недостатки:
· высокая стоимость;
· невозможность модернизации (в слабосвязанных системах можно заменять как отдельные компоненты компьютеров, входящих в кластер, так и сами компьютеры).