Термин “кластеризация” на сегодня в компьютерной промышленности имеет много различных значений. Строгое определение могло бы звучать так: “реализация объединения машин, представляющегося единым целым для операционной системы, системного программного обеспечения, прикладных программ и пользователей”. Машины, кластеризованные вместе таким способом могут при отказе одного процессора очень быстро перераспределить работу на другие процессоры внутри кластера. Это, возможно, наиболее важная задача многих поставщиков систем высокой готовности.
Первой концепцию кластерной системы анонсировала компания DEC, определив ее как группу объединенных между собой вычислительных машин, представляющих собой единый узел обработки информации. По существу VAX-кластер представляет собой слабосвязанную многомашинную систему с общей внешней памятью, обеспечивающую единый механизм управления и администрирования. В настоящее время на смену VAX-кластерам приходят UNIX-кластеры. При этом VAX-кластеры предлагают проверенный набор решений, который устанавливает критерии для оценки подобных систем.
Работа любой кластерной системы определяется двумя главными компонентами: высокоскоростным механизмом связи процессоров между собой и системным программным обеспечением, которое обеспечивает клиентам прозрачный доступ к системному сервису.
Конвейерная и параллельная организация обработки данных
Параллельная и конвейерная обработка данных предполагают повышение производительности компьютера за счет совмещения операций, при котором аппаратура в любой момент времени выполняет одновременно более одной базовой операции. При параллелизме совмещение операций достигается путем воспроизведения исполнительных устройств в нескольких копиях аппаратной структуры. Высокая производительность достигается за счет одновременной работы всех элементов структур, осуществляющих решение различных частей задачи.
Конвейеризация (или конвейерная обработка) в общем случае основана на разделении подлежащей исполнению функции на более мелкие части, называемые ступенями, и выделении для каждой из них отдельного блока аппаратуры. Так, обработку любой машинной команды можно разделить на несколько этапов (несколько ступеней), организовав передачу данных от одного этапа к следующему. При этом конвейерную обработку можно использовать для совмещения этапов выполнения разных команд. Производительность при этом возрастает благодаря тому, что одновременно на различных ступенях конвейера выполняются несколько команд. Конвейерная обработка такого рода широко применяется во всех современных быстродействующих процессорах.
Конвейеризация увеличивает пропускную способность процессора (количество команд, завершающихся в единицу времени), но она не сокращает время выполнения отдельной команды. В действительности, она даже несколько увеличивает время выполнения каждой команды из-за накладных расходов, связанных с управлением регистровыми станциями. Однако увеличение пропускной способности означает, что программа будет выполняться быстрее по сравнению с простой не конвейерной схемой.
Архитектура процессора
Микропроцессор (далее просто процессор) - основная микросхема персонального компьютера, в которой производятся все вычисления. От него в значительной мере зависит производительность компьютера, а, в свою очередь, его мощность зависит от его архитектуры и поддерживаемого набора команд. Двумя основными архитектурами набора команд, используемыми компьютерной промышленностью на современном этапе развития вычислительной техники, являются архитектуры CISC (Complex Instruction Set Computing) и RISC (Reduced Instruction Set Computing).
Для того чтобы составить представление о различных архитектурах процессора, рассмотрим некоторые из них.
Процессоры с архитектурой 80x86 и Pentium
Архитектуры 80x86 преобладает в мире персональных компьютеров. Почти 80% установленных малых систем базируются именно на этой архитектуре. Современные микропроцессоры стараются вобрать в себя наилучшие свойства как CISC, так и RISC архитектур.
В 1993 г. появился процессор Pentium. Архитектура процессора базируется на идее суперскалярной обработки. Основные команды распределяются по двум независимым исполнительным устройствам - конвейерам U и V. Конвейер U может выполнять любые команды семейства x86, включая целочисленные команды и команды с плавающей точкой. Конвейер V предназначен для выполнения простых целочисленных команд и некоторых команд с плавающей точкой. Команды могут направляться в каждое из этих устройств одновременно, причем при выдаче устройством управления в одном такте пары команд более сложная команда поступает в конвейер U, а менее сложная - в конвейер V. Такая попарная выдача команд возможна правда только для ограниченного подмножества целочисленных команд. Команды арифметики с плавающей точкой не могут запускаться в паре с целочисленными командами. Одновременная выдача двух команд возможна только при отсутствии зависимостей по регистрам. При остановке одного из конвейеров по любой причине, как правило останавливается и второй конвейер. Остальные устройства процессора предназначены для снабжения конвейеров необходимыми командами и данными. В процессоре Pentium используется раздельная кэш-память команд и данных, что обеспечивает независимость обращений.
Высокая производительность процессора Pentium требует и соответствующей организации системы на его основе. Компания Intel разработала и поставляет все необходимые для этого наборы микросхем. Прежде всего, для согласования скорости с динамической основной памятью необходима кэш-память второго уровня. Контроллер кэш-памяти (в общем случае под контроллером понимается устройство, предназначенное для обеспечения операций преобразования и пересылки информации) и микросхемы статической памяти обеспечивают построение такой кэш-памяти объемом 256 Кбайт и работу процессора без тактов ожидания. Для эффективной организации систем Intel разработала стандарт на высокопроизводительную локальную шину PCI. Выпускаются наборы микросхем для построения мощных компьютеров на ее основе.
Архитектурную линию x86 продолжили процессоры 6 или PentiumPro, PII, PIII, PIV. Они обеспечили полную совместимость с процессорами предыдущих поколений и предназначены главным образом для поддержки высокопроизводительных 32-битовых вычислений в области САПР, трехмерной графики и мультимедиа: а также широкого круга коммерческих приложений баз данных. Для достижения высокой производительности необходимо использование технических решений, широко применяющихся при построении RISC-процессоров:
выполнение команд не в предписанной программой последовательности, что устраняет во многих случаях приостановку конвейеров из-за ожидания операндов операций;
использование методики переименования регистров, позволяющей увеличивать эффективный размер регистрового файла (малое количество регистров - одно из самых узких мест архитектуры x86);
расширение суперскалярных возможностей по отношению к процессору Pentium, в котором обеспечивается одновременная выдача только двух команд с достаточно жесткими ограничениями на их комбинации.
В борьбу за новое поколение процессоров x86 включились компании, ранее занимавшиеся изготовлением Intel-совместимых процессоров. Это компании Advanced Micro Devices (AMD) и Cyrix Corp. Ниже приведенные рисунки демонстрируют внешний вид процессоров этих фирм. Процессоры компании Cyrix также как и Pentium имеют два конвейера и могут выполнять до двух команд в одном такте. Процессоры компании AMD используют в корне другой подход. Основа их процессоров - очень быстрое RISC-ядро, выполняющее операции в суперскалярном режиме.

Рис 2.1. Процессор Intel Pentium II

Рис 2.2. Вид процессора Intel Pentium II без корпуса

Рис 2.3. Процессор Intel Pemtium III

Рис 2.4. Вид. процессора Intel Pentium III без корпуса

Рис 2.5. Процессор AMD K6-2

Рис 2.6. Процессор Athlon фирмы AMD

Рис 2.7. Процессор Duron фирмы AMD

Рис 2.8. Процессор Cyrix M II
Процессоры с архитектурой SPARC компании Sun Microsystems
Масштабируемая процессорная архитектура SPARC (Scalable Processor Architecture) компании Sun Microsystems является наиболее широко распространенной RISC-архитектурой, отражающей доминирующее положение компании на рынке UNIX рабочих станций и серверов.
Первоначально архитектура SPARC была разработана с целью упрощения реализации 32-битового процессора. Впоследствии, по мере улучшения технологии изготовления интегральных схем, она постепенно развивалось и в настоящее время имеется 64-битовая версия этой архитектуры (SPARC-V9), которая положена в основу новых микропроцессоров, получивших название UltraSPARC.
Компания Sun Microsystems в настоящее время обладает широчайшим спектром процессоров, способных удовлетворить нужды практически любого пользователя, как с точки зрения производительности выпускаемых ею рабочих станций и серверов, так и в отношении их стоимости. Среди процессоров этой компании можно выделить: MicroSPARC-II, НyperSPARC, UltraSPARC и SuperSPARC.
Основное назначение процессора MicroSPARC-II - однопроцессорные низкостоимостные системы. Он представляет собой высокоинтегрированную микросхему, содержащую целочисленное устройство, устройство управления памятью, устройство плавающей точки, раздельную кэш-память команд и данных, контроллер управления микросхемами динамической памяти и контроллер шины SBus. Процессор microSPARC II имеет 64-битовую шину данных для связи с памятью и поддерживает оперативную память емкостью до 256 Мбайт. В процессоре интегрирован контроллер шины SBus, обеспечивающий эффективную с точки зрения стоимости реализацию ввода/вывода.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |


